diff --git a/sdk/security/arm-security/LICENSE.txt b/sdk/security/arm-security/LICENSE.txt index a70e8cf66038..ea8fb1516028 100644 --- a/sdk/security/arm-security/LICENSE.txt +++ b/sdk/security/arm-security/LICENSE.txt @@ -1,6 +1,6 @@ The MIT License (MIT) -Copyright (c) 2018 Microsoft +Copyright (c) 2020 Microsoft Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal diff --git a/sdk/security/arm-security/README.md b/sdk/security/arm-security/README.md index f862f2b2e6ba..869cda4b96a1 100644 --- a/sdk/security/arm-security/README.md +++ b/sdk/security/arm-security/README.md @@ -9,23 +9,24 @@ This package contains an isomorphic SDK for SecurityCenter. ### How to Install -``` +```bash npm install @azure/arm-security ``` ### How to use -#### nodejs - Authentication, client creation and list pricings as an example written in TypeScript. +#### nodejs - Authentication, client creation and list complianceResults as an example written in TypeScript. ##### Install @azure/ms-rest-nodeauth -``` -npm install @azure/ms-rest-nodeauth +- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`. +```bash +npm install @azure/ms-rest-nodeauth@"^3.0.0" ``` ##### Sample code -```ts +```typescript import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; @@ -34,7 +35,8 @@ const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; msRestNodeAuth.interactiveLogin().then((creds) => { const client = new SecurityCenter(creds, subscriptionId); - client.pricings.list().then((result) => { + const scope = "testscope"; + client.complianceResults.list(scope).then((result) => { console.log("The result is:"); console.log(result); }); @@ -43,11 +45,11 @@ msRestNodeAuth.interactiveLogin().then((creds) => { }); ``` -#### browser - Authentication, client creation and list pricings as an example written in JavaScript. +#### browser - Authentication, client creation and list complianceResults as an example written in JavaScript. ##### Install @azure/ms-rest-browserauth -``` +```bash npm install @azure/ms-rest-browserauth ``` @@ -77,7 +79,8 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to authManager.login(); } const client = new Azure.ArmSecurity.SecurityCenter(res.creds, subscriptionId); - client.pricings.list().then((result) => { + const scope = "testscope"; + client.complianceResults.list(scope).then((result) => { console.log("The result is:"); console.log(result); }).catch((err) => { @@ -95,5 +98,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to - [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js) - -![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fsecurity%2Farm-security%2FREADME.png) +![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/security/arm-security/README.png) diff --git a/sdk/security/arm-security/package.json b/sdk/security/arm-security/package.json index ce21db023d82..119319a2dc64 100644 --- a/sdk/security/arm-security/package.json +++ b/sdk/security/arm-security/package.json @@ -4,9 +4,9 @@ "description": "SecurityCenter Library with typescript type definitions for node.js and browser.", "version": "1.2.0", "dependencies": { - "@azure/ms-rest-azure-js": "^1.1.0", - "@azure/ms-rest-js": "^1.1.0", - "tslib": "^1.9.3" + "@azure/ms-rest-azure-js": "^2.0.1", + "@azure/ms-rest-js": "^2.0.4", + "tslib": "^1.10.0" }, "keywords": [ "node", @@ -20,18 +20,19 @@ "module": "./esm/securityCenter.js", "types": "./esm/securityCenter.d.ts", "devDependencies": { - "typescript": "^3.1.1", - "rollup": "^0.66.2", - "rollup-plugin-node-resolve": "^3.4.0", - "uglify-js": "^3.4.9" + "typescript": "^3.5.3", + "rollup": "^1.18.0", + "rollup-plugin-node-resolve": "^5.2.0", + "rollup-plugin-sourcemaps": "^0.4.2", + "uglify-js": "^3.6.0" }, - "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/sdk/security/arm-security", + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/security/arm-security", "repository": { "type": "git", - "url": "https://github.com/azure/azure-sdk-for-js.git" + "url": "https://github.com/Azure/azure-sdk-for-js.git" }, "bugs": { - "url": "https://github.com/azure/azure-sdk-for-js/issues" + "url": "https://github.com/Azure/azure-sdk-for-js/issues" }, "files": [ "dist/**/*.js", @@ -43,6 +44,7 @@ "esm/**/*.d.ts", "esm/**/*.d.ts.map", "src/**/*.ts", + "README.md", "rollup.config.js", "tsconfig.json" ], diff --git a/sdk/security/arm-security/rollup.config.js b/sdk/security/arm-security/rollup.config.js index 651c85e10ed3..2c4179d62509 100644 --- a/sdk/security/arm-security/rollup.config.js +++ b/sdk/security/arm-security/rollup.config.js @@ -1,10 +1,16 @@ +import rollup from "rollup"; import nodeResolve from "rollup-plugin-node-resolve"; +import sourcemaps from "rollup-plugin-sourcemaps"; + /** - * @type {import('rollup').RollupFileOptions} + * @type {rollup.RollupFileOptions} */ const config = { - input: './esm/securityCenter.js', - external: ["@azure/ms-rest-js", "@azure/ms-rest-azure-js"], + input: "./esm/securityCenter.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], output: { file: "./dist/arm-security.js", format: "umd", @@ -16,16 +22,16 @@ const config = { }, banner: `/* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */` }, plugins: [ - nodeResolve({ module: true }) + nodeResolve({ mainFields: ['module', 'main'] }), + sourcemaps() ] }; + export default config; diff --git a/sdk/security/arm-security/src/models/adaptiveApplicationControlsMappers.ts b/sdk/security/arm-security/src/models/adaptiveApplicationControlsMappers.ts new file mode 100644 index 000000000000..667ae58aa953 --- /dev/null +++ b/sdk/security/arm-security/src/models/adaptiveApplicationControlsMappers.ts @@ -0,0 +1,20 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + AppWhitelistingGroup, + AppWhitelistingGroups, + AppWhitelistingIssueSummary, + CloudError, + PathRecommendation, + ProtectionMode, + PublisherInfo, + UserRecommendation, + VmRecommendation +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/adaptiveNetworkHardeningsMappers.ts b/sdk/security/arm-security/src/models/adaptiveNetworkHardeningsMappers.ts new file mode 100644 index 000000000000..ef15fc1db9ba --- /dev/null +++ b/sdk/security/arm-security/src/models/adaptiveNetworkHardeningsMappers.ts @@ -0,0 +1,95 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdaptiveNetworkHardeningEnforceRequest, + AdaptiveNetworkHardeningsList, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/advancedThreatProtectionMappers.ts b/sdk/security/arm-security/src/models/advancedThreatProtectionMappers.ts index a5728932eabf..a0159c3fc476 100644 --- a/sdk/security/arm-security/src/models/advancedThreatProtectionMappers.ts +++ b/sdk/security/arm-security/src/models/advancedThreatProtectionMappers.ts @@ -1,34 +1,93 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, AdvancedThreatProtectionSetting, - Resource, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/alertsMappers.ts b/sdk/security/arm-security/src/models/alertsMappers.ts index db7d75be9704..17d1fac697f9 100644 --- a/sdk/security/arm-security/src/models/alertsMappers.ts +++ b/sdk/security/arm-security/src/models/alertsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - AlertList, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, Alert, - Resource, - BaseResource, - AlertEntity, AlertConfidenceReason, - CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, + AlertEntity, + AlertList, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/allowedConnectionsMappers.ts b/sdk/security/arm-security/src/models/allowedConnectionsMappers.ts index d8a8951a7057..3c08bb7fe3fa 100644 --- a/sdk/security/arm-security/src/models/allowedConnectionsMappers.ts +++ b/sdk/security/arm-security/src/models/allowedConnectionsMappers.ts @@ -1,19 +1,16 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, AllowedConnectionsList, AllowedConnectionsResource, + CloudError, ConnectableResource, - ConnectedResource, - CloudError + ConnectedResource } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/assessmentsMappers.ts b/sdk/security/arm-security/src/models/assessmentsMappers.ts new file mode 100644 index 000000000000..670e013afe97 --- /dev/null +++ b/sdk/security/arm-security/src/models/assessmentsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentList, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/assessmentsMetadataMappers.ts b/sdk/security/arm-security/src/models/assessmentsMetadataMappers.ts new file mode 100644 index 000000000000..4596b6b5413b --- /dev/null +++ b/sdk/security/arm-security/src/models/assessmentsMetadataMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataList, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/autoProvisioningSettingsMappers.ts b/sdk/security/arm-security/src/models/autoProvisioningSettingsMappers.ts index 8c012f3647a2..abfc44edcdc3 100644 --- a/sdk/security/arm-security/src/models/autoProvisioningSettingsMappers.ts +++ b/sdk/security/arm-security/src/models/autoProvisioningSettingsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - AutoProvisioningSettingList, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, AutoProvisioningSetting, - Resource, + AutoProvisioningSettingList, + AzureResourceDetails, BaseResource, CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/automationsMappers.ts b/sdk/security/arm-security/src/models/automationsMappers.ts new file mode 100644 index 000000000000..c0c7f12b3797 --- /dev/null +++ b/sdk/security/arm-security/src/models/automationsMappers.ts @@ -0,0 +1,24 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + Automation, + AutomationAction, + AutomationActionEventHub, + AutomationActionLogicApp, + AutomationActionWorkspace, + AutomationList, + AutomationRuleSet, + AutomationScope, + AutomationSource, + AutomationTriggeringRule, + AutomationValidationStatus, + CloudError, + TrackedResource +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/complianceResultsMappers.ts b/sdk/security/arm-security/src/models/complianceResultsMappers.ts new file mode 100644 index 000000000000..74b9c62d8ec2 --- /dev/null +++ b/sdk/security/arm-security/src/models/complianceResultsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceResultList, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/compliancesMappers.ts b/sdk/security/arm-security/src/models/compliancesMappers.ts index a38fc6ae8046..cf450240378a 100644 --- a/sdk/security/arm-security/src/models/compliancesMappers.ts +++ b/sdk/security/arm-security/src/models/compliancesMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - ComplianceList, - Compliance, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, - ComplianceSegment, CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, - AdvancedThreatProtectionSetting, + Compliance, + ComplianceList, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/deviceSecurityGroupsMappers.ts b/sdk/security/arm-security/src/models/deviceSecurityGroupsMappers.ts new file mode 100644 index 000000000000..1f44b1b82079 --- /dev/null +++ b/sdk/security/arm-security/src/models/deviceSecurityGroupsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DeviceSecurityGroupList, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/discoveredSecuritySolutionsMappers.ts b/sdk/security/arm-security/src/models/discoveredSecuritySolutionsMappers.ts index fbd7462a6323..7b504741880d 100644 --- a/sdk/security/arm-security/src/models/discoveredSecuritySolutionsMappers.ts +++ b/sdk/security/arm-security/src/models/discoveredSecuritySolutionsMappers.ts @@ -1,17 +1,14 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - DiscoveredSecuritySolutionList, + CloudError, DiscoveredSecuritySolution, - CloudError + DiscoveredSecuritySolutionList } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/externalSecuritySolutionsMappers.ts b/sdk/security/arm-security/src/models/externalSecuritySolutionsMappers.ts index 16f85ea6d5ae..55f2be16966d 100644 --- a/sdk/security/arm-security/src/models/externalSecuritySolutionsMappers.ts +++ b/sdk/security/arm-security/src/models/externalSecuritySolutionsMappers.ts @@ -1,25 +1,22 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - ExternalSecuritySolutionList, - ExternalSecuritySolution, - CloudError, + AadExternalSecuritySolution, + AadSolutionProperties, + AtaExternalSecuritySolution, + AtaSolutionProperties, CefExternalSecuritySolution, CefSolutionProperties, - ExternalSecuritySolutionProperties, + CloudError, ConnectedWorkspace, - AtaSolutionProperties, - AtaExternalSecuritySolution, - AadExternalSecuritySolution, - AadSolutionProperties + ExternalSecuritySolution, + ExternalSecuritySolutionList, + ExternalSecuritySolutionProperties } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/index.ts b/sdk/security/arm-security/src/models/index.ts index dc38e6a5aba6..af9dd9c265fe 100644 --- a/sdk/security/arm-security/src/models/index.ts +++ b/sdk/security/arm-security/src/models/index.ts @@ -1,11 +1,9 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js"; @@ -13,2091 +11,5943 @@ import * as msRest from "@azure/ms-rest-js"; export { BaseResource, CloudError }; - /** - * @interface - * An interface representing Resource. * Describes an Azure resource. - * - * @extends BaseResource */ export interface Resource extends BaseResource { /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly id?: string; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly type?: string; } /** - * @interface - * An interface representing Kind. - * Describes an Azure resource with kind - * + * a compliance result */ -export interface Kind { +export interface ComplianceResult extends Resource { /** - * @member {string} [kind] Kind of the resource + * The status of the resource regarding a single assessment. Possible values include: 'Healthy', + * 'NotApplicable', 'OffByPolicy', 'NotHealthy' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - kind?: string; + readonly resourceStatus?: ResourceStatus; } /** - * @interface - * An interface representing SecurityContact. - * Contact details for security issues - * - * @extends Resource + * The ASC location of the subscription is in the "name" field */ -export interface SecurityContact extends Resource { +export interface AscLocation extends Resource { + properties?: any; +} + +/** + * Describes an Azure tracked resource. + */ +export interface TrackedResource { /** - * @member {string} email The email of this security contact + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - email: string; + readonly id?: string; /** - * @member {string} [phone] The phone number of this security contact + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - phone?: string; + readonly name?: string; /** - * @member {AlertNotifications} alertNotifications Whether to send security - * alerts notifications to the security contact. Possible values include: - * 'On', 'Off' + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - alertNotifications: AlertNotifications; + readonly type?: string; /** - * @member {AlertsToAdmins} alertsToAdmins Whether to send security alerts - * notifications to subscription admins. Possible values include: 'On', 'Off' + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - alertsToAdmins: AlertsToAdmins; + readonly location?: string; + /** + * Kind of the resource + */ + kind?: string; + /** + * Entity tag is used for comparing two or more entities from the same requested resource. + */ + etag?: string; + /** + * A list of key value pairs that describe the resource. + */ + tags?: { [propertyName: string]: string }; } /** - * @interface - * An interface representing Pricing. - * Pricing tier will be applied for the scope based on the resource ID - * - * @extends Resource + * Describes an Azure resource with location */ -export interface Pricing extends Resource { +export interface Location { /** - * @member {PricingTier} pricingTier Pricing tier type. Possible values - * include: 'Free', 'Standard' + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - pricingTier: PricingTier; + readonly location?: string; } /** - * @interface - * An interface representing WorkspaceSetting. - * Configures where to store the OMS agent data for workspaces under a scope - * - * @extends Resource + * Describes an Azure resource with kind */ -export interface WorkspaceSetting extends Resource { - /** - * @member {string} workspaceId The full Azure ID of the workspace to save - * the data in - */ - workspaceId: string; +export interface Kind { /** - * @member {string} 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 + * Kind of the resource */ - scope: string; + kind?: string; } /** - * @interface - * An interface representing AutoProvisioningSetting. - * Auto provisioning setting - * - * @extends Resource + * Entity tag is used for comparing two or more entities from the same requested resource. */ -export interface AutoProvisioningSetting extends Resource { +export interface ETag { /** - * @member {AutoProvision} autoProvision Describes what kind of security - * agent provisioning action to take. Possible values include: 'On', 'Off' + * Entity tag is used for comparing two or more entities from the same requested resource. */ - autoProvision: AutoProvision; + etag?: string; } /** - * @interface - * An interface representing ComplianceSegment. - * A segment of a compliance assessment. - * + * A list of key value pairs that describe the resource. */ -export interface ComplianceSegment { - /** - * @member {string} [segmentType] The segment type, e.g. compliant, - * non-compliance, insufficient coverage, N/A, etc. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly segmentType?: string; +export interface Tags { /** - * @member {number} [percentage] The size (%) of the segment. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * A list of key value pairs that describe the resource. */ - readonly percentage?: number; + tags?: { [propertyName: string]: string }; } /** - * @interface - * An interface representing Compliance. - * Compliance of a scope - * - * @extends Resource + * Azure Security Center is provided in two pricing tiers: free and standard, with the standard + * tier available with a trial period. The standard tier offers advanced security capabilities, + * while the free tier offers basic security features. */ -export interface Compliance extends Resource { - /** - * @member {Date} [assessmentTimestampUtcDate] The timestamp when the - * Compliance calculation was conducted. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly assessmentTimestampUtcDate?: Date; +export interface Pricing extends Resource { /** - * @member {number} [resourceCount] The resource count of the given - * subscription for which the Compliance calculation was conducted (needed - * for Management Group Compliance calculation). - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The pricing tier value. Azure Security Center is provided in two pricing tiers: free and + * standard, with the standard tier available with a trial period. The standard tier offers + * advanced security capabilities, while the free tier offers basic security features. Possible + * values include: 'Free', 'Standard' */ - readonly resourceCount?: number; + pricingTier: PricingTier; /** - * @member {ComplianceSegment[]} [assessmentResult] An array of segment, - * which is the actually the compliance assessment. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The duration left for the subscriptions free trial period - in ISO 8601 format (e.g. + * P3Y6M4DT12H30M5S). + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly assessmentResult?: ComplianceSegment[]; + readonly freeTrialRemainingTime?: string; } /** - * @interface - * An interface representing AdvancedThreatProtectionSetting. - * The Advanced Threat Protection resource. - * - * @extends Resource + * List of pricing configurations response. */ -export interface AdvancedThreatProtectionSetting extends Resource { +export interface PricingList { /** - * @member {boolean} [isEnabled] Indicates whether Advanced Threat Protection - * is enabled. + * List of pricing configurations */ - isEnabled?: boolean; + value: Pricing[]; } /** - * Contains the possible cases for Setting. - */ -export type SettingUnion = Setting | DataExportSetting; - -/** - * @interface - * An interface representing Setting. - * Represents a security setting in Azure Security Center. - * + * Changing set of properties depending on the entity type. */ -export interface Setting { +export interface AlertEntity { /** - * @member {string} kind Polymorphic Discriminator + * Type of entity + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - kind: "Setting"; + readonly type?: string; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Describes unknown properties. The value of an unknown property can be of "any" type. */ - readonly id?: string; + [property: string]: any; +} + +/** + * Factors that increase our confidence that the alert is a true positive + */ +export interface AlertConfidenceReason { /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Type of confidence factor + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly type?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * description of the confidence reason + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly reason?: string; } /** - * @interface - * An interface representing DataExportSetting. - * Represents a data export setting - * + * Security alert */ -export interface DataExportSetting { +export interface Alert extends Resource { /** - * @member {string} kind Polymorphic Discriminator + * State of the alert (Active, Dismissed etc.) + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - kind: "DataExportSetting"; + readonly state?: string; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The time the incident was reported to Microsoft.Security in UTC + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly id?: string; + readonly reportedTimeUtc?: Date; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Name of the vendor that discovered the incident + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly vendorName?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Name of the alert type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly alertName?: string; /** - * @member {boolean} enabled Is the data export setting is enabled + * Display name of the alert type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - enabled: boolean; -} - -/** - * @interface - * An interface representing SettingKind1. - * The kind of the security setting - * - */ -export interface SettingKind1 { + readonly alertDisplayName?: string; /** - * @member {SettingKind} [kind] the kind of the settings string. Possible - * values include: 'DataExportSetting' + * The time the incident was detected by the vendor + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - kind?: SettingKind; -} - -/** - * @interface - * An interface representing SensitivityLabel. - * The sensitivity label. - * - */ -export interface SensitivityLabel { + readonly detectedTimeUtc?: Date; /** - * @member {string} [displayName] The name of the sensitivity label. + * Description of the incident and what it means + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - displayName?: string; + readonly description?: string; /** - * @member {number} [order] The order of the sensitivity label. + * Recommended steps to reradiate the incident + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - order?: number; + readonly remediationSteps?: string; /** - * @member {boolean} [enabled] Indicates whether the label is enabled or not. + * The action that was taken as a response to the alert (Active, Blocked etc.) + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - enabled?: boolean; -} - -/** - * @interface - * An interface representing InformationProtectionKeyword. - * The information type keyword. - * - */ -export interface InformationProtectionKeyword { + readonly actionTaken?: string; /** - * @member {string} [pattern] The keyword pattern. + * Estimated severity of this alert. Possible values include: 'Informational', 'Low', 'Medium', + * 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - pattern?: string; + readonly reportedSeverity?: ReportedSeverity; /** - * @member {boolean} [custom] Indicates whether the keyword is custom or not. + * The entity that the incident happened on + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - custom?: boolean; + readonly compromisedEntity?: string; /** - * @member {boolean} [canBeNumeric] Indicates whether the keyword can be - * applied on numeric types or not. + * Azure resource ID of the associated resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - canBeNumeric?: boolean; + readonly associatedResource?: string; + extendedProperties?: { [propertyName: string]: any }; /** - * @member {boolean} [excluded] Indicates whether the keyword is excluded or - * not. + * The type of the alerted resource (Azure, Non-Azure) + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - excluded?: boolean; -} - -/** - * @interface - * An interface representing InformationType. - * The information type. - * - */ -export interface InformationType { + readonly systemSource?: string; /** - * @member {string} [displayName] The name of the information type. + * Whether this alert can be investigated with Azure Security Center + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - displayName?: string; + readonly canBeInvestigated?: boolean; /** - * @member {number} [order] The order of the information type. + * Whether this alert is for incident type or not (otherwise - single alert) + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - order?: number; + readonly isIncident?: boolean; /** - * @member {string} [recommendedLabelId] The recommended label id to be - * associated with this information type. + * objects that are related to this alerts */ - recommendedLabelId?: string; + entities?: AlertEntity[]; /** - * @member {boolean} [enabled] Indicates whether the information type is - * enabled or not. + * level of confidence we have on the alert + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - enabled?: boolean; + readonly confidenceScore?: number; /** - * @member {boolean} [custom] Indicates whether the information type is - * custom or not. + * reasons the alert got the confidenceScore value */ - custom?: boolean; + confidenceReasons?: AlertConfidenceReason[]; /** - * @member {InformationProtectionKeyword[]} [keywords] The information type - * keywords. + * Azure subscription ID of the resource that had the security alert or the subscription ID of + * the workspace that this resource reports to + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - keywords?: InformationProtectionKeyword[]; -} - -/** - * @interface - * An interface representing InformationProtectionPolicy. - * Information protection policy. - * - * @extends Resource - */ -export interface InformationProtectionPolicy extends Resource { + readonly subscriptionId?: string; /** - * @member {Date} [lastModifiedUtc] Describes the last UTC time the policy - * was modified. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Instance ID of the alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly lastModifiedUtc?: Date; + readonly instanceId?: string; /** - * @member {{ [propertyName: string]: SensitivityLabel }} [labels] Dictionary - * of sensitivity labels. + * Azure resource ID of the workspace that the alert was reported to. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - labels?: { [propertyName: string]: SensitivityLabel }; + readonly workspaceArmId?: string; /** - * @member {{ [propertyName: string]: InformationType }} [informationTypes] - * The sensitivity information types. + * Alerts with the same CorrelationKey will be grouped together in Ibiza. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - informationTypes?: { [propertyName: string]: InformationType }; + readonly correlationKey?: string; } /** - * @interface - * An interface representing Location. - * Describes an Azure resource with location - * + * Contains the possible cases for SettingResource. */ -export interface Location { - /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly location?: string; -} +export type SettingResourceUnion = SettingResource | SettingUnion; /** - * @interface - * An interface representing OperationDisplay. - * Security operation display - * + * The kind of the security setting */ -export interface OperationDisplay { +export interface SettingResource { /** - * @member {string} [provider] The resource provider for the operation. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly provider?: string; + kind: "SettingResource"; /** - * @member {string} [resource] The display name of the resource the operation - * applies to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly resource?: string; + readonly id?: string; /** - * @member {string} [operation] The display name of the security operation. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly operation?: string; + readonly name?: string; /** - * @member {string} [description] The description of the operation. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly description?: string; + readonly type?: string; + /** + * Describes unknown properties. The value of an unknown property can be of "any" type. + */ + [property: string]: any; } /** - * @interface - * An interface representing Operation. - * Possible operation in the REST API of Microsoft.Security - * + * Contains the possible cases for Setting. */ -export interface Operation { - /** - * @member {string} [name] Name of the operation - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly name?: string; +export type SettingUnion = Setting | DataExportSettings; + +/** + * Represents a security setting in Azure Security Center. + */ +export interface Setting { /** - * @member {string} [origin] Where the operation is originated - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly origin?: string; + kind: "Setting"; /** - * @member {OperationDisplay} [display] + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - display?: OperationDisplay; -} - -/** - * @interface - * An interface representing SecurityTaskParameters. - * Changing set of properties, depending on the task type that is derived from - * the name field - * - */ -export interface SecurityTaskParameters { + readonly id?: string; /** - * @member {string} [name] Name of the task type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly name?: string; /** - * @property Describes unknown properties. The value of an unknown property - * can be of "any" type. + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - [property: string]: any; + readonly type?: string; } /** - * @interface - * An interface representing SecurityTask. - * Security task that we recommend to do in order to strengthen security - * - * @extends Resource + * Represents a data export setting */ -export interface SecurityTask extends Resource { +export interface DataExportSettings { /** - * @member {string} [state] State of the task (Active, Resolved etc.) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly state?: string; + kind: "DataExportSettings"; /** - * @member {Date} [creationTimeUtc] The time this task was discovered in UTC - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly creationTimeUtc?: Date; + readonly id?: string; /** - * @member {SecurityTaskParameters} [securityTaskParameters] + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - securityTaskParameters?: SecurityTaskParameters; + readonly name?: string; /** - * @member {Date} [lastStateChangeTimeUtc] The time this task's details were - * last changed in UTC - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly lastStateChangeTimeUtc?: Date; + readonly type?: string; /** - * @member {string} [subState] Additional data on the state of the task - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Is the data export setting is enabled */ - readonly subState?: string; + enabled: boolean; } /** - * @interface - * An interface representing AscLocation. - * The ASC location of the subscription is in the "name" field - * - * @extends Resource + * The Advanced Threat Protection resource. */ -export interface AscLocation extends Resource { +export interface AdvancedThreatProtectionSetting extends Resource { /** - * @member {any} [properties] + * Indicates whether Advanced Threat Protection is enabled. */ - properties?: any; + isEnabled?: boolean; } /** - * @interface - * An interface representing AlertEntity. - * Changing set of properties depending on the entity type. - * + * Contains the possible cases for CustomAlertRule. */ -export interface AlertEntity { +export type CustomAlertRuleUnion = CustomAlertRule | ThresholdCustomAlertRuleUnion | ListCustomAlertRuleUnion; + +/** + * A custom alert rule. + */ +export interface CustomAlertRule { /** - * @member {string} [type] Type of entity - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly type?: string; + ruleType: "CustomAlertRule"; /** - * @property Describes unknown properties. The value of an unknown property - * can be of "any" type. + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - [property: string]: any; -} - -/** - * @interface - * An interface representing AlertConfidenceReason. - * Factors that increase our confidence that the alert is a true positive - * - */ -export interface AlertConfidenceReason { + readonly displayName?: string; /** - * @member {string} [type] Type of confidence factor - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly description?: string; /** - * @member {string} [reason] description of the confidence reason - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly reason?: string; + isEnabled: boolean; } /** - * @interface - * An interface representing Alert. - * Security alert - * - * @extends Resource + * Contains the possible cases for ThresholdCustomAlertRule. */ -export interface Alert extends Resource { +export type ThresholdCustomAlertRuleUnion = ThresholdCustomAlertRule | TimeWindowCustomAlertRuleUnion; + +/** + * A custom alert rule that checks if a value (depends on the custom alert type) is within the + * given range. + */ +export interface ThresholdCustomAlertRule { /** - * @member {string} [state] State of the alert (Active, Dismissed etc.) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly state?: string; + ruleType: "ThresholdCustomAlertRule"; /** - * @member {Date} [reportedTimeUtc] The time the incident was reported to - * Microsoft.Security in UTC - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly reportedTimeUtc?: Date; + readonly displayName?: string; /** - * @member {string} [vendorName] Name of the vendor that discovered the - * incident - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly vendorName?: string; + readonly description?: string; /** - * @member {string} [alertName] Name of the alert type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly alertName?: string; + isEnabled: boolean; /** - * @member {string} [alertDisplayName] Display name of the alert type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly alertDisplayName?: string; + minThreshold: number; /** - * @member {Date} [detectedTimeUtc] The time the incident was detected by the - * vendor - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The maximum threshold. */ - readonly detectedTimeUtc?: Date; + maxThreshold: number; +} + +/** + * Contains the possible cases for TimeWindowCustomAlertRule. + */ +export type TimeWindowCustomAlertRuleUnion = TimeWindowCustomAlertRule | ActiveConnectionsNotInAllowedRange | AmqpC2DMessagesNotInAllowedRange | MqttC2DMessagesNotInAllowedRange | HttpC2DMessagesNotInAllowedRange | AmqpC2DRejectedMessagesNotInAllowedRange | MqttC2DRejectedMessagesNotInAllowedRange | HttpC2DRejectedMessagesNotInAllowedRange | AmqpD2CMessagesNotInAllowedRange | MqttD2CMessagesNotInAllowedRange | HttpD2CMessagesNotInAllowedRange | DirectMethodInvokesNotInAllowedRange | FailedLocalLoginsNotInAllowedRange | FileUploadsNotInAllowedRange | QueuePurgesNotInAllowedRange | TwinUpdatesNotInAllowedRange | UnauthorizedOperationsNotInAllowedRange; + +/** + * 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. + */ +export interface TimeWindowCustomAlertRule { + /** + * Polymorphic Discriminator + */ + ruleType: "TimeWindowCustomAlertRule"; + /** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly displayName?: string; /** - * @member {string} [description] Description of the incident and what it - * means - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly description?: string; /** - * @member {string} [remediationSteps] Recommended steps to reradiate the - * incident - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly remediationSteps?: string; + isEnabled: boolean; /** - * @member {string} [actionTaken] The action that was taken as a response to - * the alert (Active, Blocked etc.) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly actionTaken?: string; + minThreshold: number; /** - * @member {string} [reportedSeverity] Estimated severity of this alert - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The maximum threshold. */ - readonly reportedSeverity?: string; + maxThreshold: number; /** - * @member {string} [compromisedEntity] The entity that the incident happened - * on - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The time window size in iso8601 format. */ - readonly compromisedEntity?: string; + timeWindowSize: string; +} + +/** + * Contains the possible cases for ListCustomAlertRule. + */ +export type ListCustomAlertRuleUnion = ListCustomAlertRule | AllowlistCustomAlertRuleUnion | DenylistCustomAlertRule; + +/** + * A List custom alert rule. + */ +export interface ListCustomAlertRule { /** - * @member {string} [associatedResource] Azure resource ID of the associated - * resource - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly associatedResource?: string; + ruleType: "ListCustomAlertRule"; /** - * @member {{ [propertyName: string]: any }} [extendedProperties] + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - extendedProperties?: { [propertyName: string]: any }; + readonly displayName?: string; /** - * @member {string} [systemSource] The type of the alerted resource (Azure, - * Non-Azure) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly systemSource?: string; + readonly description?: string; /** - * @member {boolean} [canBeInvestigated] Whether this alert can be - * investigated with Azure Security Center - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly canBeInvestigated?: boolean; + isEnabled: boolean; /** - * @member {AlertEntity[]} [entities] objects that are related to this alerts + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - entities?: AlertEntity[]; + readonly valueType?: ValueType; +} + +/** + * Contains the possible cases for AllowlistCustomAlertRule. + */ +export type AllowlistCustomAlertRuleUnion = AllowlistCustomAlertRule | ConnectionToIpNotAllowed | LocalUserNotAllowed | ProcessNotAllowed; + +/** + * A custom alert rule that checks if a value (depends on the custom alert type) is allowed. + */ +export interface AllowlistCustomAlertRule { /** - * @member {number} [confidenceScore] level of confidence we have on the - * alert - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly confidenceScore?: number; + ruleType: "AllowlistCustomAlertRule"; /** - * @member {AlertConfidenceReason[]} [confidenceReasons] reasons the alert - * got the confidenceScore value + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - confidenceReasons?: AlertConfidenceReason[]; + readonly displayName?: string; /** - * @member {string} [subscriptionId] Azure subscription ID of the resource - * that had the security alert or the subscription ID of the workspace that - * this resource reports to - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly subscriptionId?: string; + readonly description?: string; /** - * @member {string} [instanceId] Instance ID of the alert. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly instanceId?: string; + isEnabled: boolean; /** - * @member {string} [workspaceArmId] Azure resource ID of the workspace that - * the alert was reported to. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly workspaceArmId?: string; + readonly valueType?: ValueType; + /** + * The values to allow. The format of the values depends on the rule type. + */ + allowlistValues: string[]; } /** - * @interface - * An interface representing DiscoveredSecuritySolution. + * A custom alert rule that checks if a value (depends on the custom alert type) is denied. */ -export interface DiscoveredSecuritySolution { - /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly id?: string; +export interface DenylistCustomAlertRule { /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly name?: string; - /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly type?: string; + ruleType: "DenylistCustomAlertRule"; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly location?: string; + readonly displayName?: string; /** - * @member {SecurityFamily} securityFamily The security family of the - * discovered solution. Possible values include: 'Waf', 'Ngfw', 'SaasWaf', - * 'Va' + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - securityFamily: SecurityFamily; + readonly description?: string; /** - * @member {string} offer The security solutions' image offer + * Status of the custom alert. */ - offer: string; + isEnabled: boolean; /** - * @member {string} publisher The security solutions' image publisher + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - publisher: string; + readonly valueType?: ValueType; /** - * @member {string} sku The security solutions' image sku + * The values to deny. The format of the values depends on the rule type. */ - sku: string; + denylistValues: string[]; } /** - * @interface - * An interface representing TopologySingleResourceParent. + * The device security group resource */ -export interface TopologySingleResourceParent { +export interface DeviceSecurityGroup extends Resource { /** - * @member {string} [resourceId] Azure resource id which serves as parent - * resource in topology view - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The list of custom alert threshold rules. */ - readonly resourceId?: string; -} - -/** - * @interface - * An interface representing TopologySingleResourceChild. - */ -export interface TopologySingleResourceChild { + thresholdRules?: ThresholdCustomAlertRuleUnion[]; /** - * @member {string} [resourceId] Azure resource id which serves as child - * resource in topology view - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The list of custom alert time-window rules. */ - readonly resourceId?: string; -} - -/** - * @interface - * An interface representing TopologySingleResource. - */ -export interface TopologySingleResource { + timeWindowRules?: TimeWindowCustomAlertRuleUnion[]; /** - * @member {string} [resourceId] Azure resource id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The allow-list custom alert rules. */ - readonly resourceId?: string; + allowlistRules?: AllowlistCustomAlertRuleUnion[]; /** - * @member {string} [severity] The security severity of the resource - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The deny-list custom alert rules. */ - readonly severity?: string; + denylistRules?: DenylistCustomAlertRule[]; +} + +/** + * Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in + * CIDR notation. + */ +export interface ConnectionToIpNotAllowed { /** - * @member {boolean} [recommendationsExist] Indicates if the resource has - * security recommendations - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly recommendationsExist?: boolean; + ruleType: "ConnectionToIpNotAllowed"; /** - * @member {string} [networkZones] Indicates the resource connectivity level - * to the Internet (InternetFacing, Internal ,etc.) - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly networkZones?: string; + readonly displayName?: string; /** - * @member {number} [topologyScore] Score of the resource based on its - * security severity - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly topologyScore?: number; + readonly description?: string; /** - * @member {string} [location] The location of this resource - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly location?: string; + isEnabled: boolean; /** - * @member {TopologySingleResourceParent[]} [parents] Azure resources - * connected to this resource which are in higher level in the topology view - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly parents?: TopologySingleResourceParent[]; + readonly valueType?: ValueType; /** - * @member {TopologySingleResourceChild[]} [children] Azure resources - * connected to this resource which are in lower level in the topology view - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The values to allow. The format of the values depends on the rule type. */ - readonly children?: TopologySingleResourceChild[]; + allowlistValues: string[]; } /** - * @interface - * An interface representing TopologyResource. + * Login by a local user that isn't allowed. Allow list consists of login names to allow. */ -export interface TopologyResource { +export interface LocalUserNotAllowed { /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly id?: string; + ruleType: "LocalUserNotAllowed"; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly displayName?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly description?: string; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly location?: string; + isEnabled: boolean; /** - * @member {Date} [calculatedDateTime] The UTC time on which the topology was - * calculated - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly calculatedDateTime?: Date; + readonly valueType?: ValueType; /** - * @member {TopologySingleResource[]} [topologyResources] Azure resources - * which are part of this topology resource - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The values to allow. The format of the values depends on the rule type. */ - readonly topologyResources?: TopologySingleResource[]; + allowlistValues: string[]; } /** - * @interface - * An interface representing JitNetworkAccessPortRule. + * Execution of a process that isn't allowed. Allow list consists of process names to allow. */ -export interface JitNetworkAccessPortRule { - /** - * @member {number} number - */ - number: number; +export interface ProcessNotAllowed { /** - * @member {Protocol} protocol Possible values include: 'TCP', 'UDP', 'All' + * Polymorphic Discriminator */ - protocol: Protocol; + ruleType: "ProcessNotAllowed"; /** - * @member {string} [allowedSourceAddressPrefix] 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". + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - allowedSourceAddressPrefix?: string; + readonly displayName?: string; /** - * @member {string[]} [allowedSourceAddressPrefixes] Mutually exclusive with - * the "allowedSourceAddressPrefix" parameter. + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - allowedSourceAddressPrefixes?: string[]; + readonly description?: string; /** - * @member {string} maxRequestAccessDuration Maximum duration requests can be - * made for. In ISO 8601 duration format. Minimum 5 minutes, maximum 1 day + * Status of the custom alert. */ - maxRequestAccessDuration: string; -} - -/** - * @interface - * An interface representing JitNetworkAccessPolicyVirtualMachine. - */ -export interface JitNetworkAccessPolicyVirtualMachine { + isEnabled: boolean; /** - * @member {string} id Resource ID of the virtual machine that is linked to - * this policy + * The value type of the items in the list. Possible values include: 'IpCidr', 'String' + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - id: string; + readonly valueType?: ValueType; /** - * @member {JitNetworkAccessPortRule[]} ports Port configurations for the - * virtual machine + * The values to allow. The format of the values depends on the rule type. */ - ports: JitNetworkAccessPortRule[]; + allowlistValues: string[]; } /** - * @interface - * An interface representing JitNetworkAccessRequestPort. + * Number of active connections is not in allowed range. */ -export interface JitNetworkAccessRequestPort { +export interface ActiveConnectionsNotInAllowedRange { /** - * @member {number} number + * Polymorphic Discriminator */ - number: number; + ruleType: "ActiveConnectionsNotInAllowedRange"; /** - * @member {string} [allowedSourceAddressPrefix] 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". + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - allowedSourceAddressPrefix?: string; + readonly displayName?: string; /** - * @member {string[]} [allowedSourceAddressPrefixes] Mutually exclusive with - * the "allowedSourceAddressPrefix" parameter. + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - allowedSourceAddressPrefixes?: string[]; + readonly description?: string; /** - * @member {Date} endTimeUtc The date & time at which the request ends in UTC + * Status of the custom alert. */ - endTimeUtc: Date; + isEnabled: boolean; /** - * @member {Status} status The status of the port. Possible values include: - * 'Revoked', 'Initiated' + * The minimum threshold. */ - status: Status; + minThreshold: number; /** - * @member {StatusReason} statusReason A description of why the `status` has - * its value. Possible values include: 'Expired', 'UserRequested', - * 'NewerRequestInitiated' + * The maximum threshold. */ - statusReason: StatusReason; + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing JitNetworkAccessRequestVirtualMachine. + * Number of cloud to device messages (AMQP protocol) is not in allowed range. */ -export interface JitNetworkAccessRequestVirtualMachine { +export interface AmqpC2DMessagesNotInAllowedRange { /** - * @member {string} id Resource ID of the virtual machine that is linked to - * this policy + * Polymorphic Discriminator */ - id: string; + ruleType: "AmqpC2DMessagesNotInAllowedRange"; /** - * @member {JitNetworkAccessRequestPort[]} ports The ports that were opened - * for the virtual machine + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - ports: JitNetworkAccessRequestPort[]; -} - -/** - * @interface - * An interface representing JitNetworkAccessRequest. - */ -export interface JitNetworkAccessRequest { + readonly displayName?: string; /** - * @member {JitNetworkAccessRequestVirtualMachine[]} virtualMachines + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - virtualMachines: JitNetworkAccessRequestVirtualMachine[]; + readonly description?: string; /** - * @member {Date} startTimeUtc The start time of the request in UTC + * Status of the custom alert. */ - startTimeUtc: Date; + isEnabled: boolean; /** - * @member {string} requestor The identity of the person who made the request + * The minimum threshold. */ - requestor: string; + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing JitNetworkAccessPolicy. + * Number of cloud to device messages (MQTT protocol) is not in allowed range. */ -export interface JitNetworkAccessPolicy { - /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly id?: string; +export interface MqttC2DMessagesNotInAllowedRange { /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly name?: string; + ruleType: "MqttC2DMessagesNotInAllowedRange"; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly displayName?: string; /** - * @member {string} [kind] Kind of the resource + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - kind?: string; + readonly description?: string; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly location?: string; + isEnabled: boolean; /** - * @member {JitNetworkAccessPolicyVirtualMachine[]} virtualMachines - * Configurations for Microsoft.Compute/virtualMachines resource type. + * The minimum threshold. */ - virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; + minThreshold: number; /** - * @member {JitNetworkAccessRequest[]} [requests] + * The maximum threshold. */ - requests?: JitNetworkAccessRequest[]; + maxThreshold: number; /** - * @member {string} [provisioningState] Gets the provisioning state of the - * Just-in-Time policy. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The time window size in iso8601 format. */ - readonly provisioningState?: string; + timeWindowSize: string; } /** - * @interface - * An interface representing JitNetworkAccessPolicyInitiatePort. + * Number of cloud to device messages (HTTP protocol) is not in allowed range. */ -export interface JitNetworkAccessPolicyInitiatePort { +export interface HttpC2DMessagesNotInAllowedRange { /** - * @member {number} number + * Polymorphic Discriminator */ - number: number; + ruleType: "HttpC2DMessagesNotInAllowedRange"; /** - * @member {string} [allowedSourceAddressPrefix] Source of the allowed - * traffic. If omitted, the request will be for the source IP address of the - * initiate request. + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - allowedSourceAddressPrefix?: string; + readonly displayName?: string; /** - * @member {Date} endTimeUtc The time to close the request in UTC + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - endTimeUtc: Date; -} - -/** - * @interface - * An interface representing JitNetworkAccessPolicyInitiateVirtualMachine. - */ -export interface JitNetworkAccessPolicyInitiateVirtualMachine { + readonly description?: string; /** - * @member {string} id Resource ID of the virtual machine that is linked to - * this policy + * Status of the custom alert. */ - id: string; + isEnabled: boolean; /** - * @member {JitNetworkAccessPolicyInitiatePort[]} ports The ports to open for - * the resource with the `id` + * The minimum threshold. */ - ports: JitNetworkAccessPolicyInitiatePort[]; -} - -/** - * @interface - * An interface representing JitNetworkAccessPolicyInitiateRequest. - */ -export interface JitNetworkAccessPolicyInitiateRequest { + minThreshold: number; /** - * @member {JitNetworkAccessPolicyInitiateVirtualMachine[]} virtualMachines A - * list of virtual machines & ports to open access for + * The maximum threshold. */ - virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[]; + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * Contains the possible cases for ExternalSecuritySolution. - */ -export type ExternalSecuritySolutionUnion = ExternalSecuritySolution | CefExternalSecuritySolution | AtaExternalSecuritySolution | AadExternalSecuritySolution; - -/** - * @interface - * An interface representing ExternalSecuritySolution. - * Represents a security solution external to Azure Security Center which sends - * information to an OMS workspace and whos data is displayed by Azure Security - * Center. - * + * Number of rejected cloud to device messages (AMQP protocol) is not in allowed range. */ -export interface ExternalSecuritySolution { +export interface AmqpC2DRejectedMessagesNotInAllowedRange { /** - * @member {string} kind Polymorphic Discriminator + * Polymorphic Discriminator */ - kind: "ExternalSecuritySolution"; + ruleType: "AmqpC2DRejectedMessagesNotInAllowedRange"; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly id?: string; + readonly displayName?: string; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly description?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly type?: string; + isEnabled: boolean; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly location?: string; + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing ExternalSecuritySolutionProperties. - * The solution properties (correspond to the solution kind) - * + * Number of rejected cloud to device messages (MQTT protocol) is not in allowed range. */ -export interface ExternalSecuritySolutionProperties { +export interface MqttC2DRejectedMessagesNotInAllowedRange { /** - * @member {string} [deviceVendor] + * Polymorphic Discriminator */ - deviceVendor?: string; + ruleType: "MqttC2DRejectedMessagesNotInAllowedRange"; /** - * @member {string} [deviceType] + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - deviceType?: string; + readonly displayName?: string; /** - * @member {ConnectedWorkspace} [workspace] + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - workspace?: ConnectedWorkspace; + readonly description?: string; /** - * @property Describes unknown properties. The value of an unknown property - * can be of "any" type. + * Status of the custom alert. */ - [property: string]: any; -} - -/** - * @interface - * An interface representing CefSolutionProperties. - * @summary The external security solution properties for CEF solutions - * - * @extends ExternalSecuritySolutionProperties - */ -export interface CefSolutionProperties extends ExternalSecuritySolutionProperties { + isEnabled: boolean; /** - * @member {string} [hostname] + * The minimum threshold. */ - hostname?: string; + minThreshold: number; /** - * @member {string} [agent] + * The maximum threshold. */ - agent?: string; + maxThreshold: number; /** - * @member {string} [lastEventReceived] + * The time window size in iso8601 format. */ - lastEventReceived?: string; + timeWindowSize: string; } /** - * @interface - * An interface representing CefExternalSecuritySolution. - * Represents a security solution which sends CEF logs to an OMS workspace - * + * Number of rejected cloud to device messages (HTTP protocol) is not in allowed range. */ -export interface CefExternalSecuritySolution { +export interface HttpC2DRejectedMessagesNotInAllowedRange { /** - * @member {string} kind Polymorphic Discriminator + * Polymorphic Discriminator */ - kind: "CEF"; + ruleType: "HttpC2DRejectedMessagesNotInAllowedRange"; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly id?: string; + readonly displayName?: string; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly description?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly type?: string; + isEnabled: boolean; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly location?: string; + minThreshold: number; /** - * @member {CefSolutionProperties} [properties] + * The maximum threshold. */ - properties?: CefSolutionProperties; -} - -/** - * @interface - * An interface representing AtaSolutionProperties. - * @summary The external security solution properties for ATA solutions - * - * @extends ExternalSecuritySolutionProperties - */ -export interface AtaSolutionProperties extends ExternalSecuritySolutionProperties { + maxThreshold: number; /** - * @member {string} [lastEventReceived] + * The time window size in iso8601 format. */ - lastEventReceived?: string; + timeWindowSize: string; } /** - * @interface - * An interface representing AtaExternalSecuritySolution. - * Represents an ATA security solution which sends logs to an OMS workspace - * + * Number of device to cloud messages (AMQP protocol) is not in allowed range. */ -export interface AtaExternalSecuritySolution { +export interface AmqpD2CMessagesNotInAllowedRange { /** - * @member {string} kind Polymorphic Discriminator + * Polymorphic Discriminator */ - kind: "ATA"; + ruleType: "AmqpD2CMessagesNotInAllowedRange"; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly id?: string; + readonly displayName?: string; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly description?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly type?: string; + isEnabled: boolean; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly location?: string; + minThreshold: number; /** - * @member {AtaSolutionProperties} [properties] + * The maximum threshold. */ - properties?: AtaSolutionProperties; -} - -/** - * @interface - * An interface representing ConnectedWorkspace. - * @summary Represents an OMS workspace to which the solution is connected - * - */ -export interface ConnectedWorkspace { + maxThreshold: number; /** - * @member {string} [id] Azure resource ID of the connected OMS workspace + * The time window size in iso8601 format. */ - id?: string; + timeWindowSize: string; } /** - * @interface - * An interface representing AadSolutionProperties. - * @summary The external security solution properties for AAD solutions - * + * Number of device to cloud messages (MQTT protocol) is not in allowed range. */ -export interface AadSolutionProperties { +export interface MqttD2CMessagesNotInAllowedRange { /** - * @member {string} [deviceVendor] + * Polymorphic Discriminator */ - deviceVendor?: string; + ruleType: "MqttD2CMessagesNotInAllowedRange"; /** - * @member {string} [deviceType] + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - deviceType?: string; + readonly displayName?: string; /** - * @member {ConnectedWorkspace} [workspace] + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - workspace?: ConnectedWorkspace; + readonly description?: string; /** - * @member {AadConnectivityState} [connectivityState] The connectivity state - * of the external AAD solution . Possible values include: 'Discovered', - * 'NotLicensed', 'Connected' + * Status of the custom alert. */ - connectivityState?: AadConnectivityState; + isEnabled: boolean; + /** + * The minimum threshold. + */ + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing AadExternalSecuritySolution. - * Represents an AAD identity protection solution which sends logs to an OMS - * workspace. - * + * Number of device to cloud messages (HTTP protocol) is not in allowed range. */ -export interface AadExternalSecuritySolution { +export interface HttpD2CMessagesNotInAllowedRange { /** - * @member {string} kind Polymorphic Discriminator + * Polymorphic Discriminator */ - kind: "AAD"; + ruleType: "HttpD2CMessagesNotInAllowedRange"; /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly id?: string; + readonly displayName?: string; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly description?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly type?: string; + isEnabled: boolean; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly location?: string; + minThreshold: number; /** - * @member {AadSolutionProperties} [properties] + * The maximum threshold. */ - properties?: AadSolutionProperties; -} - -/** - * @interface - * An interface representing ExternalSecuritySolutionKind1. - * Describes an Azure resource with kind - * - */ -export interface ExternalSecuritySolutionKind1 { + maxThreshold: number; /** - * @member {ExternalSecuritySolutionKind} [kind] The kind of the external - * solution. Possible values include: 'CEF', 'ATA', 'AAD' + * The time window size in iso8601 format. */ - kind?: ExternalSecuritySolutionKind; + timeWindowSize: string; } /** - * @interface - * An interface representing AadConnectivityState1. - * Describes an Azure resource with kind - * + * Number of direct method invokes is not in allowed range. */ -export interface AadConnectivityState1 { +export interface DirectMethodInvokesNotInAllowedRange { /** - * @member {AadConnectivityState} [connectivityState] The connectivity state - * of the external AAD solution . Possible values include: 'Discovered', - * 'NotLicensed', 'Connected' + * Polymorphic Discriminator */ - connectivityState?: AadConnectivityState; -} - -/** - * @interface - * An interface representing ConnectedResource. - * Describes properties of a connected resource - * - */ -export interface ConnectedResource { + ruleType: "DirectMethodInvokesNotInAllowedRange"; /** - * @member {string} [connectedResourceId] The Azure resource id of the - * connected resource - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly connectedResourceId?: string; + readonly displayName?: string; /** - * @member {string} [tcpPorts] The allowed tcp ports - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly tcpPorts?: string; + readonly description?: string; /** - * @member {string} [udpPorts] The allowed udp ports - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly udpPorts?: string; -} - -/** - * @interface - * An interface representing ConnectableResource. - * Describes the allowed inbound and outbound traffic of an Azure resource - * - */ -export interface ConnectableResource { + isEnabled: boolean; /** - * @member {string} [id] The Azure resource id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly id?: string; + minThreshold: number; /** - * @member {ConnectedResource[]} [inboundConnectedResources] The list of - * Azure resources that the resource has inbound allowed connection from - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The maximum threshold. */ - readonly inboundConnectedResources?: ConnectedResource[]; + maxThreshold: number; /** - * @member {ConnectedResource[]} [outboundConnectedResources] The list of - * Azure resources that the resource has outbound allowed connection to - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The time window size in iso8601 format. */ - readonly outboundConnectedResources?: ConnectedResource[]; + timeWindowSize: string; } /** - * @interface - * An interface representing AllowedConnectionsResource. - * The resource whose properties describes the allowed traffic between Azure - * resources - * + * Number of failed local logins is not in allowed range. */ -export interface AllowedConnectionsResource { +export interface FailedLocalLoginsNotInAllowedRange { /** - * @member {string} [id] Resource Id - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Polymorphic Discriminator */ - readonly id?: string; + ruleType: "FailedLocalLoginsNotInAllowedRange"; /** - * @member {string} [name] Resource name - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly name?: string; + readonly displayName?: string; /** - * @member {string} [type] Resource type - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly type?: string; + readonly description?: string; /** - * @member {string} [location] Location where the resource is stored - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Status of the custom alert. */ - readonly location?: string; + isEnabled: boolean; /** - * @member {Date} [calculatedDateTime] The UTC time on which the allowed - * connections resource was calculated - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The minimum threshold. */ - readonly calculatedDateTime?: Date; + minThreshold: number; /** - * @member {ConnectableResource[]} [connectableResources] List of connectable - * resources - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The maximum threshold. */ - readonly connectableResources?: ConnectableResource[]; -} - -/** - * @interface - * An interface representing TasksListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface TasksListOptionalParams extends msRest.RequestOptionsBase { + maxThreshold: number; /** - * @member {string} [filter] OData filter. Optional. + * The time window size in iso8601 format. */ - filter?: string; + timeWindowSize: string; } /** - * @interface - * An interface representing TasksListByHomeRegionOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase + * Number of file uploads is not in allowed range. */ -export interface TasksListByHomeRegionOptionalParams extends msRest.RequestOptionsBase { +export interface FileUploadsNotInAllowedRange { /** - * @member {string} [filter] OData filter. Optional. + * Polymorphic Discriminator */ - filter?: string; -} - -/** - * @interface - * An interface representing TasksListByResourceGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface TasksListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { + ruleType: "FileUploadsNotInAllowedRange"; /** - * @member {string} [filter] OData filter. Optional. + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - filter?: string; -} - -/** - * @interface - * An interface representing AlertsListOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface AlertsListOptionalParams extends msRest.RequestOptionsBase { + readonly displayName?: string; /** - * @member {string} [filter] OData filter. Optional. + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - filter?: string; + readonly description?: string; /** - * @member {string} [select] OData select. Optional. + * Status of the custom alert. */ - select?: string; + isEnabled: boolean; /** - * @member {string} [expand] OData expand. Optional. + * The minimum threshold. */ - expand?: string; + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing AlertsListByResourceGroupOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase + * Number of device queue purges is not in allowed range. */ -export interface AlertsListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { +export interface QueuePurgesNotInAllowedRange { /** - * @member {string} [filter] OData filter. Optional. + * Polymorphic Discriminator */ - filter?: string; + ruleType: "QueuePurgesNotInAllowedRange"; /** - * @member {string} [select] OData select. Optional. + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - select?: string; + readonly displayName?: string; /** - * @member {string} [expand] OData expand. Optional. + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - expand?: string; -} - -/** - * @interface - * An interface representing AlertsListSubscriptionLevelAlertsByRegionOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase - */ -export interface AlertsListSubscriptionLevelAlertsByRegionOptionalParams extends msRest.RequestOptionsBase { + readonly description?: string; /** - * @member {string} [filter] OData filter. Optional. + * Status of the custom alert. */ - filter?: string; + isEnabled: boolean; /** - * @member {string} [select] OData select. Optional. + * The minimum threshold. */ - select?: string; + minThreshold: number; /** - * @member {string} [expand] OData expand. Optional. + * The maximum threshold. */ - expand?: string; + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing AlertsListResourceGroupLevelAlertsByRegionOptionalParams. - * Optional Parameters. - * - * @extends RequestOptionsBase + * Number of twin updates is not in allowed range. */ -export interface AlertsListResourceGroupLevelAlertsByRegionOptionalParams extends msRest.RequestOptionsBase { +export interface TwinUpdatesNotInAllowedRange { /** - * @member {string} [filter] OData filter. Optional. + * Polymorphic Discriminator */ - filter?: string; + ruleType: "TwinUpdatesNotInAllowedRange"; /** - * @member {string} [select] OData select. Optional. + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - select?: string; + readonly displayName?: string; /** - * @member {string} [expand] OData expand. Optional. + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - expand?: string; + readonly description?: string; + /** + * Status of the custom alert. + */ + isEnabled: boolean; + /** + * The minimum threshold. + */ + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } /** - * @interface - * An interface representing SecurityCenterOptions. - * @extends AzureServiceClientOptions + * Number of unauthorized operations is not in allowed range. */ -export interface SecurityCenterOptions extends AzureServiceClientOptions { +export interface UnauthorizedOperationsNotInAllowedRange { /** - * @member {string} [baseUri] + * Polymorphic Discriminator */ - baseUri?: string; + ruleType: "UnauthorizedOperationsNotInAllowedRange"; + /** + * The display name of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly displayName?: string; + /** + * The description of the custom alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * Status of the custom alert. + */ + isEnabled: boolean; + /** + * The minimum threshold. + */ + minThreshold: number; + /** + * The maximum threshold. + */ + maxThreshold: number; + /** + * The time window size in iso8601 format. + */ + timeWindowSize: string; } - /** - * @interface - * An interface representing the PricingList. - * List of pricing configurations response - * - * @extends Array + * A container holding only the Tags for a resource, allowing the user to update the tags. */ -export interface PricingList extends Array { +export interface TagsResource { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource tags */ - readonly nextLink?: string; + tags?: { [propertyName: string]: string }; } /** - * @interface - * An interface representing the SecurityContactList. - * List of security contacts response - * - * @extends Array + * Properties of the IoT Security solution's user defined resources. */ -export interface SecurityContactList extends Array { +export interface UserDefinedResourcesProperties { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Azure Resource Graph query which represents the security solution's user defined resources. + * Required to start with "where type != "Microsoft.Devices/IotHubs"" */ - readonly nextLink?: string; + query: string; + /** + * List of Azure subscription ids on which the user defined resources query should be executed. + */ + querySubscriptions: string[]; } /** - * @interface - * An interface representing the WorkspaceSettingList. - * List of workspace settings response - * - * @extends Array + * The type of IoT Security recommendation. */ -export interface WorkspaceSettingList extends Array { +export interface RecommendationConfigurationProperties { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * The type of IoT Security recommendation. Possible values include: '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', + * 'IoT_VulnerableTLSCipherSuite' */ - readonly nextLink?: string; + recommendationType: RecommendationType; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Recommendation status. When the recommendation status is disabled recommendations are not + * generated. Possible values include: 'Disabled', 'Enabled'. Default value: 'Enabled'. + */ + status: RecommendationConfigStatus; } /** - * @interface - * An interface representing the AutoProvisioningSettingList. - * List of all the auto provisioning settings response - * - * @extends Array + * IoT Security solution configuration and resource information. */ -export interface AutoProvisioningSettingList extends Array { +export interface IoTSecuritySolutionModel { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; -} + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Resource tags + */ + tags?: { [propertyName: string]: string }; + /** + * The resource location. + */ + location?: string; + /** + * Workspace resource ID + */ + workspace: string; + /** + * Resource display name. + */ + displayName: string; + /** + * Status of the IoT Security solution. Possible values include: 'Enabled', 'Disabled'. Default + * value: 'Enabled'. + */ + status?: SecuritySolutionStatus; + /** + * List of additional options for exporting to workspace data. + */ + exportProperty?: ExportData[]; + /** + * Disabled data sources. Disabling these data sources compromises the system. + */ + disabledDataSources?: DataSource[]; + /** + * IoT Hub resource IDs + */ + iotHubs: string[]; + userDefinedResources?: UserDefinedResourcesProperties; + /** + * List of resources that were automatically discovered as relevant to the security solution. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly autoDiscoveredResources?: string[]; + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + /** + * Unmasked IP address logging status. Possible values include: 'Disabled', 'Enabled'. Default + * value: 'Disabled'. + */ + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; +} /** - * @interface - * An interface representing the ComplianceList. - * List of Compliance objects response - * - * @extends Array + * An interface representing UpdateIotSecuritySolutionData. */ -export interface ComplianceList extends Array { - /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** - */ - readonly nextLink?: string; +export interface UpdateIotSecuritySolutionData extends TagsResource { + userDefinedResources?: UserDefinedResourcesProperties; + recommendationsConfiguration?: RecommendationConfigurationProperties[]; } /** - * @interface - * An interface representing the SettingsList. - * Subscription settings list. - * - * @extends Array + * IoT Security solution analytics severity metrics. */ -export interface SettingsList extends Array { +export interface IoTSeverityMetrics { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Count of high severity alerts/recommendations. */ - readonly nextLink?: string; + high?: number; + /** + * Count of medium severity alerts/recommendations. + */ + medium?: number; + /** + * Count of low severity alerts/recommendations. + */ + low?: number; } /** - * @interface - * An interface representing the InformationProtectionPolicyList. - * Information protection policies response. - * - * @extends Array + * An interface representing IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem. */ -export interface InformationProtectionPolicyList extends Array { +export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Aggregation of IoT Security solution device alert metrics by date. */ - readonly nextLink?: string; + date?: Date; + /** + * Device alert count by severity. + */ + devicesMetrics?: IoTSeverityMetrics; } /** - * @interface - * An interface representing the OperationList. - * List of possible operations for Microsoft.Security resource provider - * - * @extends Array + * Statistical information about the number of alerts per device during last set number of days. */ -export interface OperationList extends Array { +export interface IoTSecurityAlertedDevice { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Device identifier. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly deviceId?: string; + /** + * Number of alerts raised for this device. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly alertsCount?: number; } /** - * @interface - * An interface representing the AscLocationList. - * List of locations where ASC saves your data - * - * @extends Array + * Statistical information about the number of alerts per alert type during last set number of days */ -export interface AscLocationList extends Array { +export interface IoTSecurityDeviceAlert { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Display name of the alert + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly alertDisplayName?: string; + /** + * Assessed Alert severity. Possible values include: 'Informational', 'Low', 'Medium', 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly reportedSeverity?: ReportedSeverity; + /** + * Number of alerts raised for this alert type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly alertsCount?: number; } /** - * @interface - * An interface representing the SecurityTaskList. - * List of security task recommendations - * - * @extends Array + * Statistical information about the number of recommendations per device, per recommendation type. */ -export interface SecurityTaskList extends Array { +export interface IoTSecurityDeviceRecommendation { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Display name of the recommendation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly recommendationDisplayName?: string; + /** + * Assessed recommendation severity. Possible values include: 'Informational', 'Low', 'Medium', + * 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly reportedSeverity?: ReportedSeverity; + /** + * Number of devices with this recommendation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly devicesCount?: number; } /** - * @interface - * An interface representing the AlertList. - * List of security alerts - * - * @extends Array + * Security analytics of your IoT Security solution */ -export interface AlertList extends Array { +export interface IoTSecuritySolutionAnalyticsModel extends Resource { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Security analytics of your IoT Security solution. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly metrics?: IoTSeverityMetrics; + /** + * Number of unhealthy devices within your IoT Security solution. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unhealthyDeviceCount?: number; + /** + * List of device metrics by the aggregation date. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[]; + /** + * List of the 3 devices with the most alerts. + */ + topAlertedDevices?: IoTSecurityAlertedDevice[]; + /** + * List of the 3 most prevalent device alerts. + */ + mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[]; + /** + * List of the 3 most prevalent device recommendations. + */ + mostPrevalentDeviceRecommendations?: IoTSecurityDeviceRecommendation[]; } /** - * @interface - * An interface representing the DiscoveredSecuritySolutionList. - * @extends Array + * List of Security analytics of your IoT Security solution */ -export interface DiscoveredSecuritySolutionList extends Array { +export interface IoTSecuritySolutionAnalyticsModelList { + /** + * List of Security analytics of your IoT Security solution + */ + value: IoTSecuritySolutionAnalyticsModel[]; /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * When there is too much alert data for one page, use this URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ readonly nextLink?: string; } /** - * @interface - * An interface representing the JitNetworkAccessPoliciesList. - * @extends Array + * An interface representing IoTSecurityAggregatedAlertPropertiesTopDevicesListItem. */ -export interface JitNetworkAccessPoliciesList extends Array { +export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Name of the device. + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly deviceId?: string; + /** + * Number of alerts raised for this device. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly alertsCount?: number; + /** + * Most recent time this alert was raised for this device, on this day. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly lastOccurrence?: string; } /** - * @interface - * An interface representing the ExternalSecuritySolutionList. - * @extends Array + * Security Solution Aggregated Alert information */ -export interface ExternalSecuritySolutionList extends Array { +export interface IoTSecurityAggregatedAlert { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Resource tags + */ + tags?: { [propertyName: string]: string }; + /** + * Name of the alert type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly alertType?: string; + /** + * Display name of the alert type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly alertDisplayName?: string; + /** + * Date of detection. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly aggregatedDateUtc?: Date; + /** + * Name of the organization that raised the alert. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly vendorName?: string; + /** + * Assessed alert severity. Possible values include: 'Informational', 'Low', 'Medium', 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly reportedSeverity?: ReportedSeverity; + /** + * Recommended steps for remediation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly remediationSteps?: string; + /** + * Description of the suspected vulnerability and meaning. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * Number of alerts occurrences within the aggregated time window. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly count?: number; + /** + * Azure resource ID of the resource that received the alerts. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly effectedResourceType?: string; + /** + * The type of the alerted resource (Azure, Non-Azure). + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly systemSource?: string; + /** + * IoT Security solution alert response. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly actionTaken?: string; + /** + * Log analytics query for getting the list of affected devices/alerts. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly logAnalyticsQuery?: string; + /** + * 10 devices with the highest number of occurrences of this alert type, on this day. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; } /** - * @interface - * An interface representing the TopologyList. - * @extends Array + * IoT Security solution recommendation information. */ -export interface TopologyList extends Array { +export interface IoTSecurityAggregatedRecommendation { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Resource tags + */ + tags?: { [propertyName: string]: string }; + /** + * Name of the recommendation. + */ + recommendationName?: string; + /** + * Display name of the recommendation type. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly recommendationDisplayName?: string; + /** + * Description of the suspected vulnerability and meaning. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * Recommendation-type GUID. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly recommendationTypeId?: string; + /** + * Name of the organization that made the recommendation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly detectedBy?: string; + /** + * Recommended steps for remediation + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly remediationSteps?: string; + /** + * Assessed recommendation severity. Possible values include: 'Informational', 'Low', 'Medium', + * 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly reportedSeverity?: ReportedSeverity; + /** + * Number of healthy devices within the IoT Security solution. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly healthyDevices?: number; + /** + * Number of unhealthy devices within the IoT Security solution. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unhealthyDeviceCount?: number; + /** + * Log analytics query for getting the list of affected devices/alerts. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly logAnalyticsQuery?: string; } /** - * @interface - * An interface representing the AllowedConnectionsList. - * List of all possible traffic between Azure resources - * - * @extends Array + * An interface representing DiscoveredSecuritySolution. */ -export interface AllowedConnectionsList extends Array { +export interface DiscoveredSecuritySolution { /** - * @member {string} [nextLink] The URI to fetch the next page. - * **NOTE: This property will not be serialized. It can only be populated by - * the server.** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** */ - readonly nextLink?: string; + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * The security family of the discovered solution. Possible values include: 'Waf', 'Ngfw', + * 'SaasWaf', 'Va' + */ + securityFamily: SecurityFamily; + /** + * The security solutions' image offer + */ + offer: string; + /** + * The security solutions' image publisher + */ + publisher: string; + /** + * The security solutions' image sku + */ + sku: string; } /** - * Defines values for AlertNotifications. - * Possible values include: 'On', 'Off' - * @readonly - * @enum {string} + * Contains the possible cases for ExternalSecuritySolution. */ -export type AlertNotifications = 'On' | 'Off'; +export type ExternalSecuritySolutionUnion = ExternalSecuritySolution | CefExternalSecuritySolution | AtaExternalSecuritySolution | AadExternalSecuritySolution; /** - * Defines values for AlertsToAdmins. - * Possible values include: 'On', 'Off' - * @readonly - * @enum {string} + * Represents a security solution external to Azure Security Center which sends information to an + * OMS workspace and whose data is displayed by Azure Security Center. */ -export type AlertsToAdmins = 'On' | 'Off'; +export interface ExternalSecuritySolution { + /** + * Polymorphic Discriminator + */ + kind: "ExternalSecuritySolution"; + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; +} /** - * Defines values for PricingTier. - * Possible values include: 'Free', 'Standard' - * @readonly - * @enum {string} + * The solution properties (correspond to the solution kind) */ -export type PricingTier = 'Free' | 'Standard'; +export interface ExternalSecuritySolutionProperties { + deviceVendor?: string; + deviceType?: string; + workspace?: ConnectedWorkspace; + /** + * Describes unknown properties. The value of an unknown property can be of "any" type. + */ + [property: string]: any; +} /** - * Defines values for AutoProvision. - * Possible values include: 'On', 'Off' - * @readonly - * @enum {string} + * An interface representing CefSolutionProperties. + * @summary The external security solution properties for CEF solutions */ -export type AutoProvision = 'On' | 'Off'; +export interface CefSolutionProperties extends ExternalSecuritySolutionProperties { + hostname?: string; + agent?: string; + lastEventReceived?: string; +} /** - * Defines values for SettingKind. - * Possible values include: 'DataExportSetting' - * @readonly - * @enum {string} + * Represents a security solution which sends CEF logs to an OMS workspace */ -export type SettingKind = 'DataExportSetting'; +export interface CefExternalSecuritySolution { + /** + * Polymorphic Discriminator + */ + kind: "CEF"; + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + properties?: CefSolutionProperties; +} /** - * Defines values for SecurityFamily. - * Possible values include: 'Waf', 'Ngfw', 'SaasWaf', 'Va' - * @readonly - * @enum {string} + * An interface representing AtaSolutionProperties. + * @summary The external security solution properties for ATA solutions */ -export type SecurityFamily = 'Waf' | 'Ngfw' | 'SaasWaf' | 'Va'; +export interface AtaSolutionProperties extends ExternalSecuritySolutionProperties { + lastEventReceived?: string; +} /** - * Defines values for Protocol. - * Possible values include: 'TCP', 'UDP', 'All' - * @readonly - * @enum {string} + * Represents an ATA security solution which sends logs to an OMS workspace */ -export type Protocol = 'TCP' | 'UDP' | '*'; +export interface AtaExternalSecuritySolution { + /** + * Polymorphic Discriminator + */ + kind: "ATA"; + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + properties?: AtaSolutionProperties; +} /** - * Defines values for Status. - * Possible values include: 'Revoked', 'Initiated' - * @readonly - * @enum {string} + * An interface representing ConnectedWorkspace. + * @summary Represents an OMS workspace to which the solution is connected */ -export type Status = 'Revoked' | 'Initiated'; +export interface ConnectedWorkspace { + /** + * Azure resource ID of the connected OMS workspace + */ + id?: string; +} /** - * Defines values for StatusReason. - * Possible values include: 'Expired', 'UserRequested', 'NewerRequestInitiated' - * @readonly - * @enum {string} + * An interface representing AadSolutionProperties. + * @summary The external security solution properties for AAD solutions */ -export type StatusReason = 'Expired' | 'UserRequested' | 'NewerRequestInitiated'; +export interface AadSolutionProperties { + deviceVendor?: string; + deviceType?: string; + workspace?: ConnectedWorkspace; + /** + * The connectivity state of the external AAD solution . Possible values include: 'Discovered', + * 'NotLicensed', 'Connected' + */ + connectivityState?: AadConnectivityState; +} /** - * Defines values for AadConnectivityState. - * Possible values include: 'Discovered', 'NotLicensed', 'Connected' - * @readonly - * @enum {string} + * Represents an AAD identity protection solution which sends logs to an OMS workspace. */ -export type AadConnectivityState = 'Discovered' | 'NotLicensed' | 'Connected'; +export interface AadExternalSecuritySolution { + /** + * Polymorphic Discriminator + */ + kind: "AAD"; + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + properties?: AadSolutionProperties; +} /** - * Defines values for ExternalSecuritySolutionKind. - * Possible values include: 'CEF', 'ATA', 'AAD' - * @readonly - * @enum {string} + * Describes an Azure resource with kind */ -export type ExternalSecuritySolutionKind = 'CEF' | 'ATA' | 'AAD'; +export interface ExternalSecuritySolutionKind1 { + /** + * The kind of the external solution. Possible values include: 'CEF', 'ATA', 'AAD' + */ + kind?: ExternalSecuritySolutionKind; +} /** - * Defines values for ConnectionType. - * Possible values include: 'Internal', 'External' - * @readonly - * @enum {string} + * Describes an Azure resource with kind */ -export type ConnectionType = 'Internal' | 'External'; +export interface AadConnectivityState1 { + /** + * The connectivity state of the external AAD solution . Possible values include: 'Discovered', + * 'NotLicensed', 'Connected' + */ + connectivityState?: AadConnectivityState; +} /** - * Defines values for SettingName. - * Possible values include: 'MCAS', 'WDATP' - * @readonly - * @enum {string} + * Security operation display */ -export type SettingName = 'MCAS' | 'WDATP'; +export interface OperationDisplay { + /** + * The resource provider for the operation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly provider?: string; + /** + * The display name of the resource the operation applies to. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resource?: string; + /** + * The display name of the security operation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly operation?: string; + /** + * The description of the operation. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; +} /** - * Defines values for SettingName1. - * Possible values include: 'MCAS', 'WDATP' - * @readonly - * @enum {string} + * Possible operation in the REST API of Microsoft.Security */ -export type SettingName1 = 'MCAS' | 'WDATP'; +export interface Operation { + /** + * Name of the operation + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Where the operation is originated + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly origin?: string; + display?: OperationDisplay; +} /** - * Defines values for InformationProtectionPolicyName. - * Possible values include: 'effective', 'custom' - * @readonly - * @enum {string} + * Changing set of properties, depending on the task type that is derived from the name field */ -export type InformationProtectionPolicyName = 'effective' | 'custom'; +export interface SecurityTaskParameters { + /** + * Name of the task type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Describes unknown properties. The value of an unknown property can be of "any" type. + */ + [property: string]: any; +} /** - * Defines values for InformationProtectionPolicyName1. - * Possible values include: 'effective', 'custom' - * @readonly - * @enum {string} + * Security task that we recommend to do in order to strengthen security */ -export type InformationProtectionPolicyName1 = 'effective' | 'custom'; +export interface SecurityTask extends Resource { + /** + * State of the task (Active, Resolved etc.) + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly state?: string; + /** + * The time this task was discovered in UTC + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly creationTimeUtc?: Date; + securityTaskParameters?: SecurityTaskParameters; + /** + * The time this task's details were last changed in UTC + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly lastStateChangeTimeUtc?: Date; + /** + * Additional data on the state of the task + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly subState?: string; +} /** - * Defines values for TaskUpdateActionType. - * Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', 'Close' - * @readonly - * @enum {string} + * Auto provisioning setting */ -export type TaskUpdateActionType = 'Activate' | 'Dismiss' | 'Start' | 'Resolve' | 'Close'; +export interface AutoProvisioningSetting extends Resource { + /** + * Describes what kind of security agent provisioning action to take. Possible values include: + * 'On', 'Off' + */ + autoProvision: AutoProvision; +} /** - * Defines values for TaskUpdateActionType1. - * Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', 'Close' - * @readonly - * @enum {string} + * A segment of a compliance assessment. */ -export type TaskUpdateActionType1 = 'Activate' | 'Dismiss' | 'Start' | 'Resolve' | 'Close'; +export interface ComplianceSegment { + /** + * The segment type, e.g. compliant, non-compliance, insufficient coverage, N/A, etc. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly segmentType?: string; + /** + * The size (%) of the segment. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly percentage?: number; +} /** - * Defines values for AlertUpdateActionType. - * Possible values include: 'Dismiss', 'Reactivate' - * @readonly - * @enum {string} + * Compliance of a scope */ -export type AlertUpdateActionType = 'Dismiss' | 'Reactivate'; - -/** - * Defines values for AlertUpdateActionType1. - * Possible values include: 'Dismiss', 'Reactivate' - * @readonly - * @enum {string} +export interface Compliance extends Resource { + /** + * The timestamp when the Compliance calculation was conducted. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly assessmentTimestampUtcDate?: Date; + /** + * The resource count of the given subscription for which the Compliance calculation was + * conducted (needed for Management Group Compliance calculation). + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resourceCount?: number; + /** + * An array of segment, which is the actually the compliance assessment. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly assessmentResult?: ComplianceSegment[]; +} + +/** + * The sensitivity label. + */ +export interface SensitivityLabel { + /** + * The name of the sensitivity label. + */ + displayName?: string; + /** + * The description of the sensitivity label. + */ + description?: string; + /** + * The rank of the sensitivity label. Possible values include: 'None', 'Low', 'Medium', 'High', + * 'Critical' + */ + rank?: Rank; + /** + * The order of the sensitivity label. + */ + order?: number; + /** + * Indicates whether the label is enabled or not. + */ + enabled?: boolean; +} + +/** + * The information type keyword. + */ +export interface InformationProtectionKeyword { + /** + * The keyword pattern. + */ + pattern?: string; + /** + * Indicates whether the keyword is custom or not. + */ + custom?: boolean; + /** + * Indicates whether the keyword can be applied on numeric types or not. + */ + canBeNumeric?: boolean; + /** + * Indicates whether the keyword is excluded or not. + */ + excluded?: boolean; +} + +/** + * The information type. + */ +export interface InformationType { + /** + * The name of the information type. + */ + displayName?: string; + /** + * The description of the information type. + */ + description?: string; + /** + * The order of the information type. + */ + order?: number; + /** + * The recommended label id to be associated with this information type. + */ + recommendedLabelId?: string; + /** + * Indicates whether the information type is enabled or not. + */ + enabled?: boolean; + /** + * Indicates whether the information type is custom or not. + */ + custom?: boolean; + /** + * The information type keywords. + */ + keywords?: InformationProtectionKeyword[]; +} + +/** + * Information protection policy. + */ +export interface InformationProtectionPolicy extends Resource { + /** + * Describes the last UTC time the policy was modified. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly lastModifiedUtc?: Date; + /** + * Describes the version of the policy. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly version?: string; + /** + * Dictionary of sensitivity labels. + */ + labels?: { [propertyName: string]: SensitivityLabel }; + /** + * The sensitivity information types. + */ + informationTypes?: { [propertyName: string]: InformationType }; +} + +/** + * Contact details for security issues + */ +export interface SecurityContact extends Resource { + /** + * The email of this security contact + */ + email: string; + /** + * The phone number of this security contact + */ + phone?: string; + /** + * Whether to send security alerts notifications to the security contact. Possible values + * include: 'On', 'Off' + */ + alertNotifications: AlertNotifications; + /** + * Whether to send security alerts notifications to subscription admins. Possible values include: + * 'On', 'Off' + */ + alertsToAdmins: AlertsToAdmins; +} + +/** + * Configures where to store the OMS agent data for workspaces under a scope + */ +export interface WorkspaceSetting extends Resource { + /** + * The full Azure ID of the workspace to save the data in + */ + workspaceId: string; + /** + * All the VMs in this scope will send their security data to the mentioned workspace unless + * overridden by a setting with more specific scope + */ + scope: string; +} + +/** + * Regulatory compliance standard details and state + */ +export interface RegulatoryComplianceStandard extends Resource { + /** + * Aggregative state based on the standard's supported controls states. Possible values include: + * 'Passed', 'Failed', 'Skipped', 'Unsupported' + */ + state?: State; + /** + * The number of supported regulatory compliance controls of the given standard with a passed + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly passedControls?: number; + /** + * The number of supported regulatory compliance controls of the given standard with a failed + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly failedControls?: number; + /** + * The number of supported regulatory compliance controls of the given standard with a skipped + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly skippedControls?: number; + /** + * The number of regulatory compliance controls of the given standard which are unsupported by + * automated assessments + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unsupportedControls?: number; +} + +/** + * Regulatory compliance control details and state + */ +export interface RegulatoryComplianceControl extends Resource { + /** + * The description of the regulatory compliance control + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * Aggregative state based on the control's supported assessments states. Possible values + * include: 'Passed', 'Failed', 'Skipped', 'Unsupported' + */ + state?: State; + /** + * The number of supported regulatory compliance assessments of the given control with a passed + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly passedAssessments?: number; + /** + * The number of supported regulatory compliance assessments of the given control with a failed + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly failedAssessments?: number; + /** + * The number of supported regulatory compliance assessments of the given control with a skipped + * state + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly skippedAssessments?: number; +} + +/** + * Regulatory compliance assessment details and state + */ +export interface RegulatoryComplianceAssessment extends Resource { + /** + * The description of the regulatory compliance assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * The expected type of assessment contained in the AssessmentDetailsLink + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly assessmentType?: string; + /** + * Link to more detailed assessment results data. The response type will be according to the + * assessmentType field + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly assessmentDetailsLink?: string; + /** + * Aggregative state based on the assessment's scanned resources states. Possible values include: + * 'Passed', 'Failed', 'Skipped', 'Unsupported' + */ + state?: State; + /** + * The given assessment's related resources count with passed state. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly passedResources?: number; + /** + * The given assessment's related resources count with failed state. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly failedResources?: number; + /** + * The given assessment's related resources count with skipped state. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly skippedResources?: number; + /** + * The given assessment's related resources count with unsupported state. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly unsupportedResources?: number; +} + +/** + * Describes the server vulnerability assessment details on a resource + */ +export interface ServerVulnerabilityAssessment extends Resource { + /** + * The provisioningState of the vulnerability assessment capability on the VM. Possible values + * include: 'Succeeded', 'Failed', 'Canceled', 'Provisioning', 'Deprovisioning' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly provisioningState?: ProvisioningState; +} + +/** + * List of server vulnerability assessments + */ +export interface ServerVulnerabilityAssessmentsList { + value?: ServerVulnerabilityAssessment[]; +} + +/** + * Status of the sub-assessment + */ +export interface SubAssessmentStatus { + /** + * Programmatic code for the status of the assessment. Possible values include: 'Healthy', + * 'Unhealthy', 'NotApplicable' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly code?: SubAssessmentStatusCode; + /** + * Programmatic code for the cause of the assessment status + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly cause?: string; + /** + * Human readable description of the assessment status + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * The sub-assessment severity level. Possible values include: 'Low', 'Medium', 'High' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly severity?: Severity; +} + +/** + * Contains the possible cases for ResourceDetails. + */ +export type ResourceDetailsUnion = ResourceDetails | OnPremiseResourceDetails | AzureResourceDetails; + +/** + * Details of the resource that was assessed + */ +export interface ResourceDetails { + /** + * Polymorphic Discriminator + */ + source: "ResourceDetails"; +} + +/** + * Contains the possible cases for AdditionalData. + */ +export type AdditionalDataUnion = AdditionalData | SqlServerVulnerabilityProperties | ContainerRegistryVulnerabilityProperties | ServerVulnerabilityProperties; + +/** + * Details of the sub-assessment + */ +export interface AdditionalData { + /** + * Polymorphic Discriminator + */ + assessedResourceType: "AdditionalData"; +} + +/** + * Security sub-assessment on a resource + */ +export interface SecuritySubAssessment extends Resource { + /** + * Vulnerability ID + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly securitySubAssessmentId?: string; + /** + * User friendly display name of the sub-assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly displayName?: string; + status?: SubAssessmentStatus; + /** + * Information on how to remediate this sub-assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly remediation?: string; + /** + * Description of the impact of this sub-assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly impact?: string; + /** + * Category of the sub-assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly category?: string; + /** + * Human readable description of the assessment status + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly description?: string; + /** + * The date and time the sub-assessment was generated + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly timeGenerated?: Date; + resourceDetails?: ResourceDetailsUnion; + additionalData?: AdditionalDataUnion; +} + +/** + * Details of the resource that was assessed + */ +export interface SqlServerVulnerabilityProperties { + /** + * Polymorphic Discriminator + */ + assessedResourceType: "SqlServerVulnerability"; + /** + * The resource type the sub assessment refers to in its resource details + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * The T-SQL query that runs on your SQL database to perform the particular check + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly query?: string; +} + +/** + * CVSS details + */ +export interface CVSS { + /** + * CVSS base + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly base?: number; +} + +/** + * CVE details + */ +export interface CVE { + /** + * CVE title + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly title?: string; + /** + * Link url + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly link?: string; +} + +/** + * Vendor reference + */ +export interface VendorReference { + /** + * Link title + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly title?: string; + /** + * Link url + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly link?: string; +} + +/** + * Additional context fields for container registry Vulnerability assessment + */ +export interface ContainerRegistryVulnerabilityProperties { + /** + * Polymorphic Discriminator + */ + assessedResourceType: "ContainerRegistryVulnerability"; + /** + * Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information Gathered, + * Vulnerability + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Dictionary from cvss version to cvss details object + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly cvss?: { [propertyName: string]: CVSS }; + /** + * Indicates whether a patch is available or not + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly patchable?: boolean; + /** + * List of CVEs + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly cve?: CVE[]; + /** + * Published time + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly publishedTime?: Date; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly vendorReferences?: VendorReference[]; + /** + * Name of the repository which the vulnerable image belongs to + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly repositoryName?: string; + /** + * Digest of the vulnerable image + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly imageDigest?: string; +} + +/** + * Additional context fields for server vulnerability assessment + */ +export interface ServerVulnerabilityProperties { + /** + * Polymorphic Discriminator + */ + assessedResourceType: "ServerVulnerabilityAssessment"; + /** + * Vulnerability Type. e.g: Vulnerability, Potential Vulnerability, Information Gathered + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Dictionary from cvss version to cvss details object + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly cvss?: { [propertyName: string]: CVSS }; + /** + * Indicates whether a patch is available or not + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly patchable?: boolean; + /** + * List of CVEs + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly cve?: CVE[]; + /** + * Threat name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly threat?: string; + /** + * Published time + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly publishedTime?: Date; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly vendorReferences?: VendorReference[]; +} + +/** + * Details of the On Premise resource that was assessed + */ +export interface OnPremiseResourceDetails { + /** + * Polymorphic Discriminator + */ + source: "OnPremise"; + /** + * Azure resource Id of the workspace the machine is attached to + */ + workspaceId: string; + /** + * The unique Id of the machine + */ + vmuuid: string; + /** + * The oms agent Id installed on the machine + */ + sourceComputerId: string; + /** + * The name of the machine + */ + machineName: string; +} + +/** + * Details of the Azure resource that was assessed + */ +export interface AzureResourceDetails { + /** + * Polymorphic Discriminator + */ + source: "Azure"; + /** + * Azure resource Id of the assessed resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; +} + +/** + * A single automation scope. + */ +export interface AutomationScope { + /** + * The resources scope description. + */ + description?: string; + /** + * 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). + */ + scopePath?: string; +} + +/** + * 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. + */ +export interface AutomationTriggeringRule { + /** + * The JPath of the entity model property that should be checked. + */ + propertyJPath?: string; + /** + * The data type of the compared operands (string, integer, floating point number or a boolean + * [true/false]]. Possible values include: 'String', 'Integer', 'Number', 'Boolean' + */ + propertyType?: PropertyType; + /** + * The expected value. + */ + expectedValue?: string; + /** + * A valid comparer operator to use. A case-insensitive comparison will be applied for String + * PropertyType. Possible values include: 'Equals', 'GreaterThan', 'GreaterThanOrEqualTo', + * 'LesserThan', 'LesserThanOrEqualTo', 'NotEquals', 'Contains', 'StartsWith', 'EndsWith' + */ + operator?: Operator; +} + +/** + * 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. + */ +export interface AutomationRuleSet { + rules?: AutomationTriggeringRule[]; +} + +/** + * 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. + */ +export interface AutomationSource { + /** + * A valid event source type. Possible values include: 'Assessments', 'Alerts' + */ + eventSource?: EventSource; + /** + * A set of rules which evaluate upon event interception. A logical disjunction is applied + * between defined rule sets (logical 'or'). + */ + ruleSets?: AutomationRuleSet[]; +} + +/** + * Contains the possible cases for AutomationAction. + */ +export type AutomationActionUnion = AutomationAction | AutomationActionLogicApp | AutomationActionEventHub | AutomationActionWorkspace; + +/** + * The action that should be triggered. + */ +export interface AutomationAction { + /** + * Polymorphic Discriminator + */ + actionType: "AutomationAction"; +} + +/** + * The security automation resource. + */ +export interface Automation extends TrackedResource { + /** + * The security automation description. + */ + description?: string; + /** + * Indicates whether the security automation is enabled. + */ + isEnabled?: boolean; + /** + * 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. + */ + scopes?: AutomationScope[]; + /** + * A collection of the source event types which evaluate the security automation set of rules. + */ + sources?: AutomationSource[]; + /** + * A collection of the actions which are triggered if all the configured rules evaluations, + * within at least one rule set, are true. + */ + actions?: AutomationActionUnion[]; +} + +/** + * The logic app action that should be triggered. To learn more about Security Center's Workflow + * Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore + */ +export interface AutomationActionLogicApp { + /** + * Polymorphic Discriminator + */ + actionType: "LogicApp"; + /** + * The triggered Logic App Azure Resource ID. This can also reside on other subscriptions, given + * that you have permissions to trigger the Logic App + */ + logicAppResourceId?: string; + /** + * The Logic App trigger URI endpoint (it will not be included in any response). + */ + uri?: string; +} + +/** + * The target Event Hub to which event data will be exported. To learn more about Security Center + * continuous export capabilities, visit https://aka.ms/ASCExportLearnMore + */ +export interface AutomationActionEventHub { + /** + * Polymorphic Discriminator + */ + actionType: "EventHub"; + /** + * The target Event Hub Azure Resource ID. + */ + eventHubResourceId?: string; + /** + * The target Event Hub SAS policy name. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly sasPolicyName?: string; + /** + * The target Event Hub connection string (it will not be included in any response). + */ + connectionString?: string; +} + +/** + * 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 Security Center continuous + * export capabilities, visit https://aka.ms/ASCExportLearnMore + */ +export interface AutomationActionWorkspace { + /** + * Polymorphic Discriminator + */ + actionType: "Workspace"; + /** + * The fully qualified Log Analytics Workspace Azure Resource ID. + */ + workspaceResourceId?: string; +} + +/** + * The security automation model state property bag. + */ +export interface AutomationValidationStatus { + /** + * Indicates whether the model is valid or not. + */ + isValid?: boolean; + /** + * The validation message. + */ + message?: string; +} + +/** + * Describes the partner that created the assessment + */ +export interface SecurityAssessmentMetadataPartnerData { + /** + * Name of the company of the partner + */ + partnerName: string; + /** + * Name of the product of the partner that created the assessment + */ + productName?: string; + /** + * Secret to authenticate the partner and verify it created the assessment - write only + */ + secret: string; +} + +/** + * Describes properties of an assessment metadata. + */ +export interface SecurityAssessmentMetadataProperties { + /** + * User friendly display name of the assessment + */ + displayName: string; + /** + * Azure resource ID of the policy definition that turns this assessment calculation on + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly policyDefinitionId?: string; + /** + * Human readable description of the assessment + */ + description?: string; + /** + * Human readable description of what you should do to mitigate this security issue + */ + remediationDescription?: string; + category?: Category[]; + /** + * The severity level of the assessment. Possible values include: 'Low', 'Medium', 'High' + */ + severity: Severity; + /** + * The user impact of the assessment. Possible values include: 'Low', 'Moderate', 'High' + */ + userImpact?: UserImpact; + /** + * The implementation effort required to remediate this assessment. Possible values include: + * 'Low', 'Moderate', 'High' + */ + implementationEffort?: ImplementationEffort; + threats?: Threats[]; + /** + * True if this assessment is in preview release status + */ + preview?: boolean; + /** + * BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment + * based on custom Azure Policy definition. Possible values include: 'BuiltIn', 'CustomPolicy', + * 'CustomerManaged', 'VerifiedPartner' + */ + assessmentType: AssessmentType; + partnerData?: SecurityAssessmentMetadataPartnerData; +} + +/** + * Security assessment metadata + */ +export interface SecurityAssessmentMetadata extends Resource { + /** + * User friendly display name of the assessment + */ + displayName: string; + /** + * Azure resource ID of the policy definition that turns this assessment calculation on + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly policyDefinitionId?: string; + /** + * Human readable description of the assessment + */ + description?: string; + /** + * Human readable description of what you should do to mitigate this security issue + */ + remediationDescription?: string; + category?: Category[]; + /** + * The severity level of the assessment. Possible values include: 'Low', 'Medium', 'High' + */ + severity: Severity; + /** + * The user impact of the assessment. Possible values include: 'Low', 'Moderate', 'High' + */ + userImpact?: UserImpact; + /** + * The implementation effort required to remediate this assessment. Possible values include: + * 'Low', 'Moderate', 'High' + */ + implementationEffort?: ImplementationEffort; + threats?: Threats[]; + /** + * True if this assessment is in preview release status + */ + preview?: boolean; + /** + * BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment + * based on custom Azure Policy definition. Possible values include: 'BuiltIn', 'CustomPolicy', + * 'CustomerManaged', 'VerifiedPartner' + */ + assessmentType: AssessmentType; + partnerData?: SecurityAssessmentMetadataPartnerData; +} + +/** + * The result of the assessment + */ +export interface AssessmentStatus { + /** + * Programmatic code for the status of the assessment. Possible values include: 'Healthy', + * 'Unhealthy', 'NotApplicable' + */ + code: AssessmentStatusCode; + /** + * Programmatic code for the cause of the assessment status + */ + cause?: string; + /** + * Human readable description of the assessment status + */ + description?: string; +} + +/** + * Links relevant to the assessment + */ +export interface AssessmentLinks { + /** + * Link to assessment in Azure Portal + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly azurePortalUri?: string; +} + +/** + * Data regarding 3rd party partner integration + */ +export interface SecurityAssessmentPartnerData { + /** + * Name of the company of the partner + */ + partnerName: string; + /** + * secret to authenticate the partner - write only + */ + secret: string; +} + +/** + * Security assessment on a resource + */ +export interface SecurityAssessment extends Resource { + resourceDetails: ResourceDetailsUnion; + /** + * User friendly display name of the assessment + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly displayName?: string; + status: AssessmentStatus; + /** + * Additional data regarding the assessment + */ + additionalData?: { [propertyName: string]: string }; + links?: AssessmentLinks; + metadata?: SecurityAssessmentMetadataProperties; + partnersData?: SecurityAssessmentPartnerData; +} + +/** + * The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, + * Executable is used for Linux. + */ +export interface ProtectionMode { + /** + * Possible values include: 'Audit', 'Enforce', 'None' + */ + exe?: Exe; + /** + * Possible values include: 'Audit', 'Enforce', 'None' + */ + msi?: Msi; + /** + * Possible values include: 'Audit', 'Enforce', 'None' + */ + script?: Script; + /** + * Possible values include: 'Audit', 'Enforce', 'None' + */ + executable?: Executable; +} + +/** + * Represents a summary of the alerts of the VM/server group + */ +export interface AppWhitelistingIssueSummary { + /** + * Possible values include: 'ViolationsAudited', 'ViolationsBlocked', + * 'MsiAndScriptViolationsAudited', 'MsiAndScriptViolationsBlocked', + * 'ExecutableViolationsAudited', 'RulesViolatedManually' + */ + issue?: Issue; + /** + * The number of machines in the VM/server group that have this alert + */ + numberOfVms?: number; +} + +/** + * Represents a machine that is part of a VM/server group + */ +export interface VmRecommendation { + /** + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + */ + configurationStatus?: ConfigurationStatus; + /** + * Possible values include: 'Recommended', 'Add', 'Remove' + */ + recommendationAction?: RecommendationAction; + resourceId?: string; + /** + * Possible values include: 'Supported', 'NotSupported', 'Unknown' + */ + enforcementSupport?: EnforcementSupport; +} + +/** + * Represents the publisher information of a process/rule + */ +export interface PublisherInfo { + /** + * The Subject field of the x.509 certificate used to sign the code, using the following fields - + * O = Organization, L = Locality, S = State or Province, and C = Country + */ + publisherName?: string; + /** + * The product name taken from the file's version resource + */ + productName?: string; + /** + * The "OriginalName" field taken from the file's version resource + */ + binaryName?: string; + /** + * The binary file version taken from the file's version resource + */ + version?: string; +} + +/** + * Represents a user that is recommended to be allowed for a certain rule + */ +export interface UserRecommendation { + /** + * Represents a user that is recommended to be allowed for a certain rule + */ + username?: string; + /** + * Possible values include: 'Recommended', 'Add', 'Remove' + */ + recommendationAction?: RecommendationAction1; +} + +/** + * Represents a path that is recommended to be allowed and its properties + */ +export interface PathRecommendation { + /** + * The full path to whitelist + */ + path?: string; + /** + * Possible values include: 'Recommended', 'Add', 'Remove' + */ + action?: Action; + /** + * Possible values include: 'File', 'FileHash', 'PublisherSignature', 'ProductSignature', + * 'BinarySignature', 'VersionAndAboveSignature' + */ + type?: Type; + publisherInfo?: PublisherInfo; + /** + * Whether the path is commonly run on the machine + */ + common?: boolean; + userSids?: string[]; + usernames?: UserRecommendation[]; + /** + * Possible values include: 'Exe', 'Dll', 'Msi', 'Script', 'Executable', 'Unknown' + */ + fileType?: FileType; + /** + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + */ + configurationStatus?: ConfigurationStatus1; +} + +/** + * An interface representing AppWhitelistingGroup. + */ +export interface AppWhitelistingGroup { + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * Possible values include: 'Audit', 'Enforce', 'None' + */ + enforcementMode?: EnforcementMode; + protectionMode?: ProtectionMode; + /** + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly configurationStatus?: ConfigurationStatus2; + /** + * Possible values include: 'Recommended', 'NotRecommended', 'NotAvailable', 'NoStatus' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly recommendationStatus?: RecommendationStatus; + /** + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly issues?: AppWhitelistingIssueSummary[]; + /** + * Possible values include: 'Azure_AppLocker', 'Azure_AuditD', 'NonAzure_AppLocker', + * 'NonAzure_AuditD', 'None' + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly sourceSystem?: SourceSystem; + vmRecommendations?: VmRecommendation[]; + pathRecommendations?: PathRecommendation[]; +} + +/** + * Represents a list of VM/server groups and set of rules that are Recommended by Azure Security + * Center to be allowed + */ +export interface AppWhitelistingGroups { + value?: AppWhitelistingGroup[]; +} + +/** + * Describes remote addresses that is recommended to communicate with the Azure resource on some + * (Protocol, Port, Direction). All other remote addresses are recommended to be blocked + */ +export interface Rule { + /** + * The name of the rule + */ + name?: string; + /** + * The rule's direction. Possible values include: 'Inbound', 'Outbound' + */ + direction?: Direction; + /** + * The rule's destination port + */ + destinationPort?: number; + /** + * The rule's transport protocols + */ + protocols?: TransportProtocol[]; + /** + * The remote IP addresses that should be able to communicate with the Azure resource on the + * rule's destination port and protocol + */ + ipAddresses?: string[]; +} + +/** + * Describes the Network Security Groups effective on a network interface + */ +export interface EffectiveNetworkSecurityGroups { + /** + * The Azure resource ID of the network interface + */ + networkInterface?: string; + /** + * The Network Security Groups effective on the network interface + */ + networkSecurityGroups?: string[]; +} + +/** + * The resource whose properties describes the Adaptive Network Hardening settings for some Azure + * resource + */ +export interface AdaptiveNetworkHardening extends Resource { + /** + * The security rules which are recommended to be effective on the VM + */ + rules?: Rule[]; + /** + * The UTC time on which the rules were calculated + */ + rulesCalculationTime?: Date; + /** + * The Network Security Groups effective on the network interfaces of the protected resource + */ + effectiveNetworkSecurityGroups?: EffectiveNetworkSecurityGroups[]; +} + +/** + * An interface representing AdaptiveNetworkHardeningEnforceRequest. + */ +export interface AdaptiveNetworkHardeningEnforceRequest { + /** + * The rules to enforce + */ + rules: Rule[]; + /** + * The Azure resource IDs of the effective network security groups that will be updated with the + * created security rules from the Adaptive Network Hardening rules + */ + networkSecurityGroups: string[]; +} + +/** + * Describes properties of a connected resource + */ +export interface ConnectedResource { + /** + * The Azure resource id of the connected resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly connectedResourceId?: string; + /** + * The allowed tcp ports + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly tcpPorts?: string; + /** + * The allowed udp ports + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly udpPorts?: string; +} + +/** + * Describes the allowed inbound and outbound traffic of an Azure resource + */ +export interface ConnectableResource { + /** + * The Azure resource id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * The list of Azure resources that the resource has inbound allowed connection from + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly inboundConnectedResources?: ConnectedResource[]; + /** + * The list of Azure resources that the resource has outbound allowed connection to + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly outboundConnectedResources?: ConnectedResource[]; +} + +/** + * The resource whose properties describes the allowed traffic between Azure resources + */ +export interface AllowedConnectionsResource { + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * The UTC time on which the allowed connections resource was calculated + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly calculatedDateTime?: Date; + /** + * List of connectable resources + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly connectableResources?: ConnectableResource[]; +} + +/** + * An interface representing TopologySingleResourceParent. + */ +export interface TopologySingleResourceParent { + /** + * Azure resource id which serves as parent resource in topology view + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resourceId?: string; +} + +/** + * An interface representing TopologySingleResourceChild. + */ +export interface TopologySingleResourceChild { + /** + * Azure resource id which serves as child resource in topology view + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resourceId?: string; +} + +/** + * An interface representing TopologySingleResource. + */ +export interface TopologySingleResource { + /** + * Azure resource id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly resourceId?: string; + /** + * The security severity of the resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly severity?: string; + /** + * Indicates if the resource has security recommendations + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly recommendationsExist?: boolean; + /** + * Indicates the resource connectivity level to the Internet (InternetFacing, Internal ,etc.) + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly networkZones?: string; + /** + * Score of the resource based on its security severity + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly topologyScore?: number; + /** + * The location of this resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * Azure resources connected to this resource which are in higher level in the topology view + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly parents?: TopologySingleResourceParent[]; + /** + * Azure resources connected to this resource which are in lower level in the topology view + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly children?: TopologySingleResourceChild[]; +} + +/** + * An interface representing TopologyResource. + */ +export interface TopologyResource { + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * The UTC time on which the topology was calculated + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly calculatedDateTime?: Date; + /** + * Azure resources which are part of this topology resource + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly topologyResources?: TopologySingleResource[]; +} + +/** + * An interface representing JitNetworkAccessPortRule. + */ +export interface JitNetworkAccessPortRule { + number: number; + /** + * Possible values include: 'TCP', 'UDP', 'All' + */ + protocol: Protocol; + /** + * 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". + */ + allowedSourceAddressPrefix?: string; + /** + * Mutually exclusive with the "allowedSourceAddressPrefix" parameter. + */ + allowedSourceAddressPrefixes?: string[]; + /** + * Maximum duration requests can be made for. In ISO 8601 duration format. Minimum 5 minutes, + * maximum 1 day + */ + maxRequestAccessDuration: string; +} + +/** + * An interface representing JitNetworkAccessPolicyVirtualMachine. + */ +export interface JitNetworkAccessPolicyVirtualMachine { + /** + * Resource ID of the virtual machine that is linked to this policy + */ + id: string; + /** + * Port configurations for the virtual machine + */ + ports: JitNetworkAccessPortRule[]; + /** + * Public IP address of the Azure Firewall that is linked to this policy, if applicable + */ + publicIpAddress?: string; +} + +/** + * An interface representing JitNetworkAccessRequestPort. + */ +export interface JitNetworkAccessRequestPort { + number: number; + /** + * 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". + */ + allowedSourceAddressPrefix?: string; + /** + * Mutually exclusive with the "allowedSourceAddressPrefix" parameter. + */ + allowedSourceAddressPrefixes?: string[]; + /** + * The date & time at which the request ends in UTC + */ + endTimeUtc: Date; + /** + * The status of the port. Possible values include: 'Revoked', 'Initiated' + */ + status: Status; + /** + * A description of why the `status` has its value. Possible values include: 'Expired', + * 'UserRequested', 'NewerRequestInitiated' + */ + statusReason: StatusReason; + /** + * The port which is mapped to this port's `number` in the Azure Firewall, if applicable + */ + mappedPort?: number; +} + +/** + * An interface representing JitNetworkAccessRequestVirtualMachine. + */ +export interface JitNetworkAccessRequestVirtualMachine { + /** + * Resource ID of the virtual machine that is linked to this policy + */ + id: string; + /** + * The ports that were opened for the virtual machine + */ + ports: JitNetworkAccessRequestPort[]; +} + +/** + * An interface representing JitNetworkAccessRequest. + */ +export interface JitNetworkAccessRequest { + virtualMachines: JitNetworkAccessRequestVirtualMachine[]; + /** + * The start time of the request in UTC + */ + startTimeUtc: Date; + /** + * The identity of the person who made the request + */ + requestor: string; + /** + * The justification for making the initiate request + */ + justification?: string; +} + +/** + * An interface representing JitNetworkAccessPolicy. + */ +export interface JitNetworkAccessPolicy { + /** + * Resource Id + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly id?: string; + /** + * Resource name + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly name?: string; + /** + * Resource type + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly type?: string; + /** + * Kind of the resource + */ + kind?: string; + /** + * Location where the resource is stored + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly location?: string; + /** + * Configurations for Microsoft.Compute/virtualMachines resource type. + */ + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; + requests?: JitNetworkAccessRequest[]; + /** + * Gets the provisioning state of the Just-in-Time policy. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly provisioningState?: string; +} + +/** + * An interface representing JitNetworkAccessPolicyInitiatePort. + */ +export interface JitNetworkAccessPolicyInitiatePort { + number: number; + /** + * Source of the allowed traffic. If omitted, the request will be for the source IP address of + * the initiate request. + */ + allowedSourceAddressPrefix?: string; + /** + * The time to close the request in UTC + */ + endTimeUtc: Date; +} + +/** + * An interface representing JitNetworkAccessPolicyInitiateVirtualMachine. + */ +export interface JitNetworkAccessPolicyInitiateVirtualMachine { + /** + * Resource ID of the virtual machine that is linked to this policy + */ + id: string; + /** + * The ports to open for the resource with the `id` + */ + ports: JitNetworkAccessPolicyInitiatePort[]; +} + +/** + * An interface representing JitNetworkAccessPolicyInitiateRequest. + */ +export interface JitNetworkAccessPolicyInitiateRequest { + /** + * A list of virtual machines & ports to open access for + */ + virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[]; + /** + * The justification for making the initiate request + */ + justification?: string; +} + +/** + * Optional Parameters. + */ +export interface AlertsListOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; + /** + * OData select. Optional. + */ + select?: string; + /** + * OData expand. Optional. + */ + expand?: string; +} + +/** + * Optional Parameters. + */ +export interface AlertsListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; + /** + * OData select. Optional. + */ + select?: string; + /** + * OData expand. Optional. + */ + expand?: string; +} + +/** + * Optional Parameters. + */ +export interface AlertsListSubscriptionLevelAlertsByRegionOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; + /** + * OData select. Optional. + */ + select?: string; + /** + * OData expand. Optional. + */ + expand?: string; +} + +/** + * Optional Parameters. + */ +export interface AlertsListResourceGroupLevelAlertsByRegionOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; + /** + * OData select. Optional. + */ + select?: string; + /** + * OData expand. Optional. + */ + expand?: string; +} + +/** + * Optional Parameters. + */ +export interface IotSecuritySolutionListBySubscriptionOptionalParams extends msRest.RequestOptionsBase { + /** + * Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface IotSecuritySolutionListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { + /** + * Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams extends msRest.RequestOptionsBase { + /** + * Number of results to retrieve. + */ + top?: number; +} + +/** + * Optional Parameters. + */ +export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams extends msRest.RequestOptionsBase { + /** + * Number of results to retrieve. + */ + top?: number; +} + +/** + * Optional Parameters. + */ +export interface TasksListOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface TasksListByHomeRegionOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface TasksListByResourceGroupOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface RegulatoryComplianceStandardsListOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface RegulatoryComplianceControlsListOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface RegulatoryComplianceAssessmentsListOptionalParams extends msRest.RequestOptionsBase { + /** + * OData filter. Optional. + */ + filter?: string; +} + +/** + * Optional Parameters. + */ +export interface AssessmentsGetOptionalParams extends msRest.RequestOptionsBase { + /** + * OData expand. Optional. Possible values include: 'links', 'metadata' + */ + expand?: ExpandEnum; +} + +/** + * Optional Parameters. + */ +export interface AdaptiveApplicationControlsListOptionalParams extends msRest.RequestOptionsBase { + /** + * Include the policy rules + */ + includePathRecommendations?: boolean; + /** + * Return output in a summarized form + */ + summary?: boolean; +} + +/** + * An interface representing SecurityCenterOptions. + */ +export interface SecurityCenterOptions extends AzureServiceClientOptions { + baseUri?: string; +} + +/** + * @interface + * List of compliance results response + * @extends Array + */ +export interface ComplianceResultList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security alerts + * @extends Array + */ +export interface AlertList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * Subscription settings list. + * @extends Array + */ +export interface SettingsList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of device security groups + * @extends Array + */ +export interface DeviceSecurityGroupList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of IoT Security solutions. + * @extends Array + */ +export interface IoTSecuritySolutionsList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of IoT Security solution aggregated alert data. + * @extends Array + */ +export interface IoTSecurityAggregatedAlertList extends Array { + /** + * When there is too much alert data for one page, use this URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of IoT Security solution aggregated recommendations. + * @extends Array + */ +export interface IoTSecurityAggregatedRecommendationList extends Array { + /** + * When there is too much alert data for one page, use this URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * An interface representing the DiscoveredSecuritySolutionList. + * @extends Array + */ +export interface DiscoveredSecuritySolutionList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * An interface representing the ExternalSecuritySolutionList. + * @extends Array + */ +export interface ExternalSecuritySolutionList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of locations where ASC saves your data + * @extends Array + */ +export interface AscLocationList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of possible operations for Microsoft.Security resource provider + * @extends Array + */ +export interface OperationList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security task recommendations + * @extends Array + */ +export interface SecurityTaskList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of all the auto provisioning settings response + * @extends Array + */ +export interface AutoProvisioningSettingList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of Compliance objects response + * @extends Array + */ +export interface ComplianceList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * Information protection policies response. + * @extends Array + */ +export interface InformationProtectionPolicyList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security contacts response + * @extends Array + */ +export interface SecurityContactList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of workspace settings response + * @extends Array + */ +export interface WorkspaceSettingList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of regulatory compliance standards response + * @extends Array + */ +export interface RegulatoryComplianceStandardList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of regulatory compliance controls response + * @extends Array + */ +export interface RegulatoryComplianceControlList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of regulatory compliance assessment response + * @extends Array + */ +export interface RegulatoryComplianceAssessmentList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security sub-assessments + * @extends Array + */ +export interface SecuritySubAssessmentList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security automations response. + * @extends Array + */ +export interface AutomationList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * List of security assessment metadata + * @extends Array + */ +export interface SecurityAssessmentMetadataList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * Page of a security assessments list + * @extends Array + */ +export interface SecurityAssessmentList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * Response for ListAdaptiveNetworkHardenings API service call + * @extends Array + */ +export interface AdaptiveNetworkHardeningsList extends Array { + /** + * The URL to get the next set of results + */ + nextLink?: string; +} + +/** + * @interface + * List of all possible traffic between Azure resources + * @extends Array + */ +export interface AllowedConnectionsList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * An interface representing the TopologyList. + * @extends Array + */ +export interface TopologyList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * @interface + * An interface representing the JitNetworkAccessPoliciesList. + * @extends Array + */ +export interface JitNetworkAccessPoliciesList extends Array { + /** + * The URI to fetch the next page. + * **NOTE: This property will not be serialized. It can only be populated by the server.** + */ + readonly nextLink?: string; +} + +/** + * Defines values for ResourceStatus. + * Possible values include: 'Healthy', 'NotApplicable', 'OffByPolicy', 'NotHealthy' + * @readonly + * @enum {string} + */ +export type ResourceStatus = 'Healthy' | 'NotApplicable' | 'OffByPolicy' | 'NotHealthy'; + +/** + * Defines values for PricingTier. + * Possible values include: 'Free', 'Standard' + * @readonly + * @enum {string} + */ +export type PricingTier = 'Free' | 'Standard'; + +/** + * Defines values for ReportedSeverity. + * Possible values include: 'Informational', 'Low', 'Medium', 'High' + * @readonly + * @enum {string} + */ +export type ReportedSeverity = 'Informational' | 'Low' | 'Medium' | 'High'; + +/** + * Defines values for ValueType. + * Possible values include: 'IpCidr', 'String' + * @readonly + * @enum {string} + */ +export type ValueType = 'IpCidr' | 'String'; + +/** + * Defines values for SecuritySolutionStatus. + * Possible values include: 'Enabled', 'Disabled' + * @readonly + * @enum {string} + */ +export type SecuritySolutionStatus = 'Enabled' | 'Disabled'; + +/** + * Defines values for ExportData. + * Possible values include: 'RawEvents' + * @readonly + * @enum {string} + */ +export type ExportData = 'RawEvents'; + +/** + * Defines values for DataSource. + * Possible values include: 'TwinData' + * @readonly + * @enum {string} + */ +export type DataSource = 'TwinData'; + +/** + * Defines values for RecommendationType. + * Possible values include: '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', 'IoT_VulnerableTLSCipherSuite' + * @readonly + * @enum {string} + */ +export type RecommendationType = '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' | 'IoT_VulnerableTLSCipherSuite'; + +/** + * Defines values for RecommendationConfigStatus. + * Possible values include: 'Disabled', 'Enabled' + * @readonly + * @enum {string} + */ +export type RecommendationConfigStatus = 'Disabled' | 'Enabled'; + +/** + * Defines values for UnmaskedIpLoggingStatus. + * Possible values include: 'Disabled', 'Enabled' + * @readonly + * @enum {string} + */ +export type UnmaskedIpLoggingStatus = 'Disabled' | 'Enabled'; + +/** + * Defines values for SecurityFamily. + * Possible values include: 'Waf', 'Ngfw', 'SaasWaf', 'Va' + * @readonly + * @enum {string} + */ +export type SecurityFamily = 'Waf' | 'Ngfw' | 'SaasWaf' | 'Va'; + +/** + * Defines values for AadConnectivityState. + * Possible values include: 'Discovered', 'NotLicensed', 'Connected' + * @readonly + * @enum {string} + */ +export type AadConnectivityState = 'Discovered' | 'NotLicensed' | 'Connected'; + +/** + * Defines values for ExternalSecuritySolutionKind. + * Possible values include: 'CEF', 'ATA', 'AAD' + * @readonly + * @enum {string} + */ +export type ExternalSecuritySolutionKind = 'CEF' | 'ATA' | 'AAD'; + +/** + * Defines values for AutoProvision. + * Possible values include: 'On', 'Off' + * @readonly + * @enum {string} + */ +export type AutoProvision = 'On' | 'Off'; + +/** + * Defines values for Rank. + * Possible values include: 'None', 'Low', 'Medium', 'High', 'Critical' + * @readonly + * @enum {string} + */ +export type Rank = 'None' | 'Low' | 'Medium' | 'High' | 'Critical'; + +/** + * Defines values for AlertNotifications. + * Possible values include: 'On', 'Off' + * @readonly + * @enum {string} + */ +export type AlertNotifications = 'On' | 'Off'; + +/** + * Defines values for AlertsToAdmins. + * Possible values include: 'On', 'Off' + * @readonly + * @enum {string} + */ +export type AlertsToAdmins = 'On' | 'Off'; + +/** + * Defines values for State. + * Possible values include: 'Passed', 'Failed', 'Skipped', 'Unsupported' + * @readonly + * @enum {string} + */ +export type State = 'Passed' | 'Failed' | 'Skipped' | 'Unsupported'; + +/** + * Defines values for SubAssessmentStatusCode. + * Possible values include: 'Healthy', 'Unhealthy', 'NotApplicable' + * @readonly + * @enum {string} + */ +export type SubAssessmentStatusCode = 'Healthy' | 'Unhealthy' | 'NotApplicable'; + +/** + * Defines values for Severity. + * Possible values include: 'Low', 'Medium', 'High' + * @readonly + * @enum {string} + */ +export type Severity = 'Low' | 'Medium' | 'High'; + +/** + * Defines values for EventSource. + * Possible values include: 'Assessments', 'Alerts' + * @readonly + * @enum {string} + */ +export type EventSource = 'Assessments' | 'Alerts'; + +/** + * Defines values for PropertyType. + * Possible values include: 'String', 'Integer', 'Number', 'Boolean' + * @readonly + * @enum {string} + */ +export type PropertyType = 'String' | 'Integer' | 'Number' | 'Boolean'; + +/** + * Defines values for Operator. + * Possible values include: 'Equals', 'GreaterThan', 'GreaterThanOrEqualTo', 'LesserThan', + * 'LesserThanOrEqualTo', 'NotEquals', 'Contains', 'StartsWith', 'EndsWith' + * @readonly + * @enum {string} + */ +export type Operator = 'Equals' | 'GreaterThan' | 'GreaterThanOrEqualTo' | 'LesserThan' | 'LesserThanOrEqualTo' | 'NotEquals' | 'Contains' | 'StartsWith' | 'EndsWith'; + +/** + * Defines values for Category. + * Possible values include: 'Compute', 'Networking', 'Data', 'IdentityAndAccess', 'IoT' + * @readonly + * @enum {string} + */ +export type Category = 'Compute' | 'Networking' | 'Data' | 'IdentityAndAccess' | 'IoT'; + +/** + * Defines values for UserImpact. + * Possible values include: 'Low', 'Moderate', 'High' + * @readonly + * @enum {string} + */ +export type UserImpact = 'Low' | 'Moderate' | 'High'; + +/** + * Defines values for ImplementationEffort. + * Possible values include: 'Low', 'Moderate', 'High' + * @readonly + * @enum {string} + */ +export type ImplementationEffort = 'Low' | 'Moderate' | 'High'; + +/** + * Defines values for Threats. + * Possible values include: 'accountBreach', 'dataExfiltration', 'dataSpillage', + * 'maliciousInsider', 'elevationOfPrivilege', 'threatResistance', 'missingCoverage', + * 'denialOfService' + * @readonly + * @enum {string} + */ +export type Threats = 'accountBreach' | 'dataExfiltration' | 'dataSpillage' | 'maliciousInsider' | 'elevationOfPrivilege' | 'threatResistance' | 'missingCoverage' | 'denialOfService'; + +/** + * Defines values for AssessmentType. + * Possible values include: 'BuiltIn', 'CustomPolicy', 'CustomerManaged', 'VerifiedPartner' + * @readonly + * @enum {string} + */ +export type AssessmentType = 'BuiltIn' | 'CustomPolicy' | 'CustomerManaged' | 'VerifiedPartner'; + +/** + * Defines values for AssessmentStatusCode. + * Possible values include: 'Healthy', 'Unhealthy', 'NotApplicable' + * @readonly + * @enum {string} + */ +export type AssessmentStatusCode = 'Healthy' | 'Unhealthy' | 'NotApplicable'; + +/** + * Defines values for Direction. + * Possible values include: 'Inbound', 'Outbound' + * @readonly + * @enum {string} + */ +export type Direction = 'Inbound' | 'Outbound'; + +/** + * Defines values for TransportProtocol. + * Possible values include: 'TCP', 'UDP' + * @readonly + * @enum {string} + */ +export type TransportProtocol = 'TCP' | 'UDP'; + +/** + * Defines values for Protocol. + * Possible values include: 'TCP', 'UDP', 'All' + * @readonly + * @enum {string} + */ +export type Protocol = 'TCP' | 'UDP' | '*'; + +/** + * Defines values for Status. + * Possible values include: 'Revoked', 'Initiated' + * @readonly + * @enum {string} + */ +export type Status = 'Revoked' | 'Initiated'; + +/** + * Defines values for StatusReason. + * Possible values include: 'Expired', 'UserRequested', 'NewerRequestInitiated' + * @readonly + * @enum {string} + */ +export type StatusReason = 'Expired' | 'UserRequested' | 'NewerRequestInitiated'; + +/** + * Defines values for ExpandEnum. + * Possible values include: 'links', 'metadata' + * @readonly + * @enum {string} + */ +export type ExpandEnum = 'links' | 'metadata'; + +/** + * Defines values for ConnectionType. + * Possible values include: 'Internal', 'External' + * @readonly + * @enum {string} + */ +export type ConnectionType = 'Internal' | 'External'; + +/** + * Defines values for ProvisioningState. + * Possible values include: 'Succeeded', 'Failed', 'Canceled', 'Provisioning', 'Deprovisioning' + * @readonly + * @enum {string} + */ +export type ProvisioningState = 'Succeeded' | 'Failed' | 'Canceled' | 'Provisioning' | 'Deprovisioning'; + +/** + * Defines values for Exe. + * Possible values include: 'Audit', 'Enforce', 'None' + * @readonly + * @enum {string} + */ +export type Exe = 'Audit' | 'Enforce' | 'None'; + +/** + * Defines values for Msi. + * Possible values include: 'Audit', 'Enforce', 'None' + * @readonly + * @enum {string} + */ +export type Msi = 'Audit' | 'Enforce' | 'None'; + +/** + * Defines values for Script. + * Possible values include: 'Audit', 'Enforce', 'None' + * @readonly + * @enum {string} + */ +export type Script = 'Audit' | 'Enforce' | 'None'; + +/** + * Defines values for Executable. + * Possible values include: 'Audit', 'Enforce', 'None' + * @readonly + * @enum {string} + */ +export type Executable = 'Audit' | 'Enforce' | 'None'; + +/** + * Defines values for Issue. + * Possible values include: 'ViolationsAudited', 'ViolationsBlocked', + * 'MsiAndScriptViolationsAudited', 'MsiAndScriptViolationsBlocked', 'ExecutableViolationsAudited', + * 'RulesViolatedManually' + * @readonly + * @enum {string} + */ +export type Issue = 'ViolationsAudited' | 'ViolationsBlocked' | 'MsiAndScriptViolationsAudited' | 'MsiAndScriptViolationsBlocked' | 'ExecutableViolationsAudited' | 'RulesViolatedManually'; + +/** + * Defines values for ConfigurationStatus. + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + * @readonly + * @enum {string} + */ +export type ConfigurationStatus = 'Configured' | 'NotConfigured' | 'InProgress' | 'Failed' | 'NoStatus'; + +/** + * Defines values for RecommendationAction. + * Possible values include: 'Recommended', 'Add', 'Remove' + * @readonly + * @enum {string} + */ +export type RecommendationAction = 'Recommended' | 'Add' | 'Remove'; + +/** + * Defines values for EnforcementSupport. + * Possible values include: 'Supported', 'NotSupported', 'Unknown' + * @readonly + * @enum {string} + */ +export type EnforcementSupport = 'Supported' | 'NotSupported' | 'Unknown'; + +/** + * Defines values for RecommendationAction1. + * Possible values include: 'Recommended', 'Add', 'Remove' + * @readonly + * @enum {string} + */ +export type RecommendationAction1 = 'Recommended' | 'Add' | 'Remove'; + +/** + * Defines values for Action. + * Possible values include: 'Recommended', 'Add', 'Remove' + * @readonly + * @enum {string} + */ +export type Action = 'Recommended' | 'Add' | 'Remove'; + +/** + * Defines values for Type. + * Possible values include: 'File', 'FileHash', 'PublisherSignature', 'ProductSignature', + * 'BinarySignature', 'VersionAndAboveSignature' + * @readonly + * @enum {string} + */ +export type Type = 'File' | 'FileHash' | 'PublisherSignature' | 'ProductSignature' | 'BinarySignature' | 'VersionAndAboveSignature'; + +/** + * Defines values for FileType. + * Possible values include: 'Exe', 'Dll', 'Msi', 'Script', 'Executable', 'Unknown' + * @readonly + * @enum {string} + */ +export type FileType = 'Exe' | 'Dll' | 'Msi' | 'Script' | 'Executable' | 'Unknown'; + +/** + * Defines values for ConfigurationStatus1. + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + * @readonly + * @enum {string} + */ +export type ConfigurationStatus1 = 'Configured' | 'NotConfigured' | 'InProgress' | 'Failed' | 'NoStatus'; + +/** + * Defines values for EnforcementMode. + * Possible values include: 'Audit', 'Enforce', 'None' + * @readonly + * @enum {string} + */ +export type EnforcementMode = 'Audit' | 'Enforce' | 'None'; + +/** + * Defines values for ConfigurationStatus2. + * Possible values include: 'Configured', 'NotConfigured', 'InProgress', 'Failed', 'NoStatus' + * @readonly + * @enum {string} + */ +export type ConfigurationStatus2 = 'Configured' | 'NotConfigured' | 'InProgress' | 'Failed' | 'NoStatus'; + +/** + * Defines values for RecommendationStatus. + * Possible values include: 'Recommended', 'NotRecommended', 'NotAvailable', 'NoStatus' + * @readonly + * @enum {string} + */ +export type RecommendationStatus = 'Recommended' | 'NotRecommended' | 'NotAvailable' | 'NoStatus'; + +/** + * Defines values for SourceSystem. + * Possible values include: 'Azure_AppLocker', 'Azure_AuditD', 'NonAzure_AppLocker', + * 'NonAzure_AuditD', 'None' + * @readonly + * @enum {string} + */ +export type SourceSystem = 'Azure_AppLocker' | 'Azure_AuditD' | 'NonAzure_AppLocker' | 'NonAzure_AuditD' | 'None'; + +/** + * Defines values for SettingName. + * Possible values include: 'MCAS', 'WDATP' + * @readonly + * @enum {string} + */ +export type SettingName = 'MCAS' | 'WDATP'; + +/** + * Defines values for SettingName1. + * Possible values include: 'MCAS', 'WDATP' + * @readonly + * @enum {string} + */ +export type SettingName1 = 'MCAS' | 'WDATP'; + +/** + * Defines values for TaskUpdateActionType. + * Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', 'Close' + * @readonly + * @enum {string} + */ +export type TaskUpdateActionType = 'Activate' | 'Dismiss' | 'Start' | 'Resolve' | 'Close'; + +/** + * Defines values for TaskUpdateActionType1. + * Possible values include: 'Activate', 'Dismiss', 'Start', 'Resolve', 'Close' + * @readonly + * @enum {string} + */ +export type TaskUpdateActionType1 = 'Activate' | 'Dismiss' | 'Start' | 'Resolve' | 'Close'; + +/** + * Defines values for InformationProtectionPolicyName. + * Possible values include: 'effective', 'custom' + * @readonly + * @enum {string} + */ +export type InformationProtectionPolicyName = 'effective' | 'custom'; + +/** + * Defines values for InformationProtectionPolicyName1. + * Possible values include: 'effective', 'custom' + * @readonly + * @enum {string} + */ +export type InformationProtectionPolicyName1 = 'effective' | 'custom'; + +/** + * Contains response data for the list operation. + */ +export type ComplianceResultsListResponse = ComplianceResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ComplianceResultList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type ComplianceResultsGetResponse = ComplianceResult & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ComplianceResult; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type ComplianceResultsListNextResponse = ComplianceResultList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ComplianceResultList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type PricingsListResponse = PricingList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: PricingList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type PricingsGetResponse = Pricing & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Pricing; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type PricingsUpdateResponse = Pricing & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Pricing; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type AlertsListResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listByResourceGroup operation. + */ +export type AlertsListByResourceGroupResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listSubscriptionLevelAlertsByRegion operation. + */ +export type AlertsListSubscriptionLevelAlertsByRegionResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listResourceGroupLevelAlertsByRegion operation. + */ +export type AlertsListResourceGroupLevelAlertsByRegionResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the getSubscriptionLevelAlert operation. + */ +export type AlertsGetSubscriptionLevelAlertResponse = Alert & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Alert; + }; +}; + +/** + * Contains response data for the getResourceGroupLevelAlerts operation. + */ +export type AlertsGetResourceGroupLevelAlertsResponse = Alert & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: Alert; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type AlertsListNextResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listByResourceGroupNext operation. + */ +export type AlertsListByResourceGroupNextResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listSubscriptionLevelAlertsByRegionNext operation. + */ +export type AlertsListSubscriptionLevelAlertsByRegionNextResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the listResourceGroupLevelAlertsByRegionNext operation. + */ +export type AlertsListResourceGroupLevelAlertsByRegionNextResponse = AlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AlertList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type SettingsListResponse = SettingsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SettingsList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type SettingsGetResponse = SettingUnion & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SettingUnion; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type SettingsUpdateResponse = SettingUnion & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SettingUnion; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type SettingsListNextResponse = SettingsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SettingsList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type AdvancedThreatProtectionGetResponse = AdvancedThreatProtectionSetting & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AdvancedThreatProtectionSetting; + }; +}; + +/** + * Contains response data for the create operation. + */ +export type AdvancedThreatProtectionCreateResponse = AdvancedThreatProtectionSetting & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AdvancedThreatProtectionSetting; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type DeviceSecurityGroupsListResponse = DeviceSecurityGroupList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DeviceSecurityGroupList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type DeviceSecurityGroupsGetResponse = DeviceSecurityGroup & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DeviceSecurityGroup; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type DeviceSecurityGroupsCreateOrUpdateResponse = DeviceSecurityGroup & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DeviceSecurityGroup; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type DeviceSecurityGroupsListNextResponse = DeviceSecurityGroupList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DeviceSecurityGroupList; + }; +}; + +/** + * Contains response data for the listBySubscription operation. + */ +export type IotSecuritySolutionListBySubscriptionResponse = IoTSecuritySolutionsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionsList; + }; +}; + +/** + * Contains response data for the listByResourceGroup operation. + */ +export type IotSecuritySolutionListByResourceGroupResponse = IoTSecuritySolutionsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionsList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type IotSecuritySolutionGetResponse = IoTSecuritySolutionModel & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionModel; + }; +}; + +/** + * Contains response data for the createOrUpdate operation. + */ +export type IotSecuritySolutionCreateOrUpdateResponse = IoTSecuritySolutionModel & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionModel; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type IotSecuritySolutionUpdateResponse = IoTSecuritySolutionModel & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionModel; + }; +}; + +/** + * Contains response data for the listBySubscriptionNext operation. + */ +export type IotSecuritySolutionListBySubscriptionNextResponse = IoTSecuritySolutionsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionsList; + }; +}; + +/** + * Contains response data for the listByResourceGroupNext operation. + */ +export type IotSecuritySolutionListByResourceGroupNextResponse = IoTSecuritySolutionsList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionsList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type IotSecuritySolutionAnalyticsListResponse = IoTSecuritySolutionAnalyticsModelList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionAnalyticsModelList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type IotSecuritySolutionAnalyticsGetResponse = IoTSecuritySolutionAnalyticsModel & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecuritySolutionAnalyticsModel; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type IotSecuritySolutionsAnalyticsAggregatedAlertListResponse = IoTSecurityAggregatedAlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedAlertList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type IotSecuritySolutionsAnalyticsAggregatedAlertGetResponse = IoTSecurityAggregatedAlert & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedAlert; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type IotSecuritySolutionsAnalyticsAggregatedAlertListNextResponse = IoTSecurityAggregatedAlertList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedAlertList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type IotSecuritySolutionsAnalyticsRecommendationGetResponse = IoTSecurityAggregatedRecommendation & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedRecommendation; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type IotSecuritySolutionsAnalyticsRecommendationListResponse = IoTSecurityAggregatedRecommendationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedRecommendationList; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type IotSecuritySolutionsAnalyticsRecommendationListNextResponse = IoTSecurityAggregatedRecommendationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: IoTSecurityAggregatedRecommendationList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type DiscoveredSecuritySolutionsListResponse = DiscoveredSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DiscoveredSecuritySolutionList; + }; +}; + +/** + * Contains response data for the listByHomeRegion operation. + */ +export type DiscoveredSecuritySolutionsListByHomeRegionResponse = DiscoveredSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DiscoveredSecuritySolutionList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DiscoveredSecuritySolution; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type DiscoveredSecuritySolutionsListNextResponse = DiscoveredSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DiscoveredSecuritySolutionList; + }; +}; + +/** + * Contains response data for the listByHomeRegionNext operation. + */ +export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = DiscoveredSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: DiscoveredSecuritySolutionList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type ExternalSecuritySolutionsListResponse = ExternalSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ExternalSecuritySolutionList; + }; +}; + +/** + * Contains response data for the listByHomeRegion operation. + */ +export type ExternalSecuritySolutionsListByHomeRegionResponse = ExternalSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ExternalSecuritySolutionList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolutionUnion & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ExternalSecuritySolutionUnion; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type ExternalSecuritySolutionsListNextResponse = ExternalSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ExternalSecuritySolutionList; + }; +}; + +/** + * Contains response data for the listByHomeRegionNext operation. + */ +export type ExternalSecuritySolutionsListByHomeRegionNextResponse = ExternalSecuritySolutionList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: ExternalSecuritySolutionList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type LocationsListResponse = AscLocationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AscLocationList; + }; +}; + +/** + * Contains response data for the get operation. + */ +export type LocationsGetResponse = AscLocation & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AscLocation; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type LocationsListNextResponse = AscLocationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AscLocationList; + }; +}; + +/** + * Contains response data for the list operation. + */ +export type OperationsListResponse = OperationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationList; + }; +}; + +/** + * Contains response data for the listNext operation. + */ +export type OperationsListNextResponse = OperationList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: OperationList; + }; +}; + +/** + * Contains response data for the list operation. */ -export type AlertUpdateActionType1 = 'Dismiss' | 'Reactivate'; +export type TasksListResponse = SecurityTaskList & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SecurityTaskList; + }; +}; /** - * Contains response data for the list operation. + * Contains response data for the listByHomeRegion operation. */ -export type PricingsListResponse = PricingList & { +export type TasksListByHomeRegionResponse = SecurityTaskList & { /** * The underlying HTTP response. */ @@ -2106,17 +5956,18 @@ export type PricingsListResponse = PricingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: PricingList; + parsedBody: SecurityTaskList; }; }; /** - * Contains response data for the listByResourceGroup operation. + * Contains response data for the getSubscriptionLevelTask operation. */ -export type PricingsListByResourceGroupResponse = PricingList & { +export type TasksGetSubscriptionLevelTaskResponse = SecurityTask & { /** * The underlying HTTP response. */ @@ -2125,17 +5976,18 @@ export type PricingsListByResourceGroupResponse = PricingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: PricingList; + parsedBody: SecurityTask; }; }; /** - * Contains response data for the getSubscriptionPricing operation. + * Contains response data for the listByResourceGroup operation. */ -export type PricingsGetSubscriptionPricingResponse = Pricing & { +export type TasksListByResourceGroupResponse = SecurityTaskList & { /** * The underlying HTTP response. */ @@ -2144,17 +5996,18 @@ export type PricingsGetSubscriptionPricingResponse = Pricing & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Pricing; + parsedBody: SecurityTaskList; }; }; /** - * Contains response data for the updateSubscriptionPricing operation. + * Contains response data for the getResourceGroupLevelTask operation. */ -export type PricingsUpdateSubscriptionPricingResponse = Pricing & { +export type TasksGetResourceGroupLevelTaskResponse = SecurityTask & { /** * The underlying HTTP response. */ @@ -2163,17 +6016,18 @@ export type PricingsUpdateSubscriptionPricingResponse = Pricing & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Pricing; + parsedBody: SecurityTask; }; }; /** - * Contains response data for the getResourceGroupPricing operation. + * Contains response data for the listNext operation. */ -export type PricingsGetResourceGroupPricingResponse = Pricing & { +export type TasksListNextResponse = SecurityTaskList & { /** * The underlying HTTP response. */ @@ -2182,17 +6036,18 @@ export type PricingsGetResourceGroupPricingResponse = Pricing & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Pricing; + parsedBody: SecurityTaskList; }; }; /** - * Contains response data for the createOrUpdateResourceGroupPricing operation. + * Contains response data for the listByHomeRegionNext operation. */ -export type PricingsCreateOrUpdateResourceGroupPricingResponse = Pricing & { +export type TasksListByHomeRegionNextResponse = SecurityTaskList & { /** * The underlying HTTP response. */ @@ -2201,17 +6056,18 @@ export type PricingsCreateOrUpdateResourceGroupPricingResponse = Pricing & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Pricing; + parsedBody: SecurityTaskList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listByResourceGroupNext operation. */ -export type PricingsListNextResponse = PricingList & { +export type TasksListByResourceGroupNextResponse = SecurityTaskList & { /** * The underlying HTTP response. */ @@ -2220,17 +6076,18 @@ export type PricingsListNextResponse = PricingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: PricingList; + parsedBody: SecurityTaskList; }; }; /** - * Contains response data for the listByResourceGroupNext operation. + * Contains response data for the list operation. */ -export type PricingsListByResourceGroupNextResponse = PricingList & { +export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList & { /** * The underlying HTTP response. */ @@ -2239,17 +6096,18 @@ export type PricingsListByResourceGroupNextResponse = PricingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: PricingList; + parsedBody: AutoProvisioningSettingList; }; }; /** - * Contains response data for the list operation. + * Contains response data for the get operation. */ -export type SecurityContactsListResponse = SecurityContactList & { +export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting & { /** * The underlying HTTP response. */ @@ -2258,17 +6116,18 @@ export type SecurityContactsListResponse = SecurityContactList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityContactList; + parsedBody: AutoProvisioningSetting; }; }; /** - * Contains response data for the get operation. + * Contains response data for the create operation. */ -export type SecurityContactsGetResponse = SecurityContact & { +export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting & { /** * The underlying HTTP response. */ @@ -2277,17 +6136,18 @@ export type SecurityContactsGetResponse = SecurityContact & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityContact; + parsedBody: AutoProvisioningSetting; }; }; /** - * Contains response data for the create operation. + * Contains response data for the listNext operation. */ -export type SecurityContactsCreateResponse = SecurityContact & { +export type AutoProvisioningSettingsListNextResponse = AutoProvisioningSettingList & { /** * The underlying HTTP response. */ @@ -2296,17 +6156,18 @@ export type SecurityContactsCreateResponse = SecurityContact & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityContact; + parsedBody: AutoProvisioningSettingList; }; }; /** - * Contains response data for the update operation. + * Contains response data for the list operation. */ -export type SecurityContactsUpdateResponse = SecurityContact & { +export type CompliancesListResponse = ComplianceList & { /** * The underlying HTTP response. */ @@ -2315,17 +6176,18 @@ export type SecurityContactsUpdateResponse = SecurityContact & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityContact; + parsedBody: ComplianceList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the get operation. */ -export type SecurityContactsListNextResponse = SecurityContactList & { +export type CompliancesGetResponse = Compliance & { /** * The underlying HTTP response. */ @@ -2334,17 +6196,18 @@ export type SecurityContactsListNextResponse = SecurityContactList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityContactList; + parsedBody: Compliance; }; }; /** - * Contains response data for the list operation. + * Contains response data for the listNext operation. */ -export type WorkspaceSettingsListResponse = WorkspaceSettingList & { +export type CompliancesListNextResponse = ComplianceList & { /** * The underlying HTTP response. */ @@ -2353,17 +6216,18 @@ export type WorkspaceSettingsListResponse = WorkspaceSettingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: WorkspaceSettingList; + parsedBody: ComplianceList; }; }; /** * Contains response data for the get operation. */ -export type WorkspaceSettingsGetResponse = WorkspaceSetting & { +export type InformationProtectionPoliciesGetResponse = InformationProtectionPolicy & { /** * The underlying HTTP response. */ @@ -2372,17 +6236,18 @@ export type WorkspaceSettingsGetResponse = WorkspaceSetting & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: WorkspaceSetting; + parsedBody: InformationProtectionPolicy; }; }; /** - * Contains response data for the create operation. + * Contains response data for the createOrUpdate operation. */ -export type WorkspaceSettingsCreateResponse = WorkspaceSetting & { +export type InformationProtectionPoliciesCreateOrUpdateResponse = InformationProtectionPolicy & { /** * The underlying HTTP response. */ @@ -2391,17 +6256,18 @@ export type WorkspaceSettingsCreateResponse = WorkspaceSetting & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: WorkspaceSetting; + parsedBody: InformationProtectionPolicy; }; }; /** - * Contains response data for the update operation. + * Contains response data for the list operation. */ -export type WorkspaceSettingsUpdateResponse = WorkspaceSetting & { +export type InformationProtectionPoliciesListResponse = InformationProtectionPolicyList & { /** * The underlying HTTP response. */ @@ -2410,17 +6276,18 @@ export type WorkspaceSettingsUpdateResponse = WorkspaceSetting & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: WorkspaceSetting; + parsedBody: InformationProtectionPolicyList; }; }; /** * Contains response data for the listNext operation. */ -export type WorkspaceSettingsListNextResponse = WorkspaceSettingList & { +export type InformationProtectionPoliciesListNextResponse = InformationProtectionPolicyList & { /** * The underlying HTTP response. */ @@ -2429,17 +6296,18 @@ export type WorkspaceSettingsListNextResponse = WorkspaceSettingList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: WorkspaceSettingList; + parsedBody: InformationProtectionPolicyList; }; }; /** * Contains response data for the list operation. */ -export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList & { +export type SecurityContactsListResponse = SecurityContactList & { /** * The underlying HTTP response. */ @@ -2448,17 +6316,18 @@ export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList & * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AutoProvisioningSettingList; + parsedBody: SecurityContactList; }; }; /** * Contains response data for the get operation. */ -export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting & { +export type SecurityContactsGetResponse = SecurityContact & { /** * The underlying HTTP response. */ @@ -2467,17 +6336,18 @@ export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AutoProvisioningSetting; + parsedBody: SecurityContact; }; }; /** * Contains response data for the create operation. */ -export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting & { +export type SecurityContactsCreateResponse = SecurityContact & { /** * The underlying HTTP response. */ @@ -2486,17 +6356,38 @@ export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AutoProvisioningSetting; + parsedBody: SecurityContact; + }; +}; + +/** + * Contains response data for the update operation. + */ +export type SecurityContactsUpdateResponse = SecurityContact & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: SecurityContact; }; }; /** * Contains response data for the listNext operation. */ -export type AutoProvisioningSettingsListNextResponse = AutoProvisioningSettingList & { +export type SecurityContactsListNextResponse = SecurityContactList & { /** * The underlying HTTP response. */ @@ -2505,17 +6396,18 @@ export type AutoProvisioningSettingsListNextResponse = AutoProvisioningSettingLi * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AutoProvisioningSettingList; + parsedBody: SecurityContactList; }; }; /** * Contains response data for the list operation. */ -export type CompliancesListResponse = ComplianceList & { +export type WorkspaceSettingsListResponse = WorkspaceSettingList & { /** * The underlying HTTP response. */ @@ -2524,17 +6416,18 @@ export type CompliancesListResponse = ComplianceList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ComplianceList; + parsedBody: WorkspaceSettingList; }; }; /** * Contains response data for the get operation. */ -export type CompliancesGetResponse = Compliance & { +export type WorkspaceSettingsGetResponse = WorkspaceSetting & { /** * The underlying HTTP response. */ @@ -2543,17 +6436,18 @@ export type CompliancesGetResponse = Compliance & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Compliance; + parsedBody: WorkspaceSetting; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the create operation. */ -export type CompliancesListNextResponse = ComplianceList & { +export type WorkspaceSettingsCreateResponse = WorkspaceSetting & { /** * The underlying HTTP response. */ @@ -2562,17 +6456,18 @@ export type CompliancesListNextResponse = ComplianceList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ComplianceList; + parsedBody: WorkspaceSetting; }; }; /** - * Contains response data for the get operation. + * Contains response data for the update operation. */ -export type AdvancedThreatProtectionGetResponse = AdvancedThreatProtectionSetting & { +export type WorkspaceSettingsUpdateResponse = WorkspaceSetting & { /** * The underlying HTTP response. */ @@ -2581,17 +6476,18 @@ export type AdvancedThreatProtectionGetResponse = AdvancedThreatProtectionSettin * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AdvancedThreatProtectionSetting; + parsedBody: WorkspaceSetting; }; }; /** - * Contains response data for the create operation. + * Contains response data for the listNext operation. */ -export type AdvancedThreatProtectionCreateResponse = AdvancedThreatProtectionSetting & { +export type WorkspaceSettingsListNextResponse = WorkspaceSettingList & { /** * The underlying HTTP response. */ @@ -2600,17 +6496,18 @@ export type AdvancedThreatProtectionCreateResponse = AdvancedThreatProtectionSet * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AdvancedThreatProtectionSetting; + parsedBody: WorkspaceSettingList; }; }; /** * Contains response data for the list operation. */ -export type SettingsListResponse = SettingsList & { +export type RegulatoryComplianceStandardsListResponse = RegulatoryComplianceStandardList & { /** * The underlying HTTP response. */ @@ -2619,17 +6516,18 @@ export type SettingsListResponse = SettingsList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SettingsList; + parsedBody: RegulatoryComplianceStandardList; }; }; /** * Contains response data for the get operation. */ -export type SettingsGetResponse = SettingUnion & { +export type RegulatoryComplianceStandardsGetResponse = RegulatoryComplianceStandard & { /** * The underlying HTTP response. */ @@ -2638,17 +6536,18 @@ export type SettingsGetResponse = SettingUnion & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SettingUnion; + parsedBody: RegulatoryComplianceStandard; }; }; /** - * Contains response data for the update operation. + * Contains response data for the listNext operation. */ -export type SettingsUpdateResponse = SettingUnion & { +export type RegulatoryComplianceStandardsListNextResponse = RegulatoryComplianceStandardList & { /** * The underlying HTTP response. */ @@ -2657,17 +6556,18 @@ export type SettingsUpdateResponse = SettingUnion & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SettingUnion; + parsedBody: RegulatoryComplianceStandardList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the list operation. */ -export type SettingsListNextResponse = SettingsList & { +export type RegulatoryComplianceControlsListResponse = RegulatoryComplianceControlList & { /** * The underlying HTTP response. */ @@ -2676,17 +6576,18 @@ export type SettingsListNextResponse = SettingsList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SettingsList; + parsedBody: RegulatoryComplianceControlList; }; }; /** * Contains response data for the get operation. */ -export type InformationProtectionPoliciesGetResponse = InformationProtectionPolicy & { +export type RegulatoryComplianceControlsGetResponse = RegulatoryComplianceControl & { /** * The underlying HTTP response. */ @@ -2695,17 +6596,18 @@ export type InformationProtectionPoliciesGetResponse = InformationProtectionPoli * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: InformationProtectionPolicy; + parsedBody: RegulatoryComplianceControl; }; }; /** - * Contains response data for the createOrUpdate operation. + * Contains response data for the listNext operation. */ -export type InformationProtectionPoliciesCreateOrUpdateResponse = InformationProtectionPolicy & { +export type RegulatoryComplianceControlsListNextResponse = RegulatoryComplianceControlList & { /** * The underlying HTTP response. */ @@ -2714,17 +6616,18 @@ export type InformationProtectionPoliciesCreateOrUpdateResponse = InformationPro * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: InformationProtectionPolicy; + parsedBody: RegulatoryComplianceControlList; }; }; /** * Contains response data for the list operation. */ -export type InformationProtectionPoliciesListResponse = InformationProtectionPolicyList & { +export type RegulatoryComplianceAssessmentsListResponse = RegulatoryComplianceAssessmentList & { /** * The underlying HTTP response. */ @@ -2733,17 +6636,18 @@ export type InformationProtectionPoliciesListResponse = InformationProtectionPol * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: InformationProtectionPolicyList; + parsedBody: RegulatoryComplianceAssessmentList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the get operation. */ -export type InformationProtectionPoliciesListNextResponse = InformationProtectionPolicyList & { +export type RegulatoryComplianceAssessmentsGetResponse = RegulatoryComplianceAssessment & { /** * The underlying HTTP response. */ @@ -2752,17 +6656,18 @@ export type InformationProtectionPoliciesListNextResponse = InformationProtectio * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: InformationProtectionPolicyList; + parsedBody: RegulatoryComplianceAssessment; }; }; /** - * Contains response data for the list operation. + * Contains response data for the listNext operation. */ -export type OperationsListResponse = OperationList & { +export type RegulatoryComplianceAssessmentsListNextResponse = RegulatoryComplianceAssessmentList & { /** * The underlying HTTP response. */ @@ -2771,17 +6676,18 @@ export type OperationsListResponse = OperationList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: OperationList; + parsedBody: RegulatoryComplianceAssessmentList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listByExtendedResource operation. */ -export type OperationsListNextResponse = OperationList & { +export type ServerVulnerabilityAssessmentListByExtendedResourceResponse = ServerVulnerabilityAssessmentsList & { /** * The underlying HTTP response. */ @@ -2790,17 +6696,18 @@ export type OperationsListNextResponse = OperationList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: OperationList; + parsedBody: ServerVulnerabilityAssessmentsList; }; }; /** - * Contains response data for the list operation. + * Contains response data for the get operation. */ -export type LocationsListResponse = AscLocationList & { +export type ServerVulnerabilityAssessmentGetResponse = ServerVulnerabilityAssessment & { /** * The underlying HTTP response. */ @@ -2809,17 +6716,18 @@ export type LocationsListResponse = AscLocationList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AscLocationList; + parsedBody: ServerVulnerabilityAssessment; }; }; /** - * Contains response data for the get operation. + * Contains response data for the createOrUpdate operation. */ -export type LocationsGetResponse = AscLocation & { +export type ServerVulnerabilityAssessmentCreateOrUpdateResponse = ServerVulnerabilityAssessment & { /** * The underlying HTTP response. */ @@ -2828,17 +6736,18 @@ export type LocationsGetResponse = AscLocation & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AscLocation; + parsedBody: ServerVulnerabilityAssessment; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listAll operation. */ -export type LocationsListNextResponse = AscLocationList & { +export type SubAssessmentsListAllResponse = SecuritySubAssessmentList & { /** * The underlying HTTP response. */ @@ -2847,17 +6756,18 @@ export type LocationsListNextResponse = AscLocationList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AscLocationList; + parsedBody: SecuritySubAssessmentList; }; }; /** * Contains response data for the list operation. */ -export type TasksListResponse = SecurityTaskList & { +export type SubAssessmentsListResponse = SecuritySubAssessmentList & { /** * The underlying HTTP response. */ @@ -2866,17 +6776,18 @@ export type TasksListResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: SecuritySubAssessmentList; }; }; /** - * Contains response data for the listByHomeRegion operation. + * Contains response data for the get operation. */ -export type TasksListByHomeRegionResponse = SecurityTaskList & { +export type SubAssessmentsGetResponse = SecuritySubAssessment & { /** * The underlying HTTP response. */ @@ -2885,17 +6796,18 @@ export type TasksListByHomeRegionResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: SecuritySubAssessment; }; }; /** - * Contains response data for the getSubscriptionLevelTask operation. + * Contains response data for the listAllNext operation. */ -export type TasksGetSubscriptionLevelTaskResponse = SecurityTask & { +export type SubAssessmentsListAllNextResponse = SecuritySubAssessmentList & { /** * The underlying HTTP response. */ @@ -2904,17 +6816,18 @@ export type TasksGetSubscriptionLevelTaskResponse = SecurityTask & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTask; + parsedBody: SecuritySubAssessmentList; }; }; /** - * Contains response data for the listByResourceGroup operation. + * Contains response data for the listNext operation. */ -export type TasksListByResourceGroupResponse = SecurityTaskList & { +export type SubAssessmentsListNextResponse = SecuritySubAssessmentList & { /** * The underlying HTTP response. */ @@ -2923,17 +6836,18 @@ export type TasksListByResourceGroupResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: SecuritySubAssessmentList; }; }; /** - * Contains response data for the getResourceGroupLevelTask operation. + * Contains response data for the list operation. */ -export type TasksGetResourceGroupLevelTaskResponse = SecurityTask & { +export type AutomationsListResponse = AutomationList & { /** * The underlying HTTP response. */ @@ -2942,17 +6856,18 @@ export type TasksGetResourceGroupLevelTaskResponse = SecurityTask & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTask; + parsedBody: AutomationList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listByResourceGroup operation. */ -export type TasksListNextResponse = SecurityTaskList & { +export type AutomationsListByResourceGroupResponse = AutomationList & { /** * The underlying HTTP response. */ @@ -2961,17 +6876,18 @@ export type TasksListNextResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: AutomationList; }; }; /** - * Contains response data for the listByHomeRegionNext operation. + * Contains response data for the get operation. */ -export type TasksListByHomeRegionNextResponse = SecurityTaskList & { +export type AutomationsGetResponse = Automation & { /** * The underlying HTTP response. */ @@ -2980,17 +6896,18 @@ export type TasksListByHomeRegionNextResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: Automation; }; }; /** - * Contains response data for the listByResourceGroupNext operation. + * Contains response data for the createOrUpdate operation. */ -export type TasksListByResourceGroupNextResponse = SecurityTaskList & { +export type AutomationsCreateOrUpdateResponse = Automation & { /** * The underlying HTTP response. */ @@ -2999,17 +6916,18 @@ export type TasksListByResourceGroupNextResponse = SecurityTaskList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: SecurityTaskList; + parsedBody: Automation; }; }; /** - * Contains response data for the list operation. + * Contains response data for the validate operation. */ -export type AlertsListResponse = AlertList & { +export type AutomationsValidateResponse = AutomationValidationStatus & { /** * The underlying HTTP response. */ @@ -3018,17 +6936,18 @@ export type AlertsListResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: AutomationValidationStatus; }; }; /** - * Contains response data for the listByResourceGroup operation. + * Contains response data for the listNext operation. */ -export type AlertsListByResourceGroupResponse = AlertList & { +export type AutomationsListNextResponse = AutomationList & { /** * The underlying HTTP response. */ @@ -3037,17 +6956,18 @@ export type AlertsListByResourceGroupResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: AutomationList; }; }; /** - * Contains response data for the listSubscriptionLevelAlertsByRegion operation. + * Contains response data for the listByResourceGroupNext operation. */ -export type AlertsListSubscriptionLevelAlertsByRegionResponse = AlertList & { +export type AutomationsListByResourceGroupNextResponse = AutomationList & { /** * The underlying HTTP response. */ @@ -3056,17 +6976,18 @@ export type AlertsListSubscriptionLevelAlertsByRegionResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: AutomationList; }; }; /** - * Contains response data for the listResourceGroupLevelAlertsByRegion operation. + * Contains response data for the list operation. */ -export type AlertsListResourceGroupLevelAlertsByRegionResponse = AlertList & { +export type AssessmentsMetadataListResponse = SecurityAssessmentMetadataList & { /** * The underlying HTTP response. */ @@ -3075,17 +6996,18 @@ export type AlertsListResourceGroupLevelAlertsByRegionResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: SecurityAssessmentMetadataList; }; }; /** - * Contains response data for the getSubscriptionLevelAlert operation. + * Contains response data for the get operation. */ -export type AlertsGetSubscriptionLevelAlertResponse = Alert & { +export type AssessmentsMetadataGetResponse = SecurityAssessmentMetadata & { /** * The underlying HTTP response. */ @@ -3094,17 +7016,18 @@ export type AlertsGetSubscriptionLevelAlertResponse = Alert & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Alert; + parsedBody: SecurityAssessmentMetadata; }; }; /** - * Contains response data for the getResourceGroupLevelAlerts operation. + * Contains response data for the listBySubscription operation. */ -export type AlertsGetResourceGroupLevelAlertsResponse = Alert & { +export type AssessmentsMetadataListBySubscriptionResponse = SecurityAssessmentMetadataList & { /** * The underlying HTTP response. */ @@ -3113,17 +7036,18 @@ export type AlertsGetResourceGroupLevelAlertsResponse = Alert & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: Alert; + parsedBody: SecurityAssessmentMetadataList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the getInSubscription operation. */ -export type AlertsListNextResponse = AlertList & { +export type AssessmentsMetadataGetInSubscriptionResponse = SecurityAssessmentMetadata & { /** * The underlying HTTP response. */ @@ -3132,17 +7056,18 @@ export type AlertsListNextResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: SecurityAssessmentMetadata; }; }; /** - * Contains response data for the listByResourceGroupNext operation. + * Contains response data for the createInSubscription operation. */ -export type AlertsListByResourceGroupNextResponse = AlertList & { +export type AssessmentsMetadataCreateInSubscriptionResponse = SecurityAssessmentMetadata & { /** * The underlying HTTP response. */ @@ -3151,17 +7076,18 @@ export type AlertsListByResourceGroupNextResponse = AlertList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: SecurityAssessmentMetadata; }; }; /** - * Contains response data for the listSubscriptionLevelAlertsByRegionNext operation. + * Contains response data for the listNext operation. */ -export type AlertsListSubscriptionLevelAlertsByRegionNextResponse = AlertList & { +export type AssessmentsMetadataListNextResponse = SecurityAssessmentMetadataList & { /** * The underlying HTTP response. */ @@ -3170,17 +7096,18 @@ export type AlertsListSubscriptionLevelAlertsByRegionNextResponse = AlertList & * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: SecurityAssessmentMetadataList; }; }; /** - * Contains response data for the listResourceGroupLevelAlertsByRegionNext operation. + * Contains response data for the listBySubscriptionNext operation. */ -export type AlertsListResourceGroupLevelAlertsByRegionNextResponse = AlertList & { +export type AssessmentsMetadataListBySubscriptionNextResponse = SecurityAssessmentMetadataList & { /** * The underlying HTTP response. */ @@ -3189,17 +7116,18 @@ export type AlertsListResourceGroupLevelAlertsByRegionNextResponse = AlertList & * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AlertList; + parsedBody: SecurityAssessmentMetadataList; }; }; /** * Contains response data for the list operation. */ -export type DiscoveredSecuritySolutionsListResponse = DiscoveredSecuritySolutionList & { +export type AssessmentsListResponse = SecurityAssessmentList & { /** * The underlying HTTP response. */ @@ -3208,17 +7136,18 @@ export type DiscoveredSecuritySolutionsListResponse = DiscoveredSecuritySolution * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: DiscoveredSecuritySolutionList; + parsedBody: SecurityAssessmentList; }; }; /** - * Contains response data for the listByHomeRegion operation. + * Contains response data for the get operation. */ -export type DiscoveredSecuritySolutionsListByHomeRegionResponse = DiscoveredSecuritySolutionList & { +export type AssessmentsGetResponse = SecurityAssessment & { /** * The underlying HTTP response. */ @@ -3227,17 +7156,18 @@ export type DiscoveredSecuritySolutionsListByHomeRegionResponse = DiscoveredSecu * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: DiscoveredSecuritySolutionList; + parsedBody: SecurityAssessment; }; }; /** - * Contains response data for the get operation. + * Contains response data for the createOrUpdate operation. */ -export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution & { +export type AssessmentsCreateOrUpdateResponse = SecurityAssessment & { /** * The underlying HTTP response. */ @@ -3246,17 +7176,18 @@ export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: DiscoveredSecuritySolution; + parsedBody: SecurityAssessment; }; }; /** * Contains response data for the listNext operation. */ -export type DiscoveredSecuritySolutionsListNextResponse = DiscoveredSecuritySolutionList & { +export type AssessmentsListNextResponse = SecurityAssessmentList & { /** * The underlying HTTP response. */ @@ -3265,17 +7196,18 @@ export type DiscoveredSecuritySolutionsListNextResponse = DiscoveredSecuritySolu * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: DiscoveredSecuritySolutionList; + parsedBody: SecurityAssessmentList; }; }; /** - * Contains response data for the listByHomeRegionNext operation. + * Contains response data for the list operation. */ -export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = DiscoveredSecuritySolutionList & { +export type AdaptiveApplicationControlsListResponse = AppWhitelistingGroups & { /** * The underlying HTTP response. */ @@ -3284,17 +7216,18 @@ export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = Discovered * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: DiscoveredSecuritySolutionList; + parsedBody: AppWhitelistingGroups; }; }; /** - * Contains response data for the list operation. + * Contains response data for the get operation. */ -export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList & { +export type AdaptiveApplicationControlsGetResponse = AppWhitelistingGroup & { /** * The underlying HTTP response. */ @@ -3303,17 +7236,18 @@ export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AppWhitelistingGroup; }; }; /** - * Contains response data for the listByRegion operation. + * Contains response data for the put operation. */ -export type JitNetworkAccessPoliciesListByRegionResponse = JitNetworkAccessPoliciesList & { +export type AdaptiveApplicationControlsPutResponse = AppWhitelistingGroup & { /** * The underlying HTTP response. */ @@ -3322,17 +7256,18 @@ export type JitNetworkAccessPoliciesListByRegionResponse = JitNetworkAccessPolic * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AppWhitelistingGroup; }; }; /** - * Contains response data for the listByResourceGroup operation. + * Contains response data for the listByExtendedResource operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupResponse = JitNetworkAccessPoliciesList & { +export type AdaptiveNetworkHardeningsListByExtendedResourceResponse = AdaptiveNetworkHardeningsList & { /** * The underlying HTTP response. */ @@ -3341,17 +7276,18 @@ export type JitNetworkAccessPoliciesListByResourceGroupResponse = JitNetworkAcce * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AdaptiveNetworkHardeningsList; }; }; /** - * Contains response data for the listByResourceGroupAndRegion operation. + * Contains response data for the get operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = JitNetworkAccessPoliciesList & { +export type AdaptiveNetworkHardeningsGetResponse = AdaptiveNetworkHardening & { /** * The underlying HTTP response. */ @@ -3360,17 +7296,18 @@ export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = JitNe * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AdaptiveNetworkHardening; }; }; /** - * Contains response data for the get operation. + * Contains response data for the listByExtendedResourceNext operation. */ -export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy & { +export type AdaptiveNetworkHardeningsListByExtendedResourceNextResponse = AdaptiveNetworkHardeningsList & { /** * The underlying HTTP response. */ @@ -3379,17 +7316,18 @@ export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPolicy; + parsedBody: AdaptiveNetworkHardeningsList; }; }; /** - * Contains response data for the createOrUpdate operation. + * Contains response data for the list operation. */ -export type JitNetworkAccessPoliciesCreateOrUpdateResponse = JitNetworkAccessPolicy & { +export type AllowedConnectionsListResponse = AllowedConnectionsList & { /** * The underlying HTTP response. */ @@ -3398,17 +7336,18 @@ export type JitNetworkAccessPoliciesCreateOrUpdateResponse = JitNetworkAccessPol * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPolicy; + parsedBody: AllowedConnectionsList; }; }; /** - * Contains response data for the initiate operation. + * Contains response data for the listByHomeRegion operation. */ -export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest & { +export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList & { /** * The underlying HTTP response. */ @@ -3417,17 +7356,18 @@ export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest & * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessRequest; + parsedBody: AllowedConnectionsList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the get operation. */ -export type JitNetworkAccessPoliciesListNextResponse = JitNetworkAccessPoliciesList & { +export type AllowedConnectionsGetResponse = AllowedConnectionsResource & { /** * The underlying HTTP response. */ @@ -3436,17 +7376,18 @@ export type JitNetworkAccessPoliciesListNextResponse = JitNetworkAccessPoliciesL * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AllowedConnectionsResource; }; }; /** - * Contains response data for the listByRegionNext operation. + * Contains response data for the listNext operation. */ -export type JitNetworkAccessPoliciesListByRegionNextResponse = JitNetworkAccessPoliciesList & { +export type AllowedConnectionsListNextResponse = AllowedConnectionsList & { /** * The underlying HTTP response. */ @@ -3455,17 +7396,18 @@ export type JitNetworkAccessPoliciesListByRegionNextResponse = JitNetworkAccessP * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AllowedConnectionsList; }; }; /** - * Contains response data for the listByResourceGroupNext operation. + * Contains response data for the listByHomeRegionNext operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = JitNetworkAccessPoliciesList & { +export type AllowedConnectionsListByHomeRegionNextResponse = AllowedConnectionsList & { /** * The underlying HTTP response. */ @@ -3474,17 +7416,18 @@ export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = JitNetwork * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: AllowedConnectionsList; }; }; /** - * Contains response data for the listByResourceGroupAndRegionNext operation. + * Contains response data for the list operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = JitNetworkAccessPoliciesList & { +export type TopologyListResponse = TopologyList & { /** * The underlying HTTP response. */ @@ -3493,17 +7436,18 @@ export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = J * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: JitNetworkAccessPoliciesList; + parsedBody: TopologyList; }; }; /** - * Contains response data for the list operation. + * Contains response data for the listByHomeRegion operation. */ -export type ExternalSecuritySolutionsListResponse = ExternalSecuritySolutionList & { +export type TopologyListByHomeRegionResponse = TopologyList & { /** * The underlying HTTP response. */ @@ -3512,17 +7456,18 @@ export type ExternalSecuritySolutionsListResponse = ExternalSecuritySolutionList * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ExternalSecuritySolutionList; + parsedBody: TopologyList; }; }; /** - * Contains response data for the listByHomeRegion operation. + * Contains response data for the get operation. */ -export type ExternalSecuritySolutionsListByHomeRegionResponse = ExternalSecuritySolutionList & { +export type TopologyGetResponse = TopologyResource & { /** * The underlying HTTP response. */ @@ -3531,17 +7476,18 @@ export type ExternalSecuritySolutionsListByHomeRegionResponse = ExternalSecurity * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ExternalSecuritySolutionList; + parsedBody: TopologyResource; }; }; /** - * Contains response data for the get operation. + * Contains response data for the listNext operation. */ -export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolutionUnion & { +export type TopologyListNextResponse = TopologyList & { /** * The underlying HTTP response. */ @@ -3550,17 +7496,18 @@ export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolutionUnion * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ExternalSecuritySolutionUnion; + parsedBody: TopologyList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listByHomeRegionNext operation. */ -export type ExternalSecuritySolutionsListNextResponse = ExternalSecuritySolutionList & { +export type TopologyListByHomeRegionNextResponse = TopologyList & { /** * The underlying HTTP response. */ @@ -3569,17 +7516,18 @@ export type ExternalSecuritySolutionsListNextResponse = ExternalSecuritySolution * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ExternalSecuritySolutionList; + parsedBody: TopologyList; }; }; /** - * Contains response data for the listByHomeRegionNext operation. + * Contains response data for the list operation. */ -export type ExternalSecuritySolutionsListByHomeRegionNextResponse = ExternalSecuritySolutionList & { +export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3588,17 +7536,18 @@ export type ExternalSecuritySolutionsListByHomeRegionNextResponse = ExternalSecu * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: ExternalSecuritySolutionList; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the list operation. + * Contains response data for the listByRegion operation. */ -export type TopologyListResponse = TopologyList & { +export type JitNetworkAccessPoliciesListByRegionResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3607,17 +7556,18 @@ export type TopologyListResponse = TopologyList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: TopologyList; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the listByHomeRegion operation. + * Contains response data for the listByResourceGroup operation. */ -export type TopologyListByHomeRegionResponse = TopologyList & { +export type JitNetworkAccessPoliciesListByResourceGroupResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3626,17 +7576,18 @@ export type TopologyListByHomeRegionResponse = TopologyList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: TopologyList; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the get operation. + * Contains response data for the listByResourceGroupAndRegion operation. */ -export type TopologyGetResponse = TopologyResource & { +export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3645,17 +7596,18 @@ export type TopologyGetResponse = TopologyResource & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: TopologyResource; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the get operation. */ -export type TopologyListNextResponse = TopologyList & { +export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy & { /** * The underlying HTTP response. */ @@ -3664,17 +7616,18 @@ export type TopologyListNextResponse = TopologyList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: TopologyList; + parsedBody: JitNetworkAccessPolicy; }; }; /** - * Contains response data for the listByHomeRegionNext operation. + * Contains response data for the createOrUpdate operation. */ -export type TopologyListByHomeRegionNextResponse = TopologyList & { +export type JitNetworkAccessPoliciesCreateOrUpdateResponse = JitNetworkAccessPolicy & { /** * The underlying HTTP response. */ @@ -3683,17 +7636,18 @@ export type TopologyListByHomeRegionNextResponse = TopologyList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: TopologyList; + parsedBody: JitNetworkAccessPolicy; }; }; /** - * Contains response data for the list operation. + * Contains response data for the initiate operation. */ -export type AllowedConnectionsListResponse = AllowedConnectionsList & { +export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest & { /** * The underlying HTTP response. */ @@ -3702,17 +7656,18 @@ export type AllowedConnectionsListResponse = AllowedConnectionsList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AllowedConnectionsList; + parsedBody: JitNetworkAccessRequest; }; }; /** - * Contains response data for the listByHomeRegion operation. + * Contains response data for the listNext operation. */ -export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList & { +export type JitNetworkAccessPoliciesListNextResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3721,17 +7676,18 @@ export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AllowedConnectionsList; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the get operation. + * Contains response data for the listByRegionNext operation. */ -export type AllowedConnectionsGetResponse = AllowedConnectionsResource & { +export type JitNetworkAccessPoliciesListByRegionNextResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3740,17 +7696,18 @@ export type AllowedConnectionsGetResponse = AllowedConnectionsResource & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AllowedConnectionsResource; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the listNext operation. + * Contains response data for the listByResourceGroupNext operation. */ -export type AllowedConnectionsListNextResponse = AllowedConnectionsList & { +export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3759,17 +7716,18 @@ export type AllowedConnectionsListNextResponse = AllowedConnectionsList & { * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AllowedConnectionsList; + parsedBody: JitNetworkAccessPoliciesList; }; }; /** - * Contains response data for the listByHomeRegionNext operation. + * Contains response data for the listByResourceGroupAndRegionNext operation. */ -export type AllowedConnectionsListByHomeRegionNextResponse = AllowedConnectionsList & { +export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = JitNetworkAccessPoliciesList & { /** * The underlying HTTP response. */ @@ -3778,9 +7736,10 @@ export type AllowedConnectionsListByHomeRegionNextResponse = AllowedConnectionsL * The response body as text (string format) */ bodyAsText: string; + /** * The response body as parsed JSON or XML */ - parsedBody: AllowedConnectionsList; + parsedBody: JitNetworkAccessPoliciesList; }; }; diff --git a/sdk/security/arm-security/src/models/informationProtectionPoliciesMappers.ts b/sdk/security/arm-security/src/models/informationProtectionPoliciesMappers.ts index 427b115cf9f7..0b92e5f30b44 100644 --- a/sdk/security/arm-security/src/models/informationProtectionPoliciesMappers.ts +++ b/sdk/security/arm-security/src/models/informationProtectionPoliciesMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - InformationProtectionPolicy, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, - SensitivityLabel, - InformationType, - InformationProtectionKeyword, CloudError, - InformationProtectionPolicyList, - SecurityContact, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationProtectionPolicyList, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/iotSecuritySolutionAnalyticsMappers.ts b/sdk/security/arm-security/src/models/iotSecuritySolutionAnalyticsMappers.ts new file mode 100644 index 000000000000..863785e9c933 --- /dev/null +++ b/sdk/security/arm-security/src/models/iotSecuritySolutionAnalyticsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelList, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/iotSecuritySolutionMappers.ts b/sdk/security/arm-security/src/models/iotSecuritySolutionMappers.ts new file mode 100644 index 000000000000..82c7cc05a088 --- /dev/null +++ b/sdk/security/arm-security/src/models/iotSecuritySolutionMappers.ts @@ -0,0 +1,18 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + CloudError, + IoTSecuritySolutionModel, + IoTSecuritySolutionsList, + RecommendationConfigurationProperties, + TagsResource, + UpdateIotSecuritySolutionData, + UserDefinedResourcesProperties +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsAggregatedAlertMappers.ts b/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsAggregatedAlertMappers.ts new file mode 100644 index 000000000000..abdd83a924b0 --- /dev/null +++ b/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsAggregatedAlertMappers.ts @@ -0,0 +1,15 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + CloudError, + IoTSecurityAggregatedAlert, + IoTSecurityAggregatedAlertList, + IoTSecurityAggregatedAlertPropertiesTopDevicesListItem +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsRecommendationMappers.ts b/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsRecommendationMappers.ts new file mode 100644 index 000000000000..d0e756980cf6 --- /dev/null +++ b/sdk/security/arm-security/src/models/iotSecuritySolutionsAnalyticsRecommendationMappers.ts @@ -0,0 +1,14 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + CloudError, + IoTSecurityAggregatedRecommendation, + IoTSecurityAggregatedRecommendationList +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/jitNetworkAccessPoliciesMappers.ts b/sdk/security/arm-security/src/models/jitNetworkAccessPoliciesMappers.ts index c7f8d5b68006..81a91877bca5 100644 --- a/sdk/security/arm-security/src/models/jitNetworkAccessPoliciesMappers.ts +++ b/sdk/security/arm-security/src/models/jitNetworkAccessPoliciesMappers.ts @@ -1,25 +1,22 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, + CloudError, JitNetworkAccessPoliciesList, JitNetworkAccessPolicy, + JitNetworkAccessPolicyInitiatePort, + JitNetworkAccessPolicyInitiateRequest, + JitNetworkAccessPolicyInitiateVirtualMachine, JitNetworkAccessPolicyVirtualMachine, JitNetworkAccessPortRule, JitNetworkAccessRequest, - JitNetworkAccessRequestVirtualMachine, JitNetworkAccessRequestPort, - CloudError, - JitNetworkAccessPolicyInitiateRequest, - JitNetworkAccessPolicyInitiateVirtualMachine, - JitNetworkAccessPolicyInitiatePort + JitNetworkAccessRequestVirtualMachine } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/locationsMappers.ts b/sdk/security/arm-security/src/models/locationsMappers.ts index a9e459ba15e8..41871c550125 100644 --- a/sdk/security/arm-security/src/models/locationsMappers.ts +++ b/sdk/security/arm-security/src/models/locationsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - AscLocationList, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, AscLocation, - Resource, + AscLocationList, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/mappers.ts b/sdk/security/arm-security/src/models/mappers.ts index b54822ca337d..2b50928bede8 100644 --- a/sdk/security/arm-security/src/models/mappers.ts +++ b/sdk/security/arm-security/src/models/mappers.ts @@ -1,11 +1,9 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js"; @@ -45,14 +43,16 @@ export const Resource: msRest.CompositeMapper = { } }; -export const Kind: msRest.CompositeMapper = { - serializedName: "Kind", +export const ComplianceResult: msRest.CompositeMapper = { + serializedName: "ComplianceResult", type: { name: "Composite", - className: "Kind", + className: "ComplianceResult", modelProperties: { - kind: { - serializedName: "kind", + ...Resource.type.modelProperties, + resourceStatus: { + readOnly: true, + serializedName: "properties.resourceStatus", type: { name: "String" } @@ -61,97 +61,93 @@ export const Kind: msRest.CompositeMapper = { } }; -export const SecurityContact: msRest.CompositeMapper = { - serializedName: "SecurityContact", +export const AscLocation: msRest.CompositeMapper = { + serializedName: "AscLocation", type: { name: "Composite", - className: "SecurityContact", + className: "AscLocation", modelProperties: { ...Resource.type.modelProperties, - email: { - required: true, - serializedName: "properties.email", + properties: { + serializedName: "properties", + type: { + name: "Object" + } + } + } + } +}; + +export const TrackedResource: msRest.CompositeMapper = { + serializedName: "TrackedResource", + type: { + name: "Composite", + className: "TrackedResource", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", type: { name: "String" } }, - phone: { - serializedName: "properties.phone", + name: { + readOnly: true, + serializedName: "name", type: { name: "String" } }, - alertNotifications: { - required: true, - serializedName: "properties.alertNotifications", + type: { + readOnly: true, + serializedName: "type", type: { name: "String" } }, - alertsToAdmins: { - required: true, - serializedName: "properties.alertsToAdmins", + location: { + readOnly: true, + serializedName: "location", type: { name: "String" } - } - } - } -}; - -export const Pricing: msRest.CompositeMapper = { - serializedName: "Pricing", - type: { - name: "Composite", - className: "Pricing", - modelProperties: { - ...Resource.type.modelProperties, - pricingTier: { - required: true, - serializedName: "properties.pricingTier", + }, + kind: { + serializedName: "kind", type: { name: "String" } - } - } - } -}; - -export const WorkspaceSetting: msRest.CompositeMapper = { - serializedName: "WorkspaceSetting", - type: { - name: "Composite", - className: "WorkspaceSetting", - modelProperties: { - ...Resource.type.modelProperties, - workspaceId: { - required: true, - serializedName: "properties.workspaceId", + }, + etag: { + serializedName: "etag", type: { name: "String" } }, - scope: { - required: true, - serializedName: "properties.scope", + tags: { + serializedName: "tags", type: { - name: "String" + name: "Dictionary", + value: { + type: { + name: "String" + } + } } } } } }; -export const AutoProvisioningSetting: msRest.CompositeMapper = { - serializedName: "AutoProvisioningSetting", +export const Location: msRest.CompositeMapper = { + serializedName: "Location", type: { name: "Composite", - className: "AutoProvisioningSetting", + className: "Location", modelProperties: { - ...Resource.type.modelProperties, - autoProvision: { - required: true, - serializedName: "properties.autoProvision", + location: { + readOnly: true, + serializedName: "location", type: { name: "String" } @@ -160,329 +156,3835 @@ export const AutoProvisioningSetting: msRest.CompositeMapper = { } }; -export const ComplianceSegment: msRest.CompositeMapper = { - serializedName: "ComplianceSegment", +export const Kind: msRest.CompositeMapper = { + serializedName: "Kind", type: { name: "Composite", - className: "ComplianceSegment", + className: "Kind", modelProperties: { - segmentType: { - readOnly: true, - serializedName: "segmentType", + kind: { + serializedName: "kind", type: { name: "String" } - }, - percentage: { - readOnly: true, - serializedName: "percentage", - type: { - name: "Number" - } } } } }; -export const Compliance: msRest.CompositeMapper = { - serializedName: "Compliance", +export const ETag: msRest.CompositeMapper = { + serializedName: "ETag", type: { name: "Composite", - className: "Compliance", + className: "ETag", modelProperties: { - ...Resource.type.modelProperties, - assessmentTimestampUtcDate: { - readOnly: true, - serializedName: "properties.assessmentTimestampUtcDate", - type: { - name: "DateTime" - } - }, - resourceCount: { - readOnly: true, - serializedName: "properties.resourceCount", - type: { - name: "Number" - } - }, - assessmentResult: { - readOnly: true, - serializedName: "properties.assessmentResult", + etag: { + serializedName: "etag", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ComplianceSegment" - } - } + name: "String" } } } } }; -export const AdvancedThreatProtectionSetting: msRest.CompositeMapper = { - serializedName: "AdvancedThreatProtectionSetting", +export const Tags: msRest.CompositeMapper = { + serializedName: "Tags", type: { name: "Composite", - className: "AdvancedThreatProtectionSetting", + className: "Tags", modelProperties: { - ...Resource.type.modelProperties, - isEnabled: { - serializedName: "properties.isEnabled", + tags: { + serializedName: "tags", type: { - name: "Boolean" + name: "Dictionary", + value: { + type: { + name: "String" + } + } } } } } }; -export const Setting: msRest.CompositeMapper = { - serializedName: "Setting", +export const Pricing: msRest.CompositeMapper = { + serializedName: "Pricing", type: { name: "Composite", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind" - }, - uberParent: "Setting", - className: "Setting", + className: "Pricing", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", + ...Resource.type.modelProperties, + pricingTier: { + required: true, + serializedName: "properties.pricingTier", type: { name: "String" } }, - type: { + freeTrialRemainingTime: { readOnly: true, - serializedName: "type", + serializedName: "properties.freeTrialRemainingTime", type: { - name: "String" - } - }, - kind: { - required: true, - serializedName: "kind", - type: { - name: "String" + name: "TimeSpan" } } } } }; -export const DataExportSetting: msRest.CompositeMapper = { - serializedName: "DataExportSetting", +export const PricingList: msRest.CompositeMapper = { + serializedName: "PricingList", type: { name: "Composite", - polymorphicDiscriminator: Setting.type.polymorphicDiscriminator, - uberParent: "Setting", - className: "DataExportSetting", + className: "PricingList", modelProperties: { - ...Setting.type.modelProperties, - enabled: { + value: { required: true, - serializedName: "properties.enabled", + serializedName: "value", type: { - name: "Boolean" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Pricing" + } + } } } } } }; -export const SettingKind1: msRest.CompositeMapper = { - serializedName: "SettingKind", +export const AlertEntity: msRest.CompositeMapper = { + serializedName: "AlertEntity", type: { name: "Composite", - className: "SettingKind1", + className: "AlertEntity", modelProperties: { - kind: { - serializedName: "kind", + type: { + readOnly: true, + serializedName: "type", type: { name: "String" } } + }, + additionalProperties: { + type: { + name: "Object" + } } } }; -export const SensitivityLabel: msRest.CompositeMapper = { - serializedName: "SensitivityLabel", +export const AlertConfidenceReason: msRest.CompositeMapper = { + serializedName: "AlertConfidenceReason", type: { name: "Composite", - className: "SensitivityLabel", + className: "AlertConfidenceReason", modelProperties: { - displayName: { - serializedName: "displayName", + type: { + readOnly: true, + serializedName: "type", type: { name: "String" } }, - order: { - serializedName: "order", - type: { - name: "Number" - } - }, - enabled: { - serializedName: "enabled", + reason: { + readOnly: true, + serializedName: "reason", type: { - name: "Boolean" + name: "String" } } } } }; -export const InformationProtectionKeyword: msRest.CompositeMapper = { - serializedName: "InformationProtectionKeyword", +export const Alert: msRest.CompositeMapper = { + serializedName: "Alert", + type: { + name: "Composite", + className: "Alert", + modelProperties: { + ...Resource.type.modelProperties, + state: { + readOnly: true, + serializedName: "properties.state", + type: { + name: "String" + } + }, + reportedTimeUtc: { + readOnly: true, + serializedName: "properties.reportedTimeUtc", + type: { + name: "DateTime" + } + }, + vendorName: { + readOnly: true, + serializedName: "properties.vendorName", + type: { + name: "String" + } + }, + alertName: { + readOnly: true, + serializedName: "properties.alertName", + type: { + name: "String" + } + }, + alertDisplayName: { + readOnly: true, + serializedName: "properties.alertDisplayName", + type: { + name: "String" + } + }, + detectedTimeUtc: { + readOnly: true, + serializedName: "properties.detectedTimeUtc", + type: { + name: "DateTime" + } + }, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + remediationSteps: { + readOnly: true, + serializedName: "properties.remediationSteps", + type: { + name: "String" + } + }, + actionTaken: { + readOnly: true, + serializedName: "properties.actionTaken", + type: { + name: "String" + } + }, + reportedSeverity: { + readOnly: true, + serializedName: "properties.reportedSeverity", + type: { + name: "String" + } + }, + compromisedEntity: { + readOnly: true, + serializedName: "properties.compromisedEntity", + type: { + name: "String" + } + }, + associatedResource: { + readOnly: true, + serializedName: "properties.associatedResource", + type: { + name: "String" + } + }, + extendedProperties: { + serializedName: "properties.extendedProperties", + type: { + name: "Dictionary", + value: { + type: { + name: "Object" + } + } + } + }, + systemSource: { + readOnly: true, + serializedName: "properties.systemSource", + type: { + name: "String" + } + }, + canBeInvestigated: { + readOnly: true, + serializedName: "properties.canBeInvestigated", + type: { + name: "Boolean" + } + }, + isIncident: { + readOnly: true, + serializedName: "properties.isIncident", + type: { + name: "Boolean" + } + }, + entities: { + serializedName: "properties.entities", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AlertEntity", + additionalProperties: { + type: { + name: "Object" + } + } + } + } + } + }, + confidenceScore: { + readOnly: true, + serializedName: "properties.confidenceScore", + constraints: { + InclusiveMaximum: 1, + InclusiveMinimum: 0 + }, + type: { + name: "Number" + } + }, + confidenceReasons: { + serializedName: "properties.confidenceReasons", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AlertConfidenceReason" + } + } + } + }, + subscriptionId: { + readOnly: true, + serializedName: "properties.subscriptionId", + type: { + name: "String" + } + }, + instanceId: { + readOnly: true, + serializedName: "properties.instanceId", + type: { + name: "String" + } + }, + workspaceArmId: { + readOnly: true, + serializedName: "properties.workspaceArmId", + type: { + name: "String" + } + }, + correlationKey: { + readOnly: true, + serializedName: "properties.correlationKey", + type: { + name: "String" + } + } + } + } +}; + +export const SettingResource: msRest.CompositeMapper = { + serializedName: "SettingResource", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "kind", + clientName: "kind" + }, + uberParent: "BaseResource", + className: "SettingResource", + modelProperties: { + ...Resource.type.modelProperties, + kind: { + required: true, + serializedName: "kind", + type: { + name: "String" + } + } + }, + additionalProperties: { + type: { + name: "Object" + } + } + } +}; + +export const Setting: msRest.CompositeMapper = { + serializedName: "Setting", + type: { + name: "Composite", + className: "Setting", + modelProperties: { + ...SettingResource.type.modelProperties + }, + additionalProperties: SettingResource.type.additionalProperties + } +}; + +export const DataExportSettings: msRest.CompositeMapper = { + serializedName: "DataExportSettings", + type: { + name: "Composite", + className: "DataExportSettings", + modelProperties: { + ...Setting.type.modelProperties, + enabled: { + required: true, + serializedName: "properties.enabled", + type: { + name: "Boolean" + } + } + }, + additionalProperties: SettingResource.type.additionalProperties + } +}; + +export const AdvancedThreatProtectionSetting: msRest.CompositeMapper = { + serializedName: "AdvancedThreatProtectionSetting", + type: { + name: "Composite", + className: "AdvancedThreatProtectionSetting", + modelProperties: { + ...Resource.type.modelProperties, + isEnabled: { + serializedName: "properties.isEnabled", + type: { + name: "Boolean" + } + } + } + } +}; + +export const CustomAlertRule: msRest.CompositeMapper = { + serializedName: "CustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "ruleType", + clientName: "ruleType" + }, + uberParent: "CustomAlertRule", + className: "CustomAlertRule", + modelProperties: { + displayName: { + readOnly: true, + serializedName: "displayName", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "description", + type: { + name: "String" + } + }, + isEnabled: { + required: true, + serializedName: "isEnabled", + type: { + name: "Boolean" + } + }, + ruleType: { + required: true, + serializedName: "ruleType", + type: { + name: "String" + } + } + } + } +}; + +export const ThresholdCustomAlertRule: msRest.CompositeMapper = { + serializedName: "ThresholdCustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "ThresholdCustomAlertRule", + modelProperties: { + ...CustomAlertRule.type.modelProperties, + minThreshold: { + required: true, + serializedName: "minThreshold", + type: { + name: "Number" + } + }, + maxThreshold: { + required: true, + serializedName: "maxThreshold", + type: { + name: "Number" + } + } + } + } +}; + +export const TimeWindowCustomAlertRule: msRest.CompositeMapper = { + serializedName: "TimeWindowCustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "TimeWindowCustomAlertRule", + modelProperties: { + ...ThresholdCustomAlertRule.type.modelProperties, + timeWindowSize: { + required: true, + serializedName: "timeWindowSize", + type: { + name: "TimeSpan" + } + } + } + } +}; + +export const ListCustomAlertRule: msRest.CompositeMapper = { + serializedName: "ListCustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "ListCustomAlertRule", + modelProperties: { + ...CustomAlertRule.type.modelProperties, + valueType: { + readOnly: true, + serializedName: "valueType", + type: { + name: "String" + } + } + } + } +}; + +export const AllowlistCustomAlertRule: msRest.CompositeMapper = { + serializedName: "AllowlistCustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "AllowlistCustomAlertRule", + modelProperties: { + ...ListCustomAlertRule.type.modelProperties, + allowlistValues: { + required: true, + serializedName: "allowlistValues", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const DenylistCustomAlertRule: msRest.CompositeMapper = { + serializedName: "DenylistCustomAlertRule", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "DenylistCustomAlertRule", + modelProperties: { + ...ListCustomAlertRule.type.modelProperties, + denylistValues: { + required: true, + serializedName: "denylistValues", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const DeviceSecurityGroup: msRest.CompositeMapper = { + serializedName: "DeviceSecurityGroup", + type: { + name: "Composite", + className: "DeviceSecurityGroup", + modelProperties: { + ...Resource.type.modelProperties, + thresholdRules: { + serializedName: "properties.thresholdRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ThresholdCustomAlertRule" + } + } + } + }, + timeWindowRules: { + serializedName: "properties.timeWindowRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "TimeWindowCustomAlertRule" + } + } + } + }, + allowlistRules: { + serializedName: "properties.allowlistRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AllowlistCustomAlertRule" + } + } + } + }, + denylistRules: { + serializedName: "properties.denylistRules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DenylistCustomAlertRule" + } + } + } + } + } + } +}; + +export const ConnectionToIpNotAllowed: msRest.CompositeMapper = { + serializedName: "ConnectionToIpNotAllowed", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "ConnectionToIpNotAllowed", + modelProperties: { + ...AllowlistCustomAlertRule.type.modelProperties + } + } +}; + +export const LocalUserNotAllowed: msRest.CompositeMapper = { + serializedName: "LocalUserNotAllowed", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "LocalUserNotAllowed", + modelProperties: { + ...AllowlistCustomAlertRule.type.modelProperties + } + } +}; + +export const ProcessNotAllowed: msRest.CompositeMapper = { + serializedName: "ProcessNotAllowed", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "ProcessNotAllowed", + modelProperties: { + ...AllowlistCustomAlertRule.type.modelProperties + } + } +}; + +export const ActiveConnectionsNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "ActiveConnectionsNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "ActiveConnectionsNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const AmqpC2DMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "AmqpC2DMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "AmqpC2DMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const MqttC2DMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "MqttC2DMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "MqttC2DMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const HttpC2DMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "HttpC2DMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "HttpC2DMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const AmqpC2DRejectedMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "AmqpC2DRejectedMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "AmqpC2DRejectedMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const MqttC2DRejectedMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "MqttC2DRejectedMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "MqttC2DRejectedMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const HttpC2DRejectedMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "HttpC2DRejectedMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "HttpC2DRejectedMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const AmqpD2CMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "AmqpD2CMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "AmqpD2CMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const MqttD2CMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "MqttD2CMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "MqttD2CMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const HttpD2CMessagesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "HttpD2CMessagesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "HttpD2CMessagesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const DirectMethodInvokesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "DirectMethodInvokesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "DirectMethodInvokesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const FailedLocalLoginsNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "FailedLocalLoginsNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "FailedLocalLoginsNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const FileUploadsNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "FileUploadsNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "FileUploadsNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const QueuePurgesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "QueuePurgesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "QueuePurgesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const TwinUpdatesNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "TwinUpdatesNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "TwinUpdatesNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const UnauthorizedOperationsNotInAllowedRange: msRest.CompositeMapper = { + serializedName: "UnauthorizedOperationsNotInAllowedRange", + type: { + name: "Composite", + polymorphicDiscriminator: CustomAlertRule.type.polymorphicDiscriminator, + uberParent: "CustomAlertRule", + className: "UnauthorizedOperationsNotInAllowedRange", + modelProperties: { + ...TimeWindowCustomAlertRule.type.modelProperties + } + } +}; + +export const TagsResource: msRest.CompositeMapper = { + serializedName: "TagsResource", + type: { + name: "Composite", + className: "TagsResource", + modelProperties: { + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const UserDefinedResourcesProperties: msRest.CompositeMapper = { + serializedName: "UserDefinedResourcesProperties", + type: { + name: "Composite", + className: "UserDefinedResourcesProperties", + modelProperties: { + query: { + required: true, + nullable: true, + serializedName: "query", + type: { + name: "String" + } + }, + querySubscriptions: { + required: true, + nullable: true, + serializedName: "querySubscriptions", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + } + } + } +}; + +export const RecommendationConfigurationProperties: msRest.CompositeMapper = { + serializedName: "RecommendationConfigurationProperties", + type: { + name: "Composite", + className: "RecommendationConfigurationProperties", + modelProperties: { + recommendationType: { + required: true, + serializedName: "recommendationType", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + status: { + required: true, + serializedName: "status", + defaultValue: 'Enabled', + type: { + name: "String" + } + } + } + } +}; + +export const IoTSecuritySolutionModel: msRest.CompositeMapper = { + serializedName: "IoTSecuritySolutionModel", + type: { + name: "Composite", + className: "IoTSecuritySolutionModel", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + location: { + serializedName: "location", + type: { + name: "String" + } + }, + workspace: { + required: true, + serializedName: "properties.workspace", + type: { + name: "String" + } + }, + displayName: { + required: true, + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + defaultValue: 'Enabled', + type: { + name: "String" + } + }, + exportProperty: { + serializedName: "properties.export", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + disabledDataSources: { + serializedName: "properties.disabledDataSources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + iotHubs: { + required: true, + serializedName: "properties.iotHubs", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + userDefinedResources: { + serializedName: "properties.userDefinedResources", + type: { + name: "Composite", + className: "UserDefinedResourcesProperties" + } + }, + autoDiscoveredResources: { + readOnly: true, + serializedName: "properties.autoDiscoveredResources", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + recommendationsConfiguration: { + serializedName: "properties.recommendationsConfiguration", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RecommendationConfigurationProperties" + } + } + } + }, + unmaskedIpLoggingStatus: { + serializedName: "properties.unmaskedIpLoggingStatus", + defaultValue: 'Disabled', + type: { + name: "String" + } + } + } + } +}; + +export const UpdateIotSecuritySolutionData: msRest.CompositeMapper = { + serializedName: "UpdateIotSecuritySolutionData", + type: { + name: "Composite", + className: "UpdateIotSecuritySolutionData", + modelProperties: { + ...TagsResource.type.modelProperties, + userDefinedResources: { + serializedName: "properties.userDefinedResources", + type: { + name: "Composite", + className: "UserDefinedResourcesProperties" + } + }, + recommendationsConfiguration: { + serializedName: "properties.recommendationsConfiguration", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RecommendationConfigurationProperties" + } + } + } + } + } + } +}; + +export const IoTSeverityMetrics: msRest.CompositeMapper = { + serializedName: "IoTSeverityMetrics", + type: { + name: "Composite", + className: "IoTSeverityMetrics", + modelProperties: { + high: { + serializedName: "high", + type: { + name: "Number" + } + }, + medium: { + serializedName: "medium", + type: { + name: "Number" + } + }, + low: { + serializedName: "low", + type: { + name: "Number" + } + } + } + } +}; + +export const IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem: msRest.CompositeMapper = { + serializedName: "IoTSecuritySolutionAnalyticsModelProperties_devicesMetricsItem", + type: { + name: "Composite", + className: "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem", + modelProperties: { + date: { + serializedName: "date", + type: { + name: "DateTime" + } + }, + devicesMetrics: { + serializedName: "devicesMetrics", + type: { + name: "Composite", + className: "IoTSeverityMetrics" + } + } + } + } +}; + +export const IoTSecurityAlertedDevice: msRest.CompositeMapper = { + serializedName: "IoTSecurityAlertedDevice", + type: { + name: "Composite", + className: "IoTSecurityAlertedDevice", + modelProperties: { + deviceId: { + readOnly: true, + serializedName: "deviceId", + type: { + name: "String" + } + }, + alertsCount: { + readOnly: true, + serializedName: "alertsCount", + type: { + name: "Number" + } + } + } + } +}; + +export const IoTSecurityDeviceAlert: msRest.CompositeMapper = { + serializedName: "IoTSecurityDeviceAlert", + type: { + name: "Composite", + className: "IoTSecurityDeviceAlert", + modelProperties: { + alertDisplayName: { + readOnly: true, + serializedName: "alertDisplayName", + type: { + name: "String" + } + }, + reportedSeverity: { + readOnly: true, + serializedName: "reportedSeverity", + type: { + name: "String" + } + }, + alertsCount: { + readOnly: true, + serializedName: "alertsCount", + type: { + name: "Number" + } + } + } + } +}; + +export const IoTSecurityDeviceRecommendation: msRest.CompositeMapper = { + serializedName: "IoTSecurityDeviceRecommendation", + type: { + name: "Composite", + className: "IoTSecurityDeviceRecommendation", + modelProperties: { + recommendationDisplayName: { + readOnly: true, + serializedName: "recommendationDisplayName", + type: { + name: "String" + } + }, + reportedSeverity: { + readOnly: true, + serializedName: "reportedSeverity", + type: { + name: "String" + } + }, + devicesCount: { + readOnly: true, + serializedName: "devicesCount", + type: { + name: "Number" + } + } + } + } +}; + +export const IoTSecuritySolutionAnalyticsModel: msRest.CompositeMapper = { + serializedName: "IoTSecuritySolutionAnalyticsModel", + type: { + name: "Composite", + className: "IoTSecuritySolutionAnalyticsModel", + modelProperties: { + ...Resource.type.modelProperties, + metrics: { + readOnly: true, + serializedName: "properties.metrics", + type: { + name: "Composite", + className: "IoTSeverityMetrics" + } + }, + unhealthyDeviceCount: { + readOnly: true, + serializedName: "properties.unhealthyDeviceCount", + type: { + name: "Number" + } + }, + devicesMetrics: { + readOnly: true, + serializedName: "properties.devicesMetrics", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem" + } + } + } + }, + topAlertedDevices: { + serializedName: "properties.topAlertedDevices", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityAlertedDevice" + } + } + } + }, + mostPrevalentDeviceAlerts: { + serializedName: "properties.mostPrevalentDeviceAlerts", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityDeviceAlert" + } + } + } + }, + mostPrevalentDeviceRecommendations: { + serializedName: "properties.mostPrevalentDeviceRecommendations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityDeviceRecommendation" + } + } + } + } + } + } +}; + +export const IoTSecuritySolutionAnalyticsModelList: msRest.CompositeMapper = { + serializedName: "IoTSecuritySolutionAnalyticsModelList", + type: { + name: "Composite", + className: "IoTSecuritySolutionAnalyticsModelList", + modelProperties: { + value: { + required: true, + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecuritySolutionAnalyticsModel" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } + } + } + } +}; + +export const IoTSecurityAggregatedAlertPropertiesTopDevicesListItem: msRest.CompositeMapper = { + serializedName: "IoTSecurityAggregatedAlertProperties_topDevicesListItem", + type: { + name: "Composite", + className: "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", + modelProperties: { + deviceId: { + readOnly: true, + serializedName: "deviceId", + type: { + name: "String" + } + }, + alertsCount: { + readOnly: true, + serializedName: "alertsCount", + type: { + name: "Number" + } + }, + lastOccurrence: { + readOnly: true, + serializedName: "lastOccurrence", + type: { + name: "String" + } + } + } + } +}; + +export const IoTSecurityAggregatedAlert: msRest.CompositeMapper = { + serializedName: "IoTSecurityAggregatedAlert", + type: { + name: "Composite", + className: "IoTSecurityAggregatedAlert", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + alertType: { + readOnly: true, + serializedName: "properties.alertType", + type: { + name: "String" + } + }, + alertDisplayName: { + readOnly: true, + serializedName: "properties.alertDisplayName", + type: { + name: "String" + } + }, + aggregatedDateUtc: { + readOnly: true, + serializedName: "properties.aggregatedDateUtc", + type: { + name: "Date" + } + }, + vendorName: { + readOnly: true, + serializedName: "properties.vendorName", + type: { + name: "String" + } + }, + reportedSeverity: { + readOnly: true, + serializedName: "properties.reportedSeverity", + type: { + name: "String" + } + }, + remediationSteps: { + readOnly: true, + serializedName: "properties.remediationSteps", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + count: { + readOnly: true, + serializedName: "properties.count", + type: { + name: "Number" + } + }, + effectedResourceType: { + readOnly: true, + serializedName: "properties.effectedResourceType", + type: { + name: "String" + } + }, + systemSource: { + readOnly: true, + serializedName: "properties.systemSource", + type: { + name: "String" + } + }, + actionTaken: { + readOnly: true, + serializedName: "properties.actionTaken", + type: { + name: "String" + } + }, + logAnalyticsQuery: { + readOnly: true, + serializedName: "properties.logAnalyticsQuery", + type: { + name: "String" + } + }, + topDevicesList: { + readOnly: true, + serializedName: "properties.topDevicesList", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem" + } + } + } + } + } + } +}; + +export const IoTSecurityAggregatedRecommendation: msRest.CompositeMapper = { + serializedName: "IoTSecurityAggregatedRecommendation", + type: { + name: "Composite", + className: "IoTSecurityAggregatedRecommendation", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + tags: { + serializedName: "tags", + type: { + name: "Dictionary", + value: { + type: { + name: "String" + } + } + } + }, + recommendationName: { + serializedName: "properties.recommendationName", + type: { + name: "String" + } + }, + recommendationDisplayName: { + readOnly: true, + serializedName: "properties.recommendationDisplayName", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + recommendationTypeId: { + readOnly: true, + serializedName: "properties.recommendationTypeId", + type: { + name: "String" + } + }, + detectedBy: { + readOnly: true, + serializedName: "properties.detectedBy", + type: { + name: "String" + } + }, + remediationSteps: { + readOnly: true, + serializedName: "properties.remediationSteps", + type: { + name: "String" + } + }, + reportedSeverity: { + readOnly: true, + serializedName: "properties.reportedSeverity", + type: { + name: "String" + } + }, + healthyDevices: { + readOnly: true, + serializedName: "properties.healthyDevices", + type: { + name: "Number" + } + }, + unhealthyDeviceCount: { + readOnly: true, + serializedName: "properties.unhealthyDeviceCount", + type: { + name: "Number" + } + }, + logAnalyticsQuery: { + readOnly: true, + serializedName: "properties.logAnalyticsQuery", + type: { + name: "String" + } + } + } + } +}; + +export const DiscoveredSecuritySolution: msRest.CompositeMapper = { + serializedName: "DiscoveredSecuritySolution", + type: { + name: "Composite", + className: "DiscoveredSecuritySolution", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + location: { + readOnly: true, + serializedName: "location", + type: { + name: "String" + } + }, + securityFamily: { + required: true, + serializedName: "properties.securityFamily", + type: { + name: "String" + } + }, + offer: { + required: true, + serializedName: "properties.offer", + type: { + name: "String" + } + }, + publisher: { + required: true, + serializedName: "properties.publisher", + type: { + name: "String" + } + }, + sku: { + required: true, + serializedName: "properties.sku", + type: { + name: "String" + } + } + } + } +}; + +export const ExternalSecuritySolution: msRest.CompositeMapper = { + serializedName: "ExternalSecuritySolution", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "kind", + clientName: "kind" + }, + uberParent: "ExternalSecuritySolution", + className: "ExternalSecuritySolution", + modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + location: { + readOnly: true, + serializedName: "location", + type: { + name: "String" + } + }, + kind: { + required: true, + serializedName: "kind", + type: { + name: "String" + } + } + } + } +}; + +export const ExternalSecuritySolutionProperties: msRest.CompositeMapper = { + serializedName: "ExternalSecuritySolutionProperties", + type: { + name: "Composite", + className: "ExternalSecuritySolutionProperties", + modelProperties: { + deviceVendor: { + serializedName: "deviceVendor", + type: { + name: "String" + } + }, + deviceType: { + serializedName: "deviceType", + type: { + name: "String" + } + }, + workspace: { + serializedName: "workspace", + type: { + name: "Composite", + className: "ConnectedWorkspace" + } + } + }, + additionalProperties: { + type: { + name: "Object" + } + } + } +}; + +export const CefSolutionProperties: msRest.CompositeMapper = { + serializedName: "CefSolutionProperties", + type: { + name: "Composite", + className: "CefSolutionProperties", + modelProperties: { + ...ExternalSecuritySolutionProperties.type.modelProperties, + hostname: { + serializedName: "hostname", + type: { + name: "String" + } + }, + agent: { + serializedName: "agent", + type: { + name: "String" + } + }, + lastEventReceived: { + serializedName: "lastEventReceived", + type: { + name: "String" + } + } + }, + additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } +}; + +export const CefExternalSecuritySolution: msRest.CompositeMapper = { + serializedName: "CEF", + type: { + name: "Composite", + polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, + uberParent: "ExternalSecuritySolution", + className: "CefExternalSecuritySolution", + modelProperties: { + ...ExternalSecuritySolution.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "CefSolutionProperties", + additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } + } + } + } +}; + +export const AtaSolutionProperties: msRest.CompositeMapper = { + serializedName: "AtaSolutionProperties", + type: { + name: "Composite", + className: "AtaSolutionProperties", + modelProperties: { + ...ExternalSecuritySolutionProperties.type.modelProperties, + lastEventReceived: { + serializedName: "lastEventReceived", + type: { + name: "String" + } + } + }, + additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } +}; + +export const AtaExternalSecuritySolution: msRest.CompositeMapper = { + serializedName: "ATA", + type: { + name: "Composite", + polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, + uberParent: "ExternalSecuritySolution", + className: "AtaExternalSecuritySolution", + modelProperties: { + ...ExternalSecuritySolution.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "AtaSolutionProperties", + additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } + } + } + } +}; + +export const ConnectedWorkspace: msRest.CompositeMapper = { + serializedName: "ConnectedWorkspace", + type: { + name: "Composite", + className: "ConnectedWorkspace", + modelProperties: { + id: { + serializedName: "id", + type: { + name: "String" + } + } + } + } +}; + +export const AadSolutionProperties: msRest.CompositeMapper = { + serializedName: "AadSolutionProperties", + type: { + name: "Composite", + className: "AadSolutionProperties", + modelProperties: { + deviceVendor: { + serializedName: "deviceVendor", + type: { + name: "String" + } + }, + deviceType: { + serializedName: "deviceType", + type: { + name: "String" + } + }, + workspace: { + serializedName: "workspace", + type: { + name: "Composite", + className: "ConnectedWorkspace" + } + }, + connectivityState: { + serializedName: "connectivityState", + type: { + name: "String" + } + } + } + } +}; + +export const AadExternalSecuritySolution: msRest.CompositeMapper = { + serializedName: "AAD", + type: { + name: "Composite", + polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, + uberParent: "ExternalSecuritySolution", + className: "AadExternalSecuritySolution", + modelProperties: { + ...ExternalSecuritySolution.type.modelProperties, + properties: { + serializedName: "properties", + type: { + name: "Composite", + className: "AadSolutionProperties" + } + } + } + } +}; + +export const ExternalSecuritySolutionKind1: msRest.CompositeMapper = { + serializedName: "ExternalSecuritySolutionKind", + type: { + name: "Composite", + className: "ExternalSecuritySolutionKind1", + modelProperties: { + kind: { + serializedName: "kind", + type: { + name: "String" + } + } + } + } +}; + +export const AadConnectivityState1: msRest.CompositeMapper = { + serializedName: "AadConnectivityState", + type: { + name: "Composite", + className: "AadConnectivityState1", + modelProperties: { + connectivityState: { + serializedName: "connectivityState", + type: { + name: "String" + } + } + } + } +}; + +export const OperationDisplay: msRest.CompositeMapper = { + serializedName: "OperationDisplay", + type: { + name: "Composite", + className: "OperationDisplay", + modelProperties: { + provider: { + readOnly: true, + serializedName: "provider", + type: { + name: "String" + } + }, + resource: { + readOnly: true, + serializedName: "resource", + type: { + name: "String" + } + }, + operation: { + readOnly: true, + serializedName: "operation", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "description", + type: { + name: "String" + } + } + } + } +}; + +export const Operation: msRest.CompositeMapper = { + serializedName: "Operation", + type: { + name: "Composite", + className: "Operation", + modelProperties: { + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + }, + origin: { + readOnly: true, + serializedName: "origin", + type: { + name: "String" + } + }, + display: { + serializedName: "display", + type: { + name: "Composite", + className: "OperationDisplay" + } + } + } + } +}; + +export const SecurityTaskParameters: msRest.CompositeMapper = { + serializedName: "SecurityTaskParameters", + type: { + name: "Composite", + className: "SecurityTaskParameters", + modelProperties: { + name: { + readOnly: true, + serializedName: "name", + type: { + name: "String" + } + } + }, + additionalProperties: { + type: { + name: "Object" + } + } + } +}; + +export const SecurityTask: msRest.CompositeMapper = { + serializedName: "SecurityTask", + type: { + name: "Composite", + className: "SecurityTask", + modelProperties: { + ...Resource.type.modelProperties, + state: { + readOnly: true, + serializedName: "properties.state", + type: { + name: "String" + } + }, + creationTimeUtc: { + readOnly: true, + serializedName: "properties.creationTimeUtc", + type: { + name: "DateTime" + } + }, + securityTaskParameters: { + serializedName: "properties.securityTaskParameters", + type: { + name: "Composite", + className: "SecurityTaskParameters", + additionalProperties: { + type: { + name: "Object" + } + } + } + }, + lastStateChangeTimeUtc: { + readOnly: true, + serializedName: "properties.lastStateChangeTimeUtc", + type: { + name: "DateTime" + } + }, + subState: { + readOnly: true, + serializedName: "properties.subState", + type: { + name: "String" + } + } + } + } +}; + +export const AutoProvisioningSetting: msRest.CompositeMapper = { + serializedName: "AutoProvisioningSetting", + type: { + name: "Composite", + className: "AutoProvisioningSetting", + modelProperties: { + ...Resource.type.modelProperties, + autoProvision: { + required: true, + serializedName: "properties.autoProvision", + type: { + name: "String" + } + } + } + } +}; + +export const ComplianceSegment: msRest.CompositeMapper = { + serializedName: "ComplianceSegment", + type: { + name: "Composite", + className: "ComplianceSegment", + modelProperties: { + segmentType: { + readOnly: true, + serializedName: "segmentType", + type: { + name: "String" + } + }, + percentage: { + readOnly: true, + serializedName: "percentage", + type: { + name: "Number" + } + } + } + } +}; + +export const Compliance: msRest.CompositeMapper = { + serializedName: "Compliance", + type: { + name: "Composite", + className: "Compliance", + modelProperties: { + ...Resource.type.modelProperties, + assessmentTimestampUtcDate: { + readOnly: true, + serializedName: "properties.assessmentTimestampUtcDate", + type: { + name: "DateTime" + } + }, + resourceCount: { + readOnly: true, + serializedName: "properties.resourceCount", + type: { + name: "Number" + } + }, + assessmentResult: { + readOnly: true, + serializedName: "properties.assessmentResult", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ComplianceSegment" + } + } + } + } + } + } +}; + +export const SensitivityLabel: msRest.CompositeMapper = { + serializedName: "SensitivityLabel", + type: { + name: "Composite", + className: "SensitivityLabel", + modelProperties: { + displayName: { + serializedName: "displayName", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + rank: { + serializedName: "rank", + type: { + name: "Enum", + allowedValues: [ + "None", + "Low", + "Medium", + "High", + "Critical" + ] + } + }, + order: { + serializedName: "order", + type: { + name: "Number" + } + }, + enabled: { + serializedName: "enabled", + type: { + name: "Boolean" + } + } + } + } +}; + +export const InformationProtectionKeyword: msRest.CompositeMapper = { + serializedName: "InformationProtectionKeyword", type: { name: "Composite", className: "InformationProtectionKeyword", modelProperties: { - pattern: { - serializedName: "pattern", + pattern: { + serializedName: "pattern", + type: { + name: "String" + } + }, + custom: { + serializedName: "custom", + type: { + name: "Boolean" + } + }, + canBeNumeric: { + serializedName: "canBeNumeric", + type: { + name: "Boolean" + } + }, + excluded: { + serializedName: "excluded", + type: { + name: "Boolean" + } + } + } + } +}; + +export const InformationType: msRest.CompositeMapper = { + serializedName: "InformationType", + type: { + name: "Composite", + className: "InformationType", + modelProperties: { + displayName: { + serializedName: "displayName", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + order: { + serializedName: "order", + type: { + name: "Number" + } + }, + recommendedLabelId: { + serializedName: "recommendedLabelId", + type: { + name: "Uuid" + } + }, + enabled: { + serializedName: "enabled", + type: { + name: "Boolean" + } + }, + custom: { + serializedName: "custom", + type: { + name: "Boolean" + } + }, + keywords: { + serializedName: "keywords", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InformationProtectionKeyword" + } + } + } + } + } + } +}; + +export const InformationProtectionPolicy: msRest.CompositeMapper = { + serializedName: "InformationProtectionPolicy", + type: { + name: "Composite", + className: "InformationProtectionPolicy", + modelProperties: { + ...Resource.type.modelProperties, + lastModifiedUtc: { + readOnly: true, + serializedName: "properties.lastModifiedUtc", + type: { + name: "DateTime" + } + }, + version: { + readOnly: true, + serializedName: "properties.version", + type: { + name: "String" + } + }, + labels: { + serializedName: "properties.labels", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: "SensitivityLabel" + } + } + } + }, + informationTypes: { + serializedName: "properties.informationTypes", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: "InformationType" + } + } + } + } + } + } +}; + +export const SecurityContact: msRest.CompositeMapper = { + serializedName: "SecurityContact", + type: { + name: "Composite", + className: "SecurityContact", + modelProperties: { + ...Resource.type.modelProperties, + email: { + required: true, + serializedName: "properties.email", + type: { + name: "String" + } + }, + phone: { + serializedName: "properties.phone", + type: { + name: "String" + } + }, + alertNotifications: { + required: true, + serializedName: "properties.alertNotifications", + type: { + name: "String" + } + }, + alertsToAdmins: { + required: true, + serializedName: "properties.alertsToAdmins", + type: { + name: "String" + } + } + } + } +}; + +export const WorkspaceSetting: msRest.CompositeMapper = { + serializedName: "WorkspaceSetting", + type: { + name: "Composite", + className: "WorkspaceSetting", + modelProperties: { + ...Resource.type.modelProperties, + workspaceId: { + required: true, + serializedName: "properties.workspaceId", + type: { + name: "String" + } + }, + scope: { + required: true, + serializedName: "properties.scope", + type: { + name: "String" + } + } + } + } +}; + +export const RegulatoryComplianceStandard: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceStandard", + type: { + name: "Composite", + className: "RegulatoryComplianceStandard", + modelProperties: { + ...Resource.type.modelProperties, + state: { + serializedName: "properties.state", + type: { + name: "String" + } + }, + passedControls: { + readOnly: true, + serializedName: "properties.passedControls", + type: { + name: "Number" + } + }, + failedControls: { + readOnly: true, + serializedName: "properties.failedControls", + type: { + name: "Number" + } + }, + skippedControls: { + readOnly: true, + serializedName: "properties.skippedControls", + type: { + name: "Number" + } + }, + unsupportedControls: { + readOnly: true, + serializedName: "properties.unsupportedControls", + type: { + name: "Number" + } + } + } + } +}; + +export const RegulatoryComplianceControl: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceControl", + type: { + name: "Composite", + className: "RegulatoryComplianceControl", + modelProperties: { + ...Resource.type.modelProperties, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + state: { + serializedName: "properties.state", + type: { + name: "String" + } + }, + passedAssessments: { + readOnly: true, + serializedName: "properties.passedAssessments", + type: { + name: "Number" + } + }, + failedAssessments: { + readOnly: true, + serializedName: "properties.failedAssessments", + type: { + name: "Number" + } + }, + skippedAssessments: { + readOnly: true, + serializedName: "properties.skippedAssessments", + type: { + name: "Number" + } + } + } + } +}; + +export const RegulatoryComplianceAssessment: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceAssessment", + type: { + name: "Composite", + className: "RegulatoryComplianceAssessment", + modelProperties: { + ...Resource.type.modelProperties, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + assessmentType: { + readOnly: true, + serializedName: "properties.assessmentType", + type: { + name: "String" + } + }, + assessmentDetailsLink: { + readOnly: true, + serializedName: "properties.assessmentDetailsLink", + type: { + name: "String" + } + }, + state: { + serializedName: "properties.state", + type: { + name: "String" + } + }, + passedResources: { + readOnly: true, + serializedName: "properties.passedResources", + type: { + name: "Number" + } + }, + failedResources: { + readOnly: true, + serializedName: "properties.failedResources", + type: { + name: "Number" + } + }, + skippedResources: { + readOnly: true, + serializedName: "properties.skippedResources", + type: { + name: "Number" + } + }, + unsupportedResources: { + readOnly: true, + serializedName: "properties.unsupportedResources", + type: { + name: "Number" + } + } + } + } +}; + +export const ServerVulnerabilityAssessment: msRest.CompositeMapper = { + serializedName: "ServerVulnerabilityAssessment", + type: { + name: "Composite", + className: "ServerVulnerabilityAssessment", + modelProperties: { + ...Resource.type.modelProperties, + provisioningState: { + readOnly: true, + serializedName: "properties.provisioningState", + type: { + name: "String" + } + } + } + } +}; + +export const ServerVulnerabilityAssessmentsList: msRest.CompositeMapper = { + serializedName: "ServerVulnerabilityAssessmentsList", + type: { + name: "Composite", + className: "ServerVulnerabilityAssessmentsList", + modelProperties: { + value: { + serializedName: "value", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ServerVulnerabilityAssessment" + } + } + } + } + } + } +}; + +export const SubAssessmentStatus: msRest.CompositeMapper = { + serializedName: "SubAssessmentStatus", + type: { + name: "Composite", + className: "SubAssessmentStatus", + modelProperties: { + code: { + readOnly: true, + serializedName: "code", + type: { + name: "String" + } + }, + cause: { + readOnly: true, + serializedName: "cause", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "description", + type: { + name: "String" + } + }, + severity: { + readOnly: true, + serializedName: "severity", + type: { + name: "String" + } + } + } + } +}; + +export const ResourceDetails: msRest.CompositeMapper = { + serializedName: "ResourceDetails", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "source", + clientName: "source" + }, + uberParent: "ResourceDetails", + className: "ResourceDetails", + modelProperties: { + source: { + required: true, + serializedName: "source", + type: { + name: "String" + } + } + } + } +}; + +export const AdditionalData: msRest.CompositeMapper = { + serializedName: "AdditionalData", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "assessedResourceType", + clientName: "assessedResourceType" + }, + uberParent: "AdditionalData", + className: "AdditionalData", + modelProperties: { + assessedResourceType: { + required: true, + serializedName: "assessedResourceType", + type: { + name: "String" + } + } + } + } +}; + +export const SecuritySubAssessment: msRest.CompositeMapper = { + serializedName: "SecuritySubAssessment", + type: { + name: "Composite", + className: "SecuritySubAssessment", + modelProperties: { + ...Resource.type.modelProperties, + securitySubAssessmentId: { + readOnly: true, + serializedName: "properties.id", + type: { + name: "String" + } + }, + displayName: { + readOnly: true, + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + status: { + serializedName: "properties.status", + type: { + name: "Composite", + className: "SubAssessmentStatus" + } + }, + remediation: { + readOnly: true, + serializedName: "properties.remediation", + type: { + name: "String" + } + }, + impact: { + readOnly: true, + serializedName: "properties.impact", + type: { + name: "String" + } + }, + category: { + readOnly: true, + serializedName: "properties.category", + type: { + name: "String" + } + }, + description: { + readOnly: true, + serializedName: "properties.description", + type: { + name: "String" + } + }, + timeGenerated: { + readOnly: true, + serializedName: "properties.timeGenerated", + type: { + name: "DateTime" + } + }, + resourceDetails: { + serializedName: "properties.resourceDetails", + type: { + name: "Composite", + className: "ResourceDetails" + } + }, + additionalData: { + serializedName: "properties.additionalData", + type: { + name: "Composite", + className: "AdditionalData" + } + } + } + } +}; + +export const SqlServerVulnerabilityProperties: msRest.CompositeMapper = { + serializedName: "SqlServerVulnerability", + type: { + name: "Composite", + polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, + uberParent: "AdditionalData", + className: "SqlServerVulnerabilityProperties", + modelProperties: { + ...AdditionalData.type.modelProperties, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + query: { + readOnly: true, + serializedName: "query", + type: { + name: "String" + } + } + } + } +}; + +export const CVSS: msRest.CompositeMapper = { + serializedName: "CVSS", + type: { + name: "Composite", + className: "CVSS", + modelProperties: { + base: { + readOnly: true, + serializedName: "base", + type: { + name: "Number" + } + } + } + } +}; + +export const CVE: msRest.CompositeMapper = { + serializedName: "CVE", + type: { + name: "Composite", + className: "CVE", + modelProperties: { + title: { + readOnly: true, + serializedName: "title", + type: { + name: "String" + } + }, + link: { + readOnly: true, + serializedName: "link", + type: { + name: "String" + } + } + } + } +}; + +export const VendorReference: msRest.CompositeMapper = { + serializedName: "VendorReference", + type: { + name: "Composite", + className: "VendorReference", + modelProperties: { + title: { + readOnly: true, + serializedName: "title", + type: { + name: "String" + } + }, + link: { + readOnly: true, + serializedName: "link", + type: { + name: "String" + } + } + } + } +}; + +export const ContainerRegistryVulnerabilityProperties: msRest.CompositeMapper = { + serializedName: "ContainerRegistryVulnerability", + type: { + name: "Composite", + polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, + uberParent: "AdditionalData", + className: "ContainerRegistryVulnerabilityProperties", + modelProperties: { + ...AdditionalData.type.modelProperties, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + cvss: { + readOnly: true, + serializedName: "cvss", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: "CVSS" + } + } + } + }, + patchable: { + readOnly: true, + serializedName: "patchable", + type: { + name: "Boolean" + } + }, + cve: { + readOnly: true, + serializedName: "cve", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CVE" + } + } + } + }, + publishedTime: { + readOnly: true, + serializedName: "publishedTime", + type: { + name: "DateTime" + } + }, + vendorReferences: { + readOnly: true, + serializedName: "vendorReferences", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VendorReference" + } + } + } + }, + repositoryName: { + readOnly: true, + serializedName: "repositoryName", + type: { + name: "String" + } + }, + imageDigest: { + readOnly: true, + serializedName: "imageDigest", + type: { + name: "String" + } + } + } + } +}; + +export const ServerVulnerabilityProperties: msRest.CompositeMapper = { + serializedName: "ServerVulnerabilityAssessment", + type: { + name: "Composite", + polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, + uberParent: "AdditionalData", + className: "ServerVulnerabilityProperties", + modelProperties: { + ...AdditionalData.type.modelProperties, + type: { + readOnly: true, + serializedName: "type", + type: { + name: "String" + } + }, + cvss: { + readOnly: true, + serializedName: "cvss", + type: { + name: "Dictionary", + value: { + type: { + name: "Composite", + className: "CVSS" + } + } + } + }, + patchable: { + readOnly: true, + serializedName: "patchable", + type: { + name: "Boolean" + } + }, + cve: { + readOnly: true, + serializedName: "cve", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "CVE" + } + } + } + }, + threat: { + readOnly: true, + serializedName: "threat", + type: { + name: "String" + } + }, + publishedTime: { + readOnly: true, + serializedName: "publishedTime", + type: { + name: "DateTime" + } + }, + vendorReferences: { + readOnly: true, + serializedName: "vendorReferences", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VendorReference" + } + } + } + } + } + } +}; + +export const OnPremiseResourceDetails: msRest.CompositeMapper = { + serializedName: "OnPremise", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceDetails.type.polymorphicDiscriminator, + uberParent: "ResourceDetails", + className: "OnPremiseResourceDetails", + modelProperties: { + ...ResourceDetails.type.modelProperties, + workspaceId: { + required: true, + serializedName: "workspaceId", + type: { + name: "String" + } + }, + vmuuid: { + required: true, + serializedName: "vmuuid", + type: { + name: "String" + } + }, + sourceComputerId: { + required: true, + serializedName: "sourceComputerId", + type: { + name: "String" + } + }, + machineName: { + required: true, + serializedName: "machineName", + type: { + name: "String" + } + } + } + } +}; + +export const AzureResourceDetails: msRest.CompositeMapper = { + serializedName: "Azure", + type: { + name: "Composite", + polymorphicDiscriminator: ResourceDetails.type.polymorphicDiscriminator, + uberParent: "ResourceDetails", + className: "AzureResourceDetails", + modelProperties: { + ...ResourceDetails.type.modelProperties, + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationScope: msRest.CompositeMapper = { + serializedName: "AutomationScope", + type: { + name: "Composite", + className: "AutomationScope", + modelProperties: { + description: { + serializedName: "description", + type: { + name: "String" + } + }, + scopePath: { + serializedName: "scopePath", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationTriggeringRule: msRest.CompositeMapper = { + serializedName: "AutomationTriggeringRule", + type: { + name: "Composite", + className: "AutomationTriggeringRule", + modelProperties: { + propertyJPath: { + serializedName: "propertyJPath", + type: { + name: "String" + } + }, + propertyType: { + serializedName: "propertyType", + type: { + name: "String" + } + }, + expectedValue: { + serializedName: "expectedValue", + type: { + name: "String" + } + }, + operator: { + serializedName: "operator", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationRuleSet: msRest.CompositeMapper = { + serializedName: "AutomationRuleSet", + type: { + name: "Composite", + className: "AutomationRuleSet", + modelProperties: { + rules: { + serializedName: "rules", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AutomationTriggeringRule" + } + } + } + } + } + } +}; + +export const AutomationSource: msRest.CompositeMapper = { + serializedName: "AutomationSource", + type: { + name: "Composite", + className: "AutomationSource", + modelProperties: { + eventSource: { + serializedName: "eventSource", + type: { + name: "String" + } + }, + ruleSets: { + serializedName: "ruleSets", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AutomationRuleSet" + } + } + } + } + } + } +}; + +export const AutomationAction: msRest.CompositeMapper = { + serializedName: "AutomationAction", + type: { + name: "Composite", + polymorphicDiscriminator: { + serializedName: "actionType", + clientName: "actionType" + }, + uberParent: "AutomationAction", + className: "AutomationAction", + modelProperties: { + actionType: { + required: true, + serializedName: "actionType", + type: { + name: "String" + } + } + } + } +}; + +export const Automation: msRest.CompositeMapper = { + serializedName: "Automation", + type: { + name: "Composite", + className: "Automation", + modelProperties: { + ...TrackedResource.type.modelProperties, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + isEnabled: { + serializedName: "properties.isEnabled", + type: { + name: "Boolean" + } + }, + scopes: { + serializedName: "properties.scopes", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AutomationScope" + } + } + } + }, + sources: { + serializedName: "properties.sources", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AutomationSource" + } + } + } + }, + actions: { + serializedName: "properties.actions", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AutomationAction" + } + } + } + } + } + } +}; + +export const AutomationActionLogicApp: msRest.CompositeMapper = { + serializedName: "LogicApp", + type: { + name: "Composite", + polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, + uberParent: "AutomationAction", + className: "AutomationActionLogicApp", + modelProperties: { + ...AutomationAction.type.modelProperties, + logicAppResourceId: { + serializedName: "logicAppResourceId", + type: { + name: "String" + } + }, + uri: { + serializedName: "uri", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationActionEventHub: msRest.CompositeMapper = { + serializedName: "EventHub", + type: { + name: "Composite", + polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, + uberParent: "AutomationAction", + className: "AutomationActionEventHub", + modelProperties: { + ...AutomationAction.type.modelProperties, + eventHubResourceId: { + serializedName: "eventHubResourceId", + type: { + name: "String" + } + }, + sasPolicyName: { + readOnly: true, + serializedName: "sasPolicyName", + type: { + name: "String" + } + }, + connectionString: { + serializedName: "connectionString", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationActionWorkspace: msRest.CompositeMapper = { + serializedName: "Workspace", + type: { + name: "Composite", + polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, + uberParent: "AutomationAction", + className: "AutomationActionWorkspace", + modelProperties: { + ...AutomationAction.type.modelProperties, + workspaceResourceId: { + serializedName: "workspaceResourceId", + type: { + name: "String" + } + } + } + } +}; + +export const AutomationValidationStatus: msRest.CompositeMapper = { + serializedName: "AutomationValidationStatus", + type: { + name: "Composite", + className: "AutomationValidationStatus", + modelProperties: { + isValid: { + serializedName: "isValid", + type: { + name: "Boolean" + } + }, + message: { + serializedName: "message", + type: { + name: "String" + } + } + } + } +}; + +export const SecurityAssessmentMetadataPartnerData: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentMetadataPartnerData", + type: { + name: "Composite", + className: "SecurityAssessmentMetadataPartnerData", + modelProperties: { + partnerName: { + required: true, + serializedName: "partnerName", + type: { + name: "String" + } + }, + productName: { + serializedName: "productName", + type: { + name: "String" + } + }, + secret: { + required: true, + serializedName: "secret", + type: { + name: "String" + } + } + } + } +}; + +export const SecurityAssessmentMetadataProperties: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentMetadataProperties", + type: { + name: "Composite", + className: "SecurityAssessmentMetadataProperties", + modelProperties: { + displayName: { + required: true, + serializedName: "displayName", + type: { + name: "String" + } + }, + policyDefinitionId: { + readOnly: true, + serializedName: "policyDefinitionId", + type: { + name: "String" + } + }, + description: { + serializedName: "description", + type: { + name: "String" + } + }, + remediationDescription: { + serializedName: "remediationDescription", + type: { + name: "String" + } + }, + category: { + serializedName: "category", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + severity: { + required: true, + serializedName: "severity", + type: { + name: "String" + } + }, + userImpact: { + serializedName: "userImpact", + type: { + name: "String" + } + }, + implementationEffort: { + serializedName: "implementationEffort", + type: { + name: "String" + } + }, + threats: { + serializedName: "threats", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + preview: { + serializedName: "preview", + type: { + name: "Boolean" + } + }, + assessmentType: { + required: true, + serializedName: "assessmentType", + type: { + name: "String" + } + }, + partnerData: { + serializedName: "partnerData", + type: { + name: "Composite", + className: "SecurityAssessmentMetadataPartnerData" + } + } + } + } +}; + +export const SecurityAssessmentMetadata: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentMetadata", + type: { + name: "Composite", + className: "SecurityAssessmentMetadata", + modelProperties: { + ...Resource.type.modelProperties, + displayName: { + required: true, + serializedName: "properties.displayName", + type: { + name: "String" + } + }, + policyDefinitionId: { + readOnly: true, + serializedName: "properties.policyDefinitionId", + type: { + name: "String" + } + }, + description: { + serializedName: "properties.description", + type: { + name: "String" + } + }, + remediationDescription: { + serializedName: "properties.remediationDescription", + type: { + name: "String" + } + }, + category: { + serializedName: "properties.category", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + severity: { + required: true, + serializedName: "properties.severity", type: { name: "String" } }, - custom: { - serializedName: "custom", + userImpact: { + serializedName: "properties.userImpact", type: { - name: "Boolean" + name: "String" } }, - canBeNumeric: { - serializedName: "canBeNumeric", + implementationEffort: { + serializedName: "properties.implementationEffort", type: { - name: "Boolean" + name: "String" } }, - excluded: { - serializedName: "excluded", + threats: { + serializedName: "properties.threats", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + preview: { + serializedName: "properties.preview", type: { name: "Boolean" } + }, + assessmentType: { + required: true, + serializedName: "properties.assessmentType", + type: { + name: "String" + } + }, + partnerData: { + serializedName: "properties.partnerData", + type: { + name: "Composite", + className: "SecurityAssessmentMetadataPartnerData" + } } } } }; -export const InformationType: msRest.CompositeMapper = { - serializedName: "InformationType", +export const AssessmentStatus: msRest.CompositeMapper = { + serializedName: "AssessmentStatus", type: { name: "Composite", - className: "InformationType", + className: "AssessmentStatus", modelProperties: { - displayName: { - serializedName: "displayName", + code: { + required: true, + serializedName: "code", type: { name: "String" } }, - order: { - serializedName: "order", + cause: { + serializedName: "cause", type: { - name: "Number" + name: "String" } }, - recommendedLabelId: { - serializedName: "recommendedLabelId", + description: { + serializedName: "description", type: { - name: "Uuid" + name: "String" } - }, - enabled: { - serializedName: "enabled", + } + } + } +}; + +export const AssessmentLinks: msRest.CompositeMapper = { + serializedName: "AssessmentLinks", + type: { + name: "Composite", + className: "AssessmentLinks", + modelProperties: { + azurePortalUri: { + readOnly: true, + serializedName: "azurePortalUri", type: { - name: "Boolean" + name: "String" } - }, - custom: { - serializedName: "custom", + } + } + } +}; + +export const SecurityAssessmentPartnerData: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentPartnerData", + type: { + name: "Composite", + className: "SecurityAssessmentPartnerData", + modelProperties: { + partnerName: { + required: true, + serializedName: "partnerName", type: { - name: "Boolean" + name: "String" } }, - keywords: { - serializedName: "keywords", + secret: { + required: true, + serializedName: "secret", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InformationProtectionKeyword" - } - } + name: "String" } } } } }; -export const InformationProtectionPolicy: msRest.CompositeMapper = { - serializedName: "InformationProtectionPolicy", +export const SecurityAssessment: msRest.CompositeMapper = { + serializedName: "SecurityAssessment", type: { name: "Composite", - className: "InformationProtectionPolicy", + className: "SecurityAssessment", modelProperties: { ...Resource.type.modelProperties, - lastModifiedUtc: { + resourceDetails: { + required: true, + serializedName: "properties.resourceDetails", + type: { + name: "Composite", + className: "ResourceDetails" + } + }, + displayName: { readOnly: true, - serializedName: "properties.lastModifiedUtc", + serializedName: "properties.displayName", type: { - name: "DateTime" + name: "String" } }, - labels: { - serializedName: "properties.labels", + status: { + required: true, + serializedName: "properties.status", type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "SensitivityLabel" - } - } + name: "Composite", + className: "AssessmentStatus" } }, - informationTypes: { - serializedName: "properties.informationTypes", + additionalData: { + serializedName: "properties.additionalData", type: { name: "Dictionary", value: { type: { - name: "Composite", - className: "InformationType" + name: "String" } } } + }, + links: { + serializedName: "properties.links", + type: { + name: "Composite", + className: "AssessmentLinks" + } + }, + metadata: { + serializedName: "properties.metadata", + type: { + name: "Composite", + className: "SecurityAssessmentMetadataProperties" + } + }, + partnersData: { + serializedName: "properties.partnersData", + type: { + name: "Composite", + className: "SecurityAssessmentPartnerData" + } } } } }; -export const Location: msRest.CompositeMapper = { - serializedName: "Location", +export const ProtectionMode: msRest.CompositeMapper = { + serializedName: "ProtectionMode", type: { name: "Composite", - className: "Location", + className: "ProtectionMode", modelProperties: { - location: { - readOnly: true, - serializedName: "location", + exe: { + serializedName: "exe", + type: { + name: "String" + } + }, + msi: { + serializedName: "msi", + type: { + name: "String" + } + }, + script: { + serializedName: "script", + type: { + name: "String" + } + }, + executable: { + serializedName: "executable", type: { name: "String" } @@ -491,36 +3993,54 @@ export const Location: msRest.CompositeMapper = { } }; -export const OperationDisplay: msRest.CompositeMapper = { - serializedName: "OperationDisplay", +export const AppWhitelistingIssueSummary: msRest.CompositeMapper = { + serializedName: "AppWhitelistingIssueSummary", type: { name: "Composite", - className: "OperationDisplay", + className: "AppWhitelistingIssueSummary", modelProperties: { - provider: { - readOnly: true, - serializedName: "provider", + issue: { + serializedName: "issue", type: { name: "String" } }, - resource: { - readOnly: true, - serializedName: "resource", + numberOfVms: { + serializedName: "numberOfVms", + type: { + name: "Number" + } + } + } + } +}; + +export const VmRecommendation: msRest.CompositeMapper = { + serializedName: "VmRecommendation", + type: { + name: "Composite", + className: "VmRecommendation", + modelProperties: { + configurationStatus: { + serializedName: "configurationStatus", type: { name: "String" } }, - operation: { - readOnly: true, - serializedName: "operation", + recommendationAction: { + serializedName: "recommendationAction", type: { name: "String" } }, - description: { - readOnly: true, - serializedName: "description", + resourceId: { + serializedName: "resourceId", + type: { + name: "String" + } + }, + enforcementSupport: { + serializedName: "enforcementSupport", type: { name: "String" } @@ -529,359 +4049,501 @@ export const OperationDisplay: msRest.CompositeMapper = { } }; -export const Operation: msRest.CompositeMapper = { - serializedName: "Operation", +export const PublisherInfo: msRest.CompositeMapper = { + serializedName: "PublisherInfo", type: { name: "Composite", - className: "Operation", + className: "PublisherInfo", modelProperties: { - name: { - readOnly: true, - serializedName: "name", + publisherName: { + serializedName: "publisherName", + type: { + name: "String" + } + }, + productName: { + serializedName: "productName", + type: { + name: "String" + } + }, + binaryName: { + serializedName: "binaryName", + type: { + name: "String" + } + }, + version: { + serializedName: "version", + type: { + name: "String" + } + } + } + } +}; + +export const UserRecommendation: msRest.CompositeMapper = { + serializedName: "UserRecommendation", + type: { + name: "Composite", + className: "UserRecommendation", + modelProperties: { + username: { + serializedName: "username", + type: { + name: "String" + } + }, + recommendationAction: { + serializedName: "recommendationAction", + type: { + name: "String" + } + } + } + } +}; + +export const PathRecommendation: msRest.CompositeMapper = { + serializedName: "PathRecommendation", + type: { + name: "Composite", + className: "PathRecommendation", + modelProperties: { + path: { + serializedName: "path", + type: { + name: "String" + } + }, + action: { + serializedName: "action", + type: { + name: "String" + } + }, + type: { + serializedName: "type", type: { name: "String" } }, - origin: { - readOnly: true, - serializedName: "origin", + publisherInfo: { + serializedName: "publisherInfo", + type: { + name: "Composite", + className: "PublisherInfo" + } + }, + common: { + serializedName: "common", + type: { + name: "Boolean" + } + }, + userSids: { + serializedName: "userSids", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + usernames: { + serializedName: "usernames", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "UserRecommendation" + } + } + } + }, + fileType: { + serializedName: "fileType", type: { name: "String" } }, - display: { - serializedName: "display", + configurationStatus: { + serializedName: "configurationStatus", type: { - name: "Composite", - className: "OperationDisplay" + name: "String" } } } } }; -export const SecurityTaskParameters: msRest.CompositeMapper = { - serializedName: "SecurityTaskParameters", +export const AppWhitelistingGroup: msRest.CompositeMapper = { + serializedName: "AppWhitelistingGroup", type: { name: "Composite", - className: "SecurityTaskParameters", + className: "AppWhitelistingGroup", modelProperties: { + id: { + readOnly: true, + serializedName: "id", + type: { + name: "String" + } + }, name: { readOnly: true, serializedName: "name", type: { name: "String" } - } - }, - additionalProperties: { + }, type: { - name: "Object" - } - } - } -}; - -export const SecurityTask: msRest.CompositeMapper = { - serializedName: "SecurityTask", - type: { - name: "Composite", - className: "SecurityTask", - modelProperties: { - ...Resource.type.modelProperties, - state: { readOnly: true, - serializedName: "properties.state", + serializedName: "type", type: { name: "String" } }, - creationTimeUtc: { + location: { readOnly: true, - serializedName: "properties.creationTimeUtc", + serializedName: "location", type: { - name: "DateTime" + name: "String" } }, - securityTaskParameters: { - serializedName: "properties.securityTaskParameters", + enforcementMode: { + serializedName: "properties.enforcementMode", + type: { + name: "String" + } + }, + protectionMode: { + serializedName: "properties.protectionMode", type: { name: "Composite", - className: "SecurityTaskParameters", - additionalProperties: { + className: "ProtectionMode" + } + }, + configurationStatus: { + readOnly: true, + serializedName: "properties.configurationStatus", + type: { + name: "String" + } + }, + recommendationStatus: { + readOnly: true, + serializedName: "properties.recommendationStatus", + type: { + name: "String" + } + }, + issues: { + readOnly: true, + serializedName: "properties.issues", + type: { + name: "Sequence", + element: { type: { - name: "Object" + name: "Composite", + className: "AppWhitelistingIssueSummary" } } } }, - lastStateChangeTimeUtc: { + sourceSystem: { readOnly: true, - serializedName: "properties.lastStateChangeTimeUtc", + serializedName: "properties.sourceSystem", type: { - name: "DateTime" + name: "String" } }, - subState: { - readOnly: true, - serializedName: "properties.subState", + vmRecommendations: { + serializedName: "properties.vmRecommendations", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "VmRecommendation" + } + } + } + }, + pathRecommendations: { + serializedName: "properties.pathRecommendations", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PathRecommendation" + } + } } } } } }; -export const AscLocation: msRest.CompositeMapper = { - serializedName: "AscLocation", +export const AppWhitelistingGroups: msRest.CompositeMapper = { + serializedName: "AppWhitelistingGroups", type: { name: "Composite", - className: "AscLocation", + className: "AppWhitelistingGroups", modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", + value: { + serializedName: "value", type: { - name: "Object" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AppWhitelistingGroup" + } + } } } } } }; -export const AlertEntity: msRest.CompositeMapper = { - serializedName: "AlertEntity", +export const Rule: msRest.CompositeMapper = { + serializedName: "Rule", type: { name: "Composite", - className: "AlertEntity", + className: "Rule", modelProperties: { - type: { - readOnly: true, - serializedName: "type", + name: { + serializedName: "name", type: { name: "String" } - } - }, - additionalProperties: { - type: { - name: "Object" + }, + direction: { + serializedName: "direction", + type: { + name: "String" + } + }, + destinationPort: { + serializedName: "destinationPort", + type: { + name: "Number" + } + }, + protocols: { + serializedName: "protocols", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } + }, + ipAddresses: { + serializedName: "ipAddresses", + type: { + name: "Sequence", + element: { + type: { + name: "String" + } + } + } } } } }; -export const AlertConfidenceReason: msRest.CompositeMapper = { - serializedName: "AlertConfidenceReason", +export const EffectiveNetworkSecurityGroups: msRest.CompositeMapper = { + serializedName: "EffectiveNetworkSecurityGroups", type: { name: "Composite", - className: "AlertConfidenceReason", + className: "EffectiveNetworkSecurityGroups", modelProperties: { - type: { - readOnly: true, - serializedName: "type", + networkInterface: { + serializedName: "networkInterface", type: { name: "String" } }, - reason: { - readOnly: true, - serializedName: "reason", + networkSecurityGroups: { + serializedName: "networkSecurityGroups", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "String" + } + } } } } } }; -export const Alert: msRest.CompositeMapper = { - serializedName: "Alert", +export const AdaptiveNetworkHardening: msRest.CompositeMapper = { + serializedName: "AdaptiveNetworkHardening", type: { name: "Composite", - className: "Alert", + className: "AdaptiveNetworkHardening", modelProperties: { ...Resource.type.modelProperties, - state: { - readOnly: true, - serializedName: "properties.state", - type: { - name: "String" - } - }, - reportedTimeUtc: { - readOnly: true, - serializedName: "properties.reportedTimeUtc", - type: { - name: "DateTime" - } - }, - vendorName: { - readOnly: true, - serializedName: "properties.vendorName", - type: { - name: "String" - } - }, - alertName: { - readOnly: true, - serializedName: "properties.alertName", - type: { - name: "String" - } - }, - alertDisplayName: { - readOnly: true, - serializedName: "properties.alertDisplayName", + rules: { + serializedName: "properties.rules", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Rule" + } + } } }, - detectedTimeUtc: { - readOnly: true, - serializedName: "properties.detectedTimeUtc", + rulesCalculationTime: { + serializedName: "properties.rulesCalculationTime", type: { name: "DateTime" } }, - description: { - readOnly: true, - serializedName: "properties.description", + effectiveNetworkSecurityGroups: { + serializedName: "properties.effectiveNetworkSecurityGroups", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "EffectiveNetworkSecurityGroups" + } + } } - }, - remediationSteps: { - readOnly: true, - serializedName: "properties.remediationSteps", + } + } + } +}; + +export const AdaptiveNetworkHardeningEnforceRequest: msRest.CompositeMapper = { + serializedName: "AdaptiveNetworkHardeningEnforceRequest", + type: { + name: "Composite", + className: "AdaptiveNetworkHardeningEnforceRequest", + modelProperties: { + rules: { + required: true, + serializedName: "rules", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Rule" + } + } } }, - actionTaken: { - readOnly: true, - serializedName: "properties.actionTaken", + networkSecurityGroups: { + required: true, + serializedName: "networkSecurityGroups", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "String" + } + } } - }, - reportedSeverity: { + } + } + } +}; + +export const ConnectedResource: msRest.CompositeMapper = { + serializedName: "ConnectedResource", + type: { + name: "Composite", + className: "ConnectedResource", + modelProperties: { + connectedResourceId: { readOnly: true, - serializedName: "properties.reportedSeverity", + serializedName: "connectedResourceId", type: { name: "String" } }, - compromisedEntity: { + tcpPorts: { readOnly: true, - serializedName: "properties.compromisedEntity", + serializedName: "tcpPorts", type: { name: "String" } }, - associatedResource: { + udpPorts: { readOnly: true, - serializedName: "properties.associatedResource", + serializedName: "udpPorts", type: { name: "String" } - }, - extendedProperties: { - serializedName: "properties.extendedProperties", - type: { - name: "Dictionary", - value: { - type: { - name: "Object" - } - } - } - }, - systemSource: { + } + } + } +}; + +export const ConnectableResource: msRest.CompositeMapper = { + serializedName: "ConnectableResource", + type: { + name: "Composite", + className: "ConnectableResource", + modelProperties: { + id: { readOnly: true, - serializedName: "properties.systemSource", + serializedName: "id", type: { name: "String" } }, - canBeInvestigated: { + inboundConnectedResources: { readOnly: true, - serializedName: "properties.canBeInvestigated", - type: { - name: "Boolean" - } - }, - entities: { - serializedName: "properties.entities", + serializedName: "inboundConnectedResources", type: { name: "Sequence", element: { type: { name: "Composite", - className: "AlertEntity", - additionalProperties: { - type: { - name: "Object" - } - } + className: "ConnectedResource" } } } }, - confidenceScore: { + outboundConnectedResources: { readOnly: true, - serializedName: "properties.confidenceScore", - constraints: { - InclusiveMaximum: 1, - InclusiveMinimum: 0 - }, - type: { - name: "Number" - } - }, - confidenceReasons: { - serializedName: "properties.confidenceReasons", + serializedName: "outboundConnectedResources", type: { name: "Sequence", element: { type: { name: "Composite", - className: "AlertConfidenceReason" + className: "ConnectedResource" } } } - }, - subscriptionId: { - readOnly: true, - serializedName: "properties.subscriptionId", - type: { - name: "String" - } - }, - instanceId: { - readOnly: true, - serializedName: "properties.instanceId", - type: { - name: "String" - } - }, - workspaceArmId: { - readOnly: true, - serializedName: "properties.workspaceArmId", - type: { - name: "String" - } } } } }; -export const DiscoveredSecuritySolution: msRest.CompositeMapper = { - serializedName: "DiscoveredSecuritySolution", +export const AllowedConnectionsResource: msRest.CompositeMapper = { + serializedName: "AllowedConnectionsResource", type: { name: "Composite", - className: "DiscoveredSecuritySolution", + className: "AllowedConnectionsResource", modelProperties: { id: { readOnly: true, @@ -911,32 +4573,24 @@ export const DiscoveredSecuritySolution: msRest.CompositeMapper = { name: "String" } }, - securityFamily: { - required: true, - serializedName: "properties.securityFamily", - type: { - name: "String" - } - }, - offer: { - required: true, - serializedName: "properties.offer", - type: { - name: "String" - } - }, - publisher: { - required: true, - serializedName: "properties.publisher", + calculatedDateTime: { + readOnly: true, + serializedName: "properties.calculatedDateTime", type: { - name: "String" + name: "DateTime" } }, - sku: { - required: true, - serializedName: "properties.sku", + connectableResources: { + readOnly: true, + serializedName: "properties.connectableResources", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ConnectableResource" + } + } } } } @@ -1186,6 +4840,12 @@ export const JitNetworkAccessPolicyVirtualMachine: msRest.CompositeMapper = { } } } + }, + publicIpAddress: { + serializedName: "publicIpAddress", + type: { + name: "String" + } } } } @@ -1241,6 +4901,12 @@ export const JitNetworkAccessRequestPort: msRest.CompositeMapper = { type: { name: "String" } + }, + mappedPort: { + serializedName: "mappedPort", + type: { + name: "Number" + } } } } @@ -1308,6 +4974,12 @@ export const JitNetworkAccessRequest: msRest.CompositeMapper = { type: { name: "String" } + }, + justification: { + serializedName: "justification", + type: { + name: "String" + } } } } @@ -1402,258 +5074,192 @@ export const JitNetworkAccessPolicyInitiatePort: msRest.CompositeMapper = { name: "Number" } }, - allowedSourceAddressPrefix: { - serializedName: "allowedSourceAddressPrefix", - type: { - name: "String" - } - }, - endTimeUtc: { - required: true, - serializedName: "endTimeUtc", - type: { - name: "DateTime" - } - } - } - } -}; - -export const JitNetworkAccessPolicyInitiateVirtualMachine: msRest.CompositeMapper = { - serializedName: "JitNetworkAccessPolicyInitiateVirtualMachine", - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateVirtualMachine", - modelProperties: { - id: { - required: true, - serializedName: "id", - type: { - name: "String" - } - }, - ports: { - required: true, - serializedName: "ports", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiatePort" - } - } - } - } - } - } -}; - -export const JitNetworkAccessPolicyInitiateRequest: msRest.CompositeMapper = { - serializedName: "JitNetworkAccessPolicyInitiateRequest", - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateRequest", - modelProperties: { - virtualMachines: { - required: true, - serializedName: "virtualMachines", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateVirtualMachine" - } - } - } - } - } - } -}; - -export const ExternalSecuritySolution: msRest.CompositeMapper = { - serializedName: "ExternalSecuritySolution", - type: { - name: "Composite", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind" - }, - uberParent: "ExternalSecuritySolution", - className: "ExternalSecuritySolution", - modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - type: { - readOnly: true, - serializedName: "type", - type: { - name: "String" - } - }, - location: { - readOnly: true, - serializedName: "location", + allowedSourceAddressPrefix: { + serializedName: "allowedSourceAddressPrefix", type: { name: "String" } }, - kind: { + endTimeUtc: { required: true, - serializedName: "kind", + serializedName: "endTimeUtc", type: { - name: "String" + name: "DateTime" } } } } }; -export const ExternalSecuritySolutionProperties: msRest.CompositeMapper = { - serializedName: "ExternalSecuritySolutionProperties", +export const JitNetworkAccessPolicyInitiateVirtualMachine: msRest.CompositeMapper = { + serializedName: "JitNetworkAccessPolicyInitiateVirtualMachine", type: { name: "Composite", - className: "ExternalSecuritySolutionProperties", + className: "JitNetworkAccessPolicyInitiateVirtualMachine", modelProperties: { - deviceVendor: { - serializedName: "deviceVendor", - type: { - name: "String" - } - }, - deviceType: { - serializedName: "deviceType", + id: { + required: true, + serializedName: "id", type: { name: "String" } }, - workspace: { - serializedName: "workspace", + ports: { + required: true, + serializedName: "ports", type: { - name: "Composite", - className: "ConnectedWorkspace" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "JitNetworkAccessPolicyInitiatePort" + } + } } } - }, - additionalProperties: { - type: { - name: "Object" - } } } }; -export const CefSolutionProperties: msRest.CompositeMapper = { - serializedName: "CefSolutionProperties", +export const JitNetworkAccessPolicyInitiateRequest: msRest.CompositeMapper = { + serializedName: "JitNetworkAccessPolicyInitiateRequest", type: { name: "Composite", - className: "CefSolutionProperties", + className: "JitNetworkAccessPolicyInitiateRequest", modelProperties: { - ...ExternalSecuritySolutionProperties.type.modelProperties, - hostname: { - serializedName: "hostname", - type: { - name: "String" - } - }, - agent: { - serializedName: "agent", + virtualMachines: { + required: true, + serializedName: "virtualMachines", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "JitNetworkAccessPolicyInitiateVirtualMachine" + } + } } }, - lastEventReceived: { - serializedName: "lastEventReceived", + justification: { + serializedName: "justification", type: { name: "String" } } - }, - additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } } }; -export const CefExternalSecuritySolution: msRest.CompositeMapper = { - serializedName: "CEF", +export const ComplianceResultList: msRest.CompositeMapper = { + serializedName: "ComplianceResultList", type: { name: "Composite", - polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, - uberParent: "ExternalSecuritySolution", - className: "CefExternalSecuritySolution", + className: "ComplianceResultList", modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", + value: { + required: true, + serializedName: "", type: { - name: "Composite", - className: "CefSolutionProperties", - additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ComplianceResult" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" } } } } }; -export const AtaSolutionProperties: msRest.CompositeMapper = { - serializedName: "AtaSolutionProperties", +export const AlertList: msRest.CompositeMapper = { + serializedName: "AlertList", type: { name: "Composite", - className: "AtaSolutionProperties", + className: "AlertList", modelProperties: { - ...ExternalSecuritySolutionProperties.type.modelProperties, - lastEventReceived: { - serializedName: "lastEventReceived", + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Alert" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", type: { name: "String" } } - }, - additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + } } }; -export const AtaExternalSecuritySolution: msRest.CompositeMapper = { - serializedName: "ATA", +export const SettingsList: msRest.CompositeMapper = { + serializedName: "SettingsList", type: { name: "Composite", - polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, - uberParent: "ExternalSecuritySolution", - className: "AtaExternalSecuritySolution", + className: "SettingsList", modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", + value: { + serializedName: "", type: { - name: "Composite", - className: "AtaSolutionProperties", - additionalProperties: ExternalSecuritySolutionProperties.type.additionalProperties + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Setting", + additionalProperties: SettingResource.type.additionalProperties + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" } } } } }; -export const ConnectedWorkspace: msRest.CompositeMapper = { - serializedName: "ConnectedWorkspace", +export const DeviceSecurityGroupList: msRest.CompositeMapper = { + serializedName: "DeviceSecurityGroupList", type: { name: "Composite", - className: "ConnectedWorkspace", + className: "DeviceSecurityGroupList", modelProperties: { - id: { - serializedName: "id", + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DeviceSecurityGroup" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", type: { name: "String" } @@ -1662,33 +5268,28 @@ export const ConnectedWorkspace: msRest.CompositeMapper = { } }; -export const AadSolutionProperties: msRest.CompositeMapper = { - serializedName: "AadSolutionProperties", +export const IoTSecuritySolutionsList: msRest.CompositeMapper = { + serializedName: "IoTSecuritySolutionsList", type: { name: "Composite", - className: "AadSolutionProperties", + className: "IoTSecuritySolutionsList", modelProperties: { - deviceVendor: { - serializedName: "deviceVendor", - type: { - name: "String" - } - }, - deviceType: { - serializedName: "deviceType", - type: { - name: "String" - } - }, - workspace: { - serializedName: "workspace", + value: { + required: true, + serializedName: "", type: { - name: "Composite", - className: "ConnectedWorkspace" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecuritySolutionModel" + } + } } }, - connectivityState: { - serializedName: "connectivityState", + nextLink: { + readOnly: true, + serializedName: "nextLink", type: { name: "String" } @@ -1697,34 +5298,58 @@ export const AadSolutionProperties: msRest.CompositeMapper = { } }; -export const AadExternalSecuritySolution: msRest.CompositeMapper = { - serializedName: "AAD", +export const IoTSecurityAggregatedAlertList: msRest.CompositeMapper = { + serializedName: "IoTSecurityAggregatedAlertList", type: { name: "Composite", - polymorphicDiscriminator: ExternalSecuritySolution.type.polymorphicDiscriminator, - uberParent: "ExternalSecuritySolution", - className: "AadExternalSecuritySolution", + className: "IoTSecurityAggregatedAlertList", modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", + value: { + required: true, + serializedName: "", type: { - name: "Composite", - className: "AadSolutionProperties" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityAggregatedAlert" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" } } } } }; -export const ExternalSecuritySolutionKind1: msRest.CompositeMapper = { - serializedName: "ExternalSecuritySolutionKind", +export const IoTSecurityAggregatedRecommendationList: msRest.CompositeMapper = { + serializedName: "IoTSecurityAggregatedRecommendationList", type: { name: "Composite", - className: "ExternalSecuritySolutionKind1", + className: "IoTSecurityAggregatedRecommendationList", modelProperties: { - kind: { - serializedName: "kind", + value: { + required: true, + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "IoTSecurityAggregatedRecommendation" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", type: { name: "String" } @@ -1733,14 +5358,27 @@ export const ExternalSecuritySolutionKind1: msRest.CompositeMapper = { } }; -export const AadConnectivityState1: msRest.CompositeMapper = { - serializedName: "AadConnectivityState", +export const DiscoveredSecuritySolutionList: msRest.CompositeMapper = { + serializedName: "DiscoveredSecuritySolutionList", type: { name: "Composite", - className: "AadConnectivityState1", + className: "DiscoveredSecuritySolutionList", modelProperties: { - connectivityState: { - serializedName: "connectivityState", + value: { + serializedName: "", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "DiscoveredSecuritySolution" + } + } + } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", type: { name: "String" } @@ -1749,29 +5387,27 @@ export const AadConnectivityState1: msRest.CompositeMapper = { } }; -export const ConnectedResource: msRest.CompositeMapper = { - serializedName: "ConnectedResource", +export const ExternalSecuritySolutionList: msRest.CompositeMapper = { + serializedName: "ExternalSecuritySolutionList", type: { name: "Composite", - className: "ConnectedResource", + className: "ExternalSecuritySolutionList", modelProperties: { - connectedResourceId: { - readOnly: true, - serializedName: "connectedResourceId", - type: { - name: "String" - } - }, - tcpPorts: { - readOnly: true, - serializedName: "tcpPorts", + value: { + serializedName: "", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ExternalSecuritySolution" + } + } } }, - udpPorts: { + nextLink: { readOnly: true, - serializedName: "udpPorts", + serializedName: "nextLink", type: { name: "String" } @@ -1780,122 +5416,109 @@ export const ConnectedResource: msRest.CompositeMapper = { } }; -export const ConnectableResource: msRest.CompositeMapper = { - serializedName: "ConnectableResource", +export const AscLocationList: msRest.CompositeMapper = { + serializedName: "AscLocationList", type: { name: "Composite", - className: "ConnectableResource", + className: "AscLocationList", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - inboundConnectedResources: { + value: { readOnly: true, - serializedName: "inboundConnectedResources", + serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectedResource" + className: "AscLocation" } } } }, - outboundConnectedResources: { + nextLink: { readOnly: true, - serializedName: "outboundConnectedResources", + serializedName: "nextLink", type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectedResource" - } - } + name: "String" } } } } }; -export const AllowedConnectionsResource: msRest.CompositeMapper = { - serializedName: "AllowedConnectionsResource", +export const OperationList: msRest.CompositeMapper = { + serializedName: "OperationList", type: { name: "Composite", - className: "AllowedConnectionsResource", + className: "OperationList", modelProperties: { - id: { - readOnly: true, - serializedName: "id", - type: { - name: "String" - } - }, - name: { - readOnly: true, - serializedName: "name", - type: { - name: "String" - } - }, - type: { - readOnly: true, - serializedName: "type", + value: { + serializedName: "", type: { - name: "String" + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Operation" + } + } } }, - location: { + nextLink: { readOnly: true, - serializedName: "location", + serializedName: "nextLink", type: { name: "String" } - }, - calculatedDateTime: { - readOnly: true, - serializedName: "properties.calculatedDateTime", - type: { - name: "DateTime" - } - }, - connectableResources: { + } + } + } +}; + +export const SecurityTaskList: msRest.CompositeMapper = { + serializedName: "SecurityTaskList", + type: { + name: "Composite", + className: "SecurityTaskList", + modelProperties: { + value: { readOnly: true, - serializedName: "properties.connectableResources", + serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ConnectableResource" + className: "SecurityTask" } } } + }, + nextLink: { + readOnly: true, + serializedName: "nextLink", + type: { + name: "String" + } } } } }; -export const PricingList: msRest.CompositeMapper = { - serializedName: "PricingList", +export const AutoProvisioningSettingList: msRest.CompositeMapper = { + serializedName: "AutoProvisioningSettingList", type: { name: "Composite", - className: "PricingList", + className: "AutoProvisioningSettingList", modelProperties: { value: { - required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Pricing" + className: "AutoProvisioningSetting" } } } @@ -1911,21 +5534,20 @@ export const PricingList: msRest.CompositeMapper = { } }; -export const SecurityContactList: msRest.CompositeMapper = { - serializedName: "SecurityContactList", +export const ComplianceList: msRest.CompositeMapper = { + serializedName: "ComplianceList", type: { name: "Composite", - className: "SecurityContactList", + className: "ComplianceList", modelProperties: { value: { - readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "SecurityContact" + className: "Compliance" } } } @@ -1941,21 +5563,20 @@ export const SecurityContactList: msRest.CompositeMapper = { } }; -export const WorkspaceSettingList: msRest.CompositeMapper = { - serializedName: "WorkspaceSettingList", +export const InformationProtectionPolicyList: msRest.CompositeMapper = { + serializedName: "InformationProtectionPolicyList", type: { name: "Composite", - className: "WorkspaceSettingList", + className: "InformationProtectionPolicyList", modelProperties: { value: { - required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "WorkspaceSetting" + className: "InformationProtectionPolicy" } } } @@ -1971,20 +5592,21 @@ export const WorkspaceSettingList: msRest.CompositeMapper = { } }; -export const AutoProvisioningSettingList: msRest.CompositeMapper = { - serializedName: "AutoProvisioningSettingList", +export const SecurityContactList: msRest.CompositeMapper = { + serializedName: "SecurityContactList", type: { name: "Composite", - className: "AutoProvisioningSettingList", + className: "SecurityContactList", modelProperties: { value: { + readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "AutoProvisioningSetting" + className: "SecurityContact" } } } @@ -2000,20 +5622,21 @@ export const AutoProvisioningSettingList: msRest.CompositeMapper = { } }; -export const ComplianceList: msRest.CompositeMapper = { - serializedName: "ComplianceList", +export const WorkspaceSettingList: msRest.CompositeMapper = { + serializedName: "WorkspaceSettingList", type: { name: "Composite", - className: "ComplianceList", + className: "WorkspaceSettingList", modelProperties: { value: { + required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Compliance" + className: "WorkspaceSetting" } } } @@ -2029,20 +5652,21 @@ export const ComplianceList: msRest.CompositeMapper = { } }; -export const SettingsList: msRest.CompositeMapper = { - serializedName: "SettingsList", +export const RegulatoryComplianceStandardList: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceStandardList", type: { name: "Composite", - className: "SettingsList", + className: "RegulatoryComplianceStandardList", modelProperties: { value: { + required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Setting" + className: "RegulatoryComplianceStandard" } } } @@ -2058,20 +5682,21 @@ export const SettingsList: msRest.CompositeMapper = { } }; -export const InformationProtectionPolicyList: msRest.CompositeMapper = { - serializedName: "InformationProtectionPolicyList", +export const RegulatoryComplianceControlList: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceControlList", type: { name: "Composite", - className: "InformationProtectionPolicyList", + className: "RegulatoryComplianceControlList", modelProperties: { value: { + required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "InformationProtectionPolicy" + className: "RegulatoryComplianceControl" } } } @@ -2087,20 +5712,21 @@ export const InformationProtectionPolicyList: msRest.CompositeMapper = { } }; -export const OperationList: msRest.CompositeMapper = { - serializedName: "OperationList", +export const RegulatoryComplianceAssessmentList: msRest.CompositeMapper = { + serializedName: "RegulatoryComplianceAssessmentList", type: { name: "Composite", - className: "OperationList", + className: "RegulatoryComplianceAssessmentList", modelProperties: { value: { + required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Operation" + className: "RegulatoryComplianceAssessment" } } } @@ -2116,11 +5742,11 @@ export const OperationList: msRest.CompositeMapper = { } }; -export const AscLocationList: msRest.CompositeMapper = { - serializedName: "AscLocationList", +export const SecuritySubAssessmentList: msRest.CompositeMapper = { + serializedName: "SecuritySubAssessmentList", type: { name: "Composite", - className: "AscLocationList", + className: "SecuritySubAssessmentList", modelProperties: { value: { readOnly: true, @@ -2130,7 +5756,7 @@ export const AscLocationList: msRest.CompositeMapper = { element: { type: { name: "Composite", - className: "AscLocation" + className: "SecuritySubAssessment" } } } @@ -2146,21 +5772,21 @@ export const AscLocationList: msRest.CompositeMapper = { } }; -export const SecurityTaskList: msRest.CompositeMapper = { - serializedName: "SecurityTaskList", +export const AutomationList: msRest.CompositeMapper = { + serializedName: "AutomationList", type: { name: "Composite", - className: "SecurityTaskList", + className: "AutomationList", modelProperties: { value: { - readOnly: true, + required: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "SecurityTask" + className: "Automation" } } } @@ -2176,20 +5802,21 @@ export const SecurityTaskList: msRest.CompositeMapper = { } }; -export const AlertList: msRest.CompositeMapper = { - serializedName: "AlertList", +export const SecurityAssessmentMetadataList: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentMetadataList", type: { name: "Composite", - className: "AlertList", + className: "SecurityAssessmentMetadataList", modelProperties: { value: { + readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "Alert" + className: "SecurityAssessmentMetadata" } } } @@ -2205,20 +5832,21 @@ export const AlertList: msRest.CompositeMapper = { } }; -export const DiscoveredSecuritySolutionList: msRest.CompositeMapper = { - serializedName: "DiscoveredSecuritySolutionList", +export const SecurityAssessmentList: msRest.CompositeMapper = { + serializedName: "SecurityAssessmentList", type: { name: "Composite", - className: "DiscoveredSecuritySolutionList", + className: "SecurityAssessmentList", modelProperties: { value: { + readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "DiscoveredSecuritySolution" + className: "SecurityAssessment" } } } @@ -2234,11 +5862,11 @@ export const DiscoveredSecuritySolutionList: msRest.CompositeMapper = { } }; -export const JitNetworkAccessPoliciesList: msRest.CompositeMapper = { - serializedName: "JitNetworkAccessPoliciesList", +export const AdaptiveNetworkHardeningsList: msRest.CompositeMapper = { + serializedName: "AdaptiveNetworkHardeningsList", type: { name: "Composite", - className: "JitNetworkAccessPoliciesList", + className: "AdaptiveNetworkHardeningsList", modelProperties: { value: { serializedName: "", @@ -2247,13 +5875,12 @@ export const JitNetworkAccessPoliciesList: msRest.CompositeMapper = { element: { type: { name: "Composite", - className: "JitNetworkAccessPolicy" + className: "AdaptiveNetworkHardening" } } } }, nextLink: { - readOnly: true, serializedName: "nextLink", type: { name: "String" @@ -2263,20 +5890,21 @@ export const JitNetworkAccessPoliciesList: msRest.CompositeMapper = { } }; -export const ExternalSecuritySolutionList: msRest.CompositeMapper = { - serializedName: "ExternalSecuritySolutionList", +export const AllowedConnectionsList: msRest.CompositeMapper = { + serializedName: "AllowedConnectionsList", type: { name: "Composite", - className: "ExternalSecuritySolutionList", + className: "AllowedConnectionsList", modelProperties: { value: { + readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "ExternalSecuritySolution" + className: "AllowedConnectionsResource" } } } @@ -2322,21 +5950,20 @@ export const TopologyList: msRest.CompositeMapper = { } }; -export const AllowedConnectionsList: msRest.CompositeMapper = { - serializedName: "AllowedConnectionsList", +export const JitNetworkAccessPoliciesList: msRest.CompositeMapper = { + serializedName: "JitNetworkAccessPoliciesList", type: { name: "Composite", - className: "AllowedConnectionsList", + className: "JitNetworkAccessPoliciesList", modelProperties: { value: { - readOnly: true, serializedName: "", type: { name: "Sequence", element: { type: { name: "Composite", - className: "AllowedConnectionsResource" + className: "JitNetworkAccessPolicy" } } } @@ -2353,10 +5980,48 @@ export const AllowedConnectionsList: msRest.CompositeMapper = { }; export const discriminators = { - 'Setting' : Setting, - 'Setting.DataExportSetting' : DataExportSetting, + 'BaseResource.Setting' : Setting, + 'BaseResource.DataExportSettings' : DataExportSettings, + 'BaseResource.SettingResource' : SettingResource, + 'CustomAlertRule.ThresholdCustomAlertRule' : ThresholdCustomAlertRule, + 'CustomAlertRule.TimeWindowCustomAlertRule' : TimeWindowCustomAlertRule, + 'CustomAlertRule.AllowlistCustomAlertRule' : AllowlistCustomAlertRule, + 'CustomAlertRule.DenylistCustomAlertRule' : DenylistCustomAlertRule, + 'CustomAlertRule' : CustomAlertRule, + 'CustomAlertRule.ListCustomAlertRule' : ListCustomAlertRule, + 'CustomAlertRule.ConnectionToIpNotAllowed' : ConnectionToIpNotAllowed, + 'CustomAlertRule.LocalUserNotAllowed' : LocalUserNotAllowed, + 'CustomAlertRule.ProcessNotAllowed' : ProcessNotAllowed, + 'CustomAlertRule.ActiveConnectionsNotInAllowedRange' : ActiveConnectionsNotInAllowedRange, + 'CustomAlertRule.AmqpC2DMessagesNotInAllowedRange' : AmqpC2DMessagesNotInAllowedRange, + 'CustomAlertRule.MqttC2DMessagesNotInAllowedRange' : MqttC2DMessagesNotInAllowedRange, + 'CustomAlertRule.HttpC2DMessagesNotInAllowedRange' : HttpC2DMessagesNotInAllowedRange, + 'CustomAlertRule.AmqpC2DRejectedMessagesNotInAllowedRange' : AmqpC2DRejectedMessagesNotInAllowedRange, + 'CustomAlertRule.MqttC2DRejectedMessagesNotInAllowedRange' : MqttC2DRejectedMessagesNotInAllowedRange, + 'CustomAlertRule.HttpC2DRejectedMessagesNotInAllowedRange' : HttpC2DRejectedMessagesNotInAllowedRange, + 'CustomAlertRule.AmqpD2CMessagesNotInAllowedRange' : AmqpD2CMessagesNotInAllowedRange, + 'CustomAlertRule.MqttD2CMessagesNotInAllowedRange' : MqttD2CMessagesNotInAllowedRange, + 'CustomAlertRule.HttpD2CMessagesNotInAllowedRange' : HttpD2CMessagesNotInAllowedRange, + 'CustomAlertRule.DirectMethodInvokesNotInAllowedRange' : DirectMethodInvokesNotInAllowedRange, + 'CustomAlertRule.FailedLocalLoginsNotInAllowedRange' : FailedLocalLoginsNotInAllowedRange, + 'CustomAlertRule.FileUploadsNotInAllowedRange' : FileUploadsNotInAllowedRange, + 'CustomAlertRule.QueuePurgesNotInAllowedRange' : QueuePurgesNotInAllowedRange, + 'CustomAlertRule.TwinUpdatesNotInAllowedRange' : TwinUpdatesNotInAllowedRange, + 'CustomAlertRule.UnauthorizedOperationsNotInAllowedRange' : UnauthorizedOperationsNotInAllowedRange, 'ExternalSecuritySolution' : ExternalSecuritySolution, 'ExternalSecuritySolution.CEF' : CefExternalSecuritySolution, 'ExternalSecuritySolution.ATA' : AtaExternalSecuritySolution, - 'ExternalSecuritySolution.AAD' : AadExternalSecuritySolution + 'ExternalSecuritySolution.AAD' : AadExternalSecuritySolution, + 'ResourceDetails' : ResourceDetails, + 'AdditionalData' : AdditionalData, + 'AdditionalData.SqlServerVulnerability' : SqlServerVulnerabilityProperties, + 'AdditionalData.ContainerRegistryVulnerability' : ContainerRegistryVulnerabilityProperties, + 'AdditionalData.ServerVulnerabilityAssessment' : ServerVulnerabilityProperties, + 'ResourceDetails.OnPremise' : OnPremiseResourceDetails, + 'ResourceDetails.Azure' : AzureResourceDetails, + 'AutomationAction' : AutomationAction, + 'AutomationAction.LogicApp' : AutomationActionLogicApp, + 'AutomationAction.EventHub' : AutomationActionEventHub, + 'AutomationAction.Workspace' : AutomationActionWorkspace + }; diff --git a/sdk/security/arm-security/src/models/operationsMappers.ts b/sdk/security/arm-security/src/models/operationsMappers.ts index f2e907d82125..786d9130f59f 100644 --- a/sdk/security/arm-security/src/models/operationsMappers.ts +++ b/sdk/security/arm-security/src/models/operationsMappers.ts @@ -1,18 +1,15 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - OperationList, + CloudError, Operation, OperationDisplay, - CloudError + OperationList } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/parameters.ts b/sdk/security/arm-security/src/models/parameters.ts index fb823bdaca2c..8b8a628522fc 100644 --- a/sdk/security/arm-security/src/models/parameters.ts +++ b/sdk/security/arm-security/src/models/parameters.ts @@ -20,6 +20,48 @@ export const acceptLanguage: msRest.OperationParameter = { } } }; +export const adaptiveNetworkHardeningEnforceAction: msRest.OperationURLParameter = { + parameterPath: "adaptiveNetworkHardeningEnforceAction", + mapper: { + required: true, + isConstant: true, + serializedName: "adaptiveNetworkHardeningEnforceAction", + defaultValue: 'enforce', + type: { + name: "String" + } + } +}; +export const adaptiveNetworkHardeningResourceName: msRest.OperationURLParameter = { + parameterPath: "adaptiveNetworkHardeningResourceName", + mapper: { + required: true, + serializedName: "adaptiveNetworkHardeningResourceName", + type: { + name: "String" + } + } +}; +export const aggregatedAlertName: msRest.OperationURLParameter = { + parameterPath: "aggregatedAlertName", + mapper: { + required: true, + serializedName: "aggregatedAlertName", + type: { + name: "String" + } + } +}; +export const aggregatedRecommendationName: msRest.OperationURLParameter = { + parameterPath: "aggregatedRecommendationName", + mapper: { + required: true, + serializedName: "aggregatedRecommendationName", + type: { + name: "String" + } + } +}; export const alertName: msRest.OperationURLParameter = { parameterPath: "alertName", mapper: { @@ -30,29 +72,55 @@ export const alertName: msRest.OperationURLParameter = { } } }; -export const alertUpdateActionType: msRest.OperationURLParameter = { - parameterPath: "alertUpdateActionType", +export const apiVersion0: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", mapper: { required: true, - serializedName: "alertUpdateActionType", + isConstant: true, + serializedName: "api-version", + defaultValue: '2017-08-01', type: { name: "String" } } }; -export const apiVersion0: msRest.OperationQueryParameter = { +export const apiVersion1: msRest.OperationQueryParameter = { parameterPath: "apiVersion", mapper: { required: true, isConstant: true, serializedName: "api-version", - defaultValue: '2017-08-01-preview', + defaultValue: '2018-06-01', type: { name: "String" } } }; -export const apiVersion1: msRest.OperationQueryParameter = { +export const apiVersion2: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + isConstant: true, + serializedName: "api-version", + defaultValue: '2019-01-01', + type: { + name: "String" + } + } +}; +export const apiVersion3: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + isConstant: true, + serializedName: "api-version", + defaultValue: '2019-08-01', + type: { + name: "String" + } + } +}; +export const apiVersion4: msRest.OperationQueryParameter = { parameterPath: "apiVersion", mapper: { required: true, @@ -64,6 +132,42 @@ export const apiVersion1: msRest.OperationQueryParameter = { } } }; +export const apiVersion5: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + isConstant: true, + serializedName: "api-version", + defaultValue: '2017-08-01-preview', + type: { + name: "String" + } + } +}; +export const apiVersion6: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + isConstant: true, + serializedName: "api-version", + defaultValue: '2019-01-01-preview', + type: { + name: "String" + } + } +}; +export const apiVersion7: msRest.OperationQueryParameter = { + parameterPath: "apiVersion", + mapper: { + required: true, + isConstant: true, + serializedName: "api-version", + defaultValue: '2020-01-01', + type: { + name: "String" + } + } +}; export const ascLocation: msRest.OperationURLParameter = { parameterPath: "ascLocation", mapper: { @@ -74,6 +178,36 @@ export const ascLocation: msRest.OperationURLParameter = { } } }; +export const assessmentMetadataName: msRest.OperationURLParameter = { + parameterPath: "assessmentMetadataName", + mapper: { + required: true, + serializedName: "assessmentMetadataName", + type: { + name: "String" + } + } +}; +export const assessmentName: msRest.OperationURLParameter = { + parameterPath: "assessmentName", + mapper: { + required: true, + serializedName: "assessmentName", + type: { + name: "String" + } + } +}; +export const automationName: msRest.OperationURLParameter = { + parameterPath: "automationName", + mapper: { + required: true, + serializedName: "automationName", + type: { + name: "String" + } + } +}; export const complianceName: msRest.OperationURLParameter = { parameterPath: "complianceName", mapper: { @@ -84,6 +218,16 @@ export const complianceName: msRest.OperationURLParameter = { } } }; +export const complianceResultName: msRest.OperationURLParameter = { + parameterPath: "complianceResultName", + mapper: { + required: true, + serializedName: "complianceResultName", + type: { + name: "String" + } + } +}; export const connectionType: msRest.OperationURLParameter = { parameterPath: "connectionType", mapper: { @@ -94,6 +238,16 @@ export const connectionType: msRest.OperationURLParameter = { } } }; +export const deviceSecurityGroupName: msRest.OperationURLParameter = { + parameterPath: "deviceSecurityGroupName", + mapper: { + required: true, + serializedName: "deviceSecurityGroupName", + type: { + name: "String" + } + } +}; export const discoveredSecuritySolutionName: msRest.OperationURLParameter = { parameterPath: "discoveredSecuritySolutionName", mapper: { @@ -138,6 +292,28 @@ export const filter: msRest.OperationQueryParameter = { } } }; +export const groupName: msRest.OperationURLParameter = { + parameterPath: "groupName", + mapper: { + required: true, + serializedName: "groupName", + type: { + name: "String" + } + } +}; +export const includePathRecommendations: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "includePathRecommendations" + ], + mapper: { + serializedName: "includePathRecommendations", + type: { + name: "Boolean" + } + } +}; export const informationProtectionPolicyName: msRest.OperationURLParameter = { parameterPath: "informationProtectionPolicyName", mapper: { @@ -191,6 +367,36 @@ export const pricingName: msRest.OperationURLParameter = { } } }; +export const regulatoryComplianceAssessmentName: msRest.OperationURLParameter = { + parameterPath: "regulatoryComplianceAssessmentName", + mapper: { + required: true, + serializedName: "regulatoryComplianceAssessmentName", + type: { + name: "String" + } + } +}; +export const regulatoryComplianceControlName: msRest.OperationURLParameter = { + parameterPath: "regulatoryComplianceControlName", + mapper: { + required: true, + serializedName: "regulatoryComplianceControlName", + type: { + name: "String" + } + } +}; +export const regulatoryComplianceStandardName: msRest.OperationURLParameter = { + parameterPath: "regulatoryComplianceStandardName", + mapper: { + required: true, + serializedName: "regulatoryComplianceStandardName", + type: { + name: "String" + } + } +}; export const resourceGroupName: msRest.OperationURLParameter = { parameterPath: "resourceGroupName", mapper: { @@ -216,6 +422,36 @@ export const resourceId: msRest.OperationURLParameter = { } } }; +export const resourceName: msRest.OperationURLParameter = { + parameterPath: "resourceName", + mapper: { + required: true, + serializedName: "resourceName", + type: { + name: "String" + } + } +}; +export const resourceNamespace: msRest.OperationURLParameter = { + parameterPath: "resourceNamespace", + mapper: { + required: true, + serializedName: "resourceNamespace", + type: { + name: "String" + } + } +}; +export const resourceType: msRest.OperationURLParameter = { + parameterPath: "resourceType", + mapper: { + required: true, + serializedName: "resourceType", + type: { + name: "String" + } + } +}; export const scope: msRest.OperationURLParameter = { parameterPath: "scope", mapper: { @@ -248,6 +484,18 @@ export const select: msRest.OperationQueryParameter = { } } }; +export const serverVulnerabilityAssessment: msRest.OperationURLParameter = { + parameterPath: "serverVulnerabilityAssessment", + mapper: { + required: true, + isConstant: true, + serializedName: "serverVulnerabilityAssessment", + defaultValue: 'default', + type: { + name: "String" + } + } +}; export const settingName0: msRest.OperationURLParameter = { parameterPath: "settingName", mapper: { @@ -270,6 +518,26 @@ export const settingName1: msRest.OperationURLParameter = { } } }; +export const solutionName: msRest.OperationURLParameter = { + parameterPath: "solutionName", + mapper: { + required: true, + serializedName: "solutionName", + type: { + name: "String" + } + } +}; +export const subAssessmentName: msRest.OperationURLParameter = { + parameterPath: "subAssessmentName", + mapper: { + required: true, + serializedName: "subAssessmentName", + type: { + name: "String" + } + } +}; export const subscriptionId: msRest.OperationURLParameter = { parameterPath: "subscriptionId", mapper: { @@ -283,6 +551,18 @@ export const subscriptionId: msRest.OperationURLParameter = { } } }; +export const summary: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "summary" + ], + mapper: { + serializedName: "summary", + type: { + name: "Boolean" + } + } +}; export const taskName: msRest.OperationURLParameter = { parameterPath: "taskName", mapper: { @@ -303,6 +583,18 @@ export const taskUpdateActionType: msRest.OperationURLParameter = { } } }; +export const top: msRest.OperationQueryParameter = { + parameterPath: [ + "options", + "top" + ], + mapper: { + serializedName: "$top", + type: { + name: "Number" + } + } +}; export const topologyResourceName: msRest.OperationURLParameter = { parameterPath: "topologyResourceName", mapper: { diff --git a/sdk/security/arm-security/src/models/pricingsMappers.ts b/sdk/security/arm-security/src/models/pricingsMappers.ts index 457b9ad15a1f..2bd695080ab5 100644 --- a/sdk/security/arm-security/src/models/pricingsMappers.ts +++ b/sdk/security/arm-security/src/models/pricingsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - PricingList, - Pricing, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, CloudError, - SecurityContact, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + PricingList, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/regulatoryComplianceAssessmentsMappers.ts b/sdk/security/arm-security/src/models/regulatoryComplianceAssessmentsMappers.ts new file mode 100644 index 000000000000..094bc4d4f9e4 --- /dev/null +++ b/sdk/security/arm-security/src/models/regulatoryComplianceAssessmentsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceAssessmentList, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/regulatoryComplianceControlsMappers.ts b/sdk/security/arm-security/src/models/regulatoryComplianceControlsMappers.ts new file mode 100644 index 000000000000..2bae088005fa --- /dev/null +++ b/sdk/security/arm-security/src/models/regulatoryComplianceControlsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceControlList, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/regulatoryComplianceStandardsMappers.ts b/sdk/security/arm-security/src/models/regulatoryComplianceStandardsMappers.ts new file mode 100644 index 000000000000..4de989ccb675 --- /dev/null +++ b/sdk/security/arm-security/src/models/regulatoryComplianceStandardsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + RegulatoryComplianceStandardList, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/securityContactsMappers.ts b/sdk/security/arm-security/src/models/securityContactsMappers.ts index 1e4d8593b773..982c6583483b 100644 --- a/sdk/security/arm-security/src/models/securityContactsMappers.ts +++ b/sdk/security/arm-security/src/models/securityContactsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - SecurityContactList, - SecurityContact, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, CloudError, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecurityContactList, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/serverVulnerabilityAssessmentOperationsMappers.ts b/sdk/security/arm-security/src/models/serverVulnerabilityAssessmentOperationsMappers.ts new file mode 100644 index 000000000000..5f52d95c4fbb --- /dev/null +++ b/sdk/security/arm-security/src/models/serverVulnerabilityAssessmentOperationsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityAssessmentsList, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/settingsMappers.ts b/sdk/security/arm-security/src/models/settingsMappers.ts index 127c46204903..9fe4026653db 100644 --- a/sdk/security/arm-security/src/models/settingsMappers.ts +++ b/sdk/security/arm-security/src/models/settingsMappers.ts @@ -1,18 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - SettingsList, - Setting, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, CloudError, - DataExportSetting + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SettingsList, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/subAssessmentsMappers.ts b/sdk/security/arm-security/src/models/subAssessmentsMappers.ts new file mode 100644 index 000000000000..67e8845e53ab --- /dev/null +++ b/sdk/security/arm-security/src/models/subAssessmentsMappers.ts @@ -0,0 +1,94 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + discriminators, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, + BaseResource, + CloudError, + Compliance, + ComplianceResult, + ComplianceSegment, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, + InformationProtectionPolicy, + InformationType, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecuritySubAssessmentList, + SecurityTask, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting +} from "../models/mappers"; diff --git a/sdk/security/arm-security/src/models/tasksMappers.ts b/sdk/security/arm-security/src/models/tasksMappers.ts index 5e5eb961a569..9994caf576c4 100644 --- a/sdk/security/arm-security/src/models/tasksMappers.ts +++ b/sdk/security/arm-security/src/models/tasksMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - SecurityTaskList, - SecurityTask, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, - SecurityTaskParameters, CloudError, - SecurityContact, - Pricing, - WorkspaceSetting, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, + SecurityTask, + SecurityTaskList, + SecurityTaskParameters, + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/topologyMappers.ts b/sdk/security/arm-security/src/models/topologyMappers.ts index 2f721b7b6c8b..80804dc1264b 100644 --- a/sdk/security/arm-security/src/models/topologyMappers.ts +++ b/sdk/security/arm-security/src/models/topologyMappers.ts @@ -1,20 +1,17 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, + CloudError, TopologyList, TopologyResource, TopologySingleResource, - TopologySingleResourceParent, TopologySingleResourceChild, - CloudError + TopologySingleResourceParent } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/models/workspaceSettingsMappers.ts b/sdk/security/arm-security/src/models/workspaceSettingsMappers.ts index df56c1d9defb..49b0796804de 100644 --- a/sdk/security/arm-security/src/models/workspaceSettingsMappers.ts +++ b/sdk/security/arm-security/src/models/workspaceSettingsMappers.ts @@ -1,35 +1,94 @@ /* * 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) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is - * regenerated. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. */ export { discriminators, - WorkspaceSettingList, - WorkspaceSetting, - Resource, + ActiveConnectionsNotInAllowedRange, + AdaptiveNetworkHardening, + AdditionalData, + AdvancedThreatProtectionSetting, + Alert, + AlertConfidenceReason, + AlertEntity, + AllowlistCustomAlertRule, + AmqpC2DMessagesNotInAllowedRange, + AmqpC2DRejectedMessagesNotInAllowedRange, + AmqpD2CMessagesNotInAllowedRange, + AscLocation, + AssessmentLinks, + AssessmentStatus, + AutoProvisioningSetting, + AzureResourceDetails, BaseResource, CloudError, - SecurityContact, - Pricing, - AutoProvisioningSetting, Compliance, + ComplianceResult, ComplianceSegment, - AdvancedThreatProtectionSetting, + ConnectionToIpNotAllowed, + ContainerRegistryVulnerabilityProperties, + CustomAlertRule, + CVE, + CVSS, + DataExportSettings, + DenylistCustomAlertRule, + DeviceSecurityGroup, + DirectMethodInvokesNotInAllowedRange, + EffectiveNetworkSecurityGroups, + FailedLocalLoginsNotInAllowedRange, + FileUploadsNotInAllowedRange, + HttpC2DMessagesNotInAllowedRange, + HttpC2DRejectedMessagesNotInAllowedRange, + HttpD2CMessagesNotInAllowedRange, + InformationProtectionKeyword, InformationProtectionPolicy, - SensitivityLabel, InformationType, - InformationProtectionKeyword, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSeverityMetrics, + ListCustomAlertRule, + LocalUserNotAllowed, + MqttC2DMessagesNotInAllowedRange, + MqttC2DRejectedMessagesNotInAllowedRange, + MqttD2CMessagesNotInAllowedRange, + OnPremiseResourceDetails, + Pricing, + ProcessNotAllowed, + QueuePurgesNotInAllowedRange, + RegulatoryComplianceAssessment, + RegulatoryComplianceControl, + RegulatoryComplianceStandard, + Resource, + ResourceDetails, + Rule, + SecurityAssessment, + SecurityAssessmentMetadata, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentMetadataProperties, + SecurityAssessmentPartnerData, + SecurityContact, + SecuritySubAssessment, SecurityTask, SecurityTaskParameters, - AscLocation, - Alert, - AlertEntity, - AlertConfidenceReason + SensitivityLabel, + ServerVulnerabilityAssessment, + ServerVulnerabilityProperties, + Setting, + SettingResource, + SqlServerVulnerabilityProperties, + SubAssessmentStatus, + ThresholdCustomAlertRule, + TimeWindowCustomAlertRule, + TwinUpdatesNotInAllowedRange, + UnauthorizedOperationsNotInAllowedRange, + VendorReference, + WorkspaceSetting, + WorkspaceSettingList } from "../models/mappers"; - diff --git a/sdk/security/arm-security/src/operations/adaptiveApplicationControls.ts b/sdk/security/arm-security/src/operations/adaptiveApplicationControls.ts new file mode 100644 index 000000000000..8260930d328a --- /dev/null +++ b/sdk/security/arm-security/src/operations/adaptiveApplicationControls.ts @@ -0,0 +1,249 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/adaptiveApplicationControlsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a AdaptiveApplicationControls. */ +export class AdaptiveApplicationControls { + private readonly client: SecurityCenterContext; + + /** + * Create a AdaptiveApplicationControls. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Gets a list of application control VM/server groups for the subscription. + * @param [options] The optional parameters + * @returns Promise + */ + list(options?: Models.AdaptiveApplicationControlsListOptionalParams): Promise; + /** + * @param callback The callback + */ + list(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + list(options: Models.AdaptiveApplicationControlsListOptionalParams, callback: msRest.ServiceCallback): void; + list(options?: Models.AdaptiveApplicationControlsListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Gets an application control VM/server group. + * @param groupName Name of an application control VM/server group + * @param [options] The optional parameters + * @returns Promise + */ + get(groupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param groupName Name of an application control VM/server group + * @param callback The callback + */ + get(groupName: string, callback: msRest.ServiceCallback): void; + /** + * @param groupName Name of an application control VM/server group + * @param options The optional parameters + * @param callback The callback + */ + get(groupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(groupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + groupName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Update an application control VM/server group + * @param groupName Name of an application control VM/server group + * @param body + * @param [options] The optional parameters + * @returns Promise + */ + put(groupName: string, body: Models.AppWhitelistingGroup, options?: msRest.RequestOptionsBase): Promise; + /** + * @param groupName Name of an application control VM/server group + * @param body + * @param callback The callback + */ + put(groupName: string, body: Models.AppWhitelistingGroup, callback: msRest.ServiceCallback): void; + /** + * @param groupName Name of an application control VM/server group + * @param body + * @param options The optional parameters + * @param callback The callback + */ + put(groupName: string, body: Models.AppWhitelistingGroup, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + put(groupName: string, body: Models.AppWhitelistingGroup, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + groupName, + body, + options + }, + putOperationSpec, + callback) as Promise; + } + + /** + * Delete an application control VM/server group + * @param groupName Name of an application control VM/server group + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(groupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param groupName Name of an application control VM/server group + * @param callback The callback + */ + deleteMethod(groupName: string, callback: msRest.ServiceCallback): void; + /** + * @param groupName Name of an application control VM/server group + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(groupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(groupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + groupName, + options + }, + deleteMethodOperationSpec, + callback); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/applicationWhitelistings", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion7, + Parameters.includePathRecommendations, + Parameters.summary + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AppWhitelistingGroups + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.ascLocation, + Parameters.groupName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AppWhitelistingGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const putOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.ascLocation, + Parameters.groupName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.AppWhitelistingGroup, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.AppWhitelistingGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/applicationWhitelistings/{groupName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.ascLocation, + Parameters.groupName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 202: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/adaptiveNetworkHardenings.ts b/sdk/security/arm-security/src/operations/adaptiveNetworkHardenings.ts new file mode 100644 index 000000000000..c46277aaafee --- /dev/null +++ b/sdk/security/arm-security/src/operations/adaptiveNetworkHardenings.ts @@ -0,0 +1,304 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as msRestAzure from "@azure/ms-rest-azure-js"; +import * as Models from "../models"; +import * as Mappers from "../models/adaptiveNetworkHardeningsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a AdaptiveNetworkHardenings. */ +export class AdaptiveNetworkHardenings { + private readonly client: SecurityCenterContext; + + /** + * Create a AdaptiveNetworkHardenings. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param callback The callback + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param options The optional parameters + * @param callback The callback + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options + }, + listByExtendedResourceOperationSpec, + callback) as Promise; + } + + /** + * Gets a single Adaptive Network Hardening resource + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param adaptiveNetworkHardeningResourceName The name of the Adaptive Network Hardening resource. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param adaptiveNetworkHardeningResourceName The name of the Adaptive Network Hardening resource. + * @param callback The callback + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param adaptiveNetworkHardeningResourceName The name of the Adaptive Network Hardening resource. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + adaptiveNetworkHardeningResourceName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Enforces the given rules on the NSG(s) listed in the request + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param adaptiveNetworkHardeningResourceName The name of the Adaptive Network Hardening resource. + * @param body + * @param [options] The optional parameters + * @returns Promise + */ + enforce(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: Models.AdaptiveNetworkHardeningEnforceRequest, options?: msRest.RequestOptionsBase): Promise { + return this.beginEnforce(resourceGroupName,resourceNamespace,resourceType,resourceName,adaptiveNetworkHardeningResourceName,body,options) + .then(lroPoller => lroPoller.pollUntilFinished()); + } + + /** + * Enforces the given rules on the NSG(s) listed in the request + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param adaptiveNetworkHardeningResourceName The name of the Adaptive Network Hardening resource. + * @param body + * @param [options] The optional parameters + * @returns Promise + */ + beginEnforce(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: Models.AdaptiveNetworkHardeningEnforceRequest, options?: msRest.RequestOptionsBase): Promise { + return this.client.sendLRORequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + adaptiveNetworkHardeningResourceName, + body, + options + }, + beginEnforceOperationSpec, + options); + } + + /** + * Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByExtendedResourceNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByExtendedResourceNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listByExtendedResourceNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByExtendedResourceNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByExtendedResourceNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByExtendedResourceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AdaptiveNetworkHardeningsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName, + Parameters.adaptiveNetworkHardeningResourceName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AdaptiveNetworkHardening + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const beginEnforceOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/adaptiveNetworkHardenings/{adaptiveNetworkHardeningResourceName}/{adaptiveNetworkHardeningEnforceAction}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName, + Parameters.adaptiveNetworkHardeningResourceName, + Parameters.adaptiveNetworkHardeningEnforceAction + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.AdaptiveNetworkHardeningEnforceRequest, + required: true + } + }, + responses: { + 200: {}, + 202: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByExtendedResourceNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AdaptiveNetworkHardeningsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/advancedThreatProtection.ts b/sdk/security/arm-security/src/operations/advancedThreatProtection.ts index 7c141526f4da..e46de5f02a25 100644 --- a/sdk/security/arm-security/src/operations/advancedThreatProtection.ts +++ b/sdk/security/arm-security/src/operations/advancedThreatProtection.ts @@ -97,7 +97,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.settingName1 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -121,7 +121,7 @@ const createOperationSpec: msRest.OperationSpec = { Parameters.settingName1 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/alerts.ts b/sdk/security/arm-security/src/operations/alerts.ts index 5437e2d49e75..dca984522b95 100644 --- a/sdk/security/arm-security/src/operations/alerts.ts +++ b/sdk/security/arm-security/src/operations/alerts.ts @@ -51,7 +51,7 @@ export class Alerts { } /** - * List all the alerts alerts that are associated with the resource group + * List all the alerts that are associated with the resource group * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. * @param [options] The optional parameters @@ -204,77 +204,126 @@ export class Alerts { /** * Update the alert's state * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param [options] The optional parameters * @returns Promise */ - updateSubscriptionLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType, options?: msRest.RequestOptionsBase): Promise; + updateSubscriptionLevelAlertStateToDismiss(alertName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param callback The callback */ - updateSubscriptionLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType, callback: msRest.ServiceCallback): void; + updateSubscriptionLevelAlertStateToDismiss(alertName: string, callback: msRest.ServiceCallback): void; /** * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param options The optional parameters * @param callback The callback */ - updateSubscriptionLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - updateSubscriptionLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + updateSubscriptionLevelAlertStateToDismiss(alertName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateSubscriptionLevelAlertStateToDismiss(alertName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { alertName, - alertUpdateActionType, options }, - updateSubscriptionLevelAlertStateOperationSpec, + updateSubscriptionLevelAlertStateToDismissOperationSpec, + callback); + } + + /** + * Update the alert's state + * @param alertName Name of the alert object + * @param [options] The optional parameters + * @returns Promise + */ + updateSubscriptionLevelAlertStateToReactivate(alertName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param alertName Name of the alert object + * @param callback The callback + */ + updateSubscriptionLevelAlertStateToReactivate(alertName: string, callback: msRest.ServiceCallback): void; + /** + * @param alertName Name of the alert object + * @param options The optional parameters + * @param callback The callback + */ + updateSubscriptionLevelAlertStateToReactivate(alertName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateSubscriptionLevelAlertStateToReactivate(alertName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + alertName, + options + }, + updateSubscriptionLevelAlertStateToReactivateOperationSpec, + callback); + } + + /** + * Update the alert's state + * @param alertName Name of the alert object + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param [options] The optional parameters + * @returns Promise + */ + updateResourceGroupLevelAlertStateToDismiss(alertName: string, resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param alertName Name of the alert object + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param callback The callback + */ + updateResourceGroupLevelAlertStateToDismiss(alertName: string, resourceGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param alertName Name of the alert object + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param options The optional parameters + * @param callback The callback + */ + updateResourceGroupLevelAlertStateToDismiss(alertName: string, resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateResourceGroupLevelAlertStateToDismiss(alertName: string, resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + alertName, + resourceGroupName, + options + }, + updateResourceGroupLevelAlertStateToDismissOperationSpec, callback); } /** * Update the alert's state * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. * @param [options] The optional parameters * @returns Promise */ - updateResourceGroupLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType1, resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; + updateResourceGroupLevelAlertStateToReactivate(alertName: string, resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; /** * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. * @param callback The callback */ - updateResourceGroupLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType1, resourceGroupName: string, callback: msRest.ServiceCallback): void; + updateResourceGroupLevelAlertStateToReactivate(alertName: string, resourceGroupName: string, callback: msRest.ServiceCallback): void; /** * @param alertName Name of the alert object - * @param alertUpdateActionType Type of the action to do on the alert. Possible values include: - * 'Dismiss', 'Reactivate' * @param resourceGroupName The name of the resource group within the user's subscription. The name * is case insensitive. * @param options The optional parameters * @param callback The callback */ - updateResourceGroupLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType1, resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - updateResourceGroupLevelAlertState(alertName: string, alertUpdateActionType: Models.AlertUpdateActionType1, resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + updateResourceGroupLevelAlertStateToReactivate(alertName: string, resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + updateResourceGroupLevelAlertStateToReactivate(alertName: string, resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { alertName, - alertUpdateActionType, resourceGroupName, options }, - updateResourceGroupLevelAlertStateOperationSpec, + updateResourceGroupLevelAlertStateToReactivateOperationSpec, callback); } @@ -307,7 +356,7 @@ export class Alerts { } /** - * List all the alerts alerts that are associated with the resource group + * List all the alerts that are associated with the resource group * @param nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise @@ -402,7 +451,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion2, Parameters.filter, Parameters.select, Parameters.expand @@ -429,7 +478,7 @@ const listByResourceGroupOperationSpec: msRest.OperationSpec = { Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion2, Parameters.filter, Parameters.select, Parameters.expand @@ -456,7 +505,7 @@ const listSubscriptionLevelAlertsByRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion2, Parameters.filter, Parameters.select, Parameters.expand @@ -484,7 +533,7 @@ const listResourceGroupLevelAlertsByRegionOperationSpec: msRest.OperationSpec = Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion2, Parameters.filter, Parameters.select, Parameters.expand @@ -512,7 +561,7 @@ const getSubscriptionLevelAlertOperationSpec: msRest.OperationSpec = { Parameters.alertName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -538,7 +587,7 @@ const getResourceGroupLevelAlertsOperationSpec: msRest.OperationSpec = { Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -554,17 +603,63 @@ const getResourceGroupLevelAlertsOperationSpec: msRest.OperationSpec = { serializer }; -const updateSubscriptionLevelAlertStateOperationSpec: msRest.OperationSpec = { +const updateSubscriptionLevelAlertStateToDismissOperationSpec: msRest.OperationSpec = { httpMethod: "POST", - path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/{alertUpdateActionType}", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss", + urlParameters: [ + Parameters.subscriptionId, + Parameters.ascLocation, + Parameters.alertName + ], + queryParameters: [ + Parameters.apiVersion2 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateSubscriptionLevelAlertStateToReactivateOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/reactivate", + urlParameters: [ + Parameters.subscriptionId, + Parameters.ascLocation, + Parameters.alertName + ], + queryParameters: [ + Parameters.apiVersion2 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateResourceGroupLevelAlertStateToDismissOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss", urlParameters: [ Parameters.subscriptionId, Parameters.ascLocation, Parameters.alertName, - Parameters.alertUpdateActionType + Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -578,18 +673,17 @@ const updateSubscriptionLevelAlertStateOperationSpec: msRest.OperationSpec = { serializer }; -const updateResourceGroupLevelAlertStateOperationSpec: msRest.OperationSpec = { +const updateResourceGroupLevelAlertStateToReactivateOperationSpec: msRest.OperationSpec = { httpMethod: "POST", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/{alertUpdateActionType}", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/reactivate", urlParameters: [ Parameters.subscriptionId, Parameters.ascLocation, Parameters.alertName, - Parameters.alertUpdateActionType, Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/allowedConnections.ts b/sdk/security/arm-security/src/operations/allowedConnections.ts index b738cdb1d55a..3c24f44ef537 100644 --- a/sdk/security/arm-security/src/operations/allowedConnections.ts +++ b/sdk/security/arm-security/src/operations/allowedConnections.ts @@ -179,7 +179,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -203,7 +203,7 @@ const listByHomeRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -229,7 +229,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.connectionType ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/assessments.ts b/sdk/security/arm-security/src/operations/assessments.ts new file mode 100644 index 000000000000..f189faf56043 --- /dev/null +++ b/sdk/security/arm-security/src/operations/assessments.ts @@ -0,0 +1,320 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/assessmentsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a Assessments. */ +export class Assessments { + private readonly client: SecurityCenterContext; + + /** + * Create a Assessments. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * 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). + * @param [options] The optional parameters + * @returns Promise + */ + list(scope: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param callback The callback + */ + list(scope: string, callback: msRest.ServiceCallback): void; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param options The optional parameters + * @param callback The callback + */ + list(scope: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(scope: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + scope, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get a security assessment on your scanned resource + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceId: string, assessmentName: string, options?: Models.AssessmentsGetOptionalParams): Promise; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + get(resourceId: string, assessmentName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + get(resourceId: string, assessmentName: string, options: Models.AssessmentsGetOptionalParams, callback: msRest.ServiceCallback): void; + get(resourceId: string, assessmentName: string, options?: Models.AssessmentsGetOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + assessmentName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * 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 resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param assessment Calculated assessment on a pre-defined assessment metadata + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceId: string, assessmentName: string, assessment: Models.SecurityAssessment, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param assessment Calculated assessment on a pre-defined assessment metadata + * @param callback The callback + */ + createOrUpdate(resourceId: string, assessmentName: string, assessment: Models.SecurityAssessment, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param assessment Calculated assessment on a pre-defined assessment metadata + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceId: string, assessmentName: string, assessment: Models.SecurityAssessment, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceId: string, assessmentName: string, assessment: Models.SecurityAssessment, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + assessmentName, + assessment, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * 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 resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceId: string, assessmentName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + deleteMethod(resourceId: string, assessmentName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceId: string, assessmentName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceId: string, assessmentName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + assessmentName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Get security assessments on all your scanned resources inside a scope + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{scope}/providers/Microsoft.Security/assessments", + urlParameters: [ + Parameters.scope + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}", + urlParameters: [ + Parameters.resourceId, + Parameters.assessmentName + ], + queryParameters: [ + Parameters.apiVersion7, + Parameters.expand + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}", + urlParameters: [ + Parameters.resourceId, + Parameters.assessmentName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "assessment", + mapper: { + ...Mappers.SecurityAssessment, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessment + }, + 201: { + bodyMapper: Mappers.SecurityAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "{resourceId}/providers/Microsoft.Security/assessments/{assessmentName}", + urlParameters: [ + Parameters.resourceId, + Parameters.assessmentName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/assessmentsMetadata.ts b/sdk/security/arm-security/src/operations/assessmentsMetadata.ts new file mode 100644 index 000000000000..2413fa98e36f --- /dev/null +++ b/sdk/security/arm-security/src/operations/assessmentsMetadata.ts @@ -0,0 +1,436 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/assessmentsMetadataMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a AssessmentsMetadata. */ +export class AssessmentsMetadata { + private readonly client: SecurityCenterContext; + + /** + * Create a AssessmentsMetadata. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Get metadata information on all assessment types + * @param [options] The optional parameters + * @returns Promise + */ + list(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + list(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Get metadata information on an assessment type + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + get(assessmentMetadataName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + get(assessmentMetadataName: string, callback: msRest.ServiceCallback): void; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + get(assessmentMetadataName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(assessmentMetadataName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + assessmentMetadataName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Get metadata information on all assessment types in a specific subscription + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscription(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + listBySubscription(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listBySubscription(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscription(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listBySubscriptionOperationSpec, + callback) as Promise; + } + + /** + * Get metadata information on an assessment type in a specific subscription + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + getInSubscription(assessmentMetadataName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + getInSubscription(assessmentMetadataName: string, callback: msRest.ServiceCallback): void; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + getInSubscription(assessmentMetadataName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + getInSubscription(assessmentMetadataName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + assessmentMetadataName, + options + }, + getInSubscriptionOperationSpec, + callback) as Promise; + } + + /** + * Create metadata information on an assessment type in a specific subscription + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param assessmentMetadata AssessmentMetadata object + * @param [options] The optional parameters + * @returns Promise + */ + createInSubscription(assessmentMetadataName: string, assessmentMetadata: Models.SecurityAssessmentMetadata, options?: msRest.RequestOptionsBase): Promise; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param assessmentMetadata AssessmentMetadata object + * @param callback The callback + */ + createInSubscription(assessmentMetadataName: string, assessmentMetadata: Models.SecurityAssessmentMetadata, callback: msRest.ServiceCallback): void; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param assessmentMetadata AssessmentMetadata object + * @param options The optional parameters + * @param callback The callback + */ + createInSubscription(assessmentMetadataName: string, assessmentMetadata: Models.SecurityAssessmentMetadata, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createInSubscription(assessmentMetadataName: string, assessmentMetadata: Models.SecurityAssessmentMetadata, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + assessmentMetadataName, + assessmentMetadata, + options + }, + createInSubscriptionOperationSpec, + callback) as Promise; + } + + /** + * 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 assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + deleteInSubscription(assessmentMetadataName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + deleteInSubscription(assessmentMetadataName: string, callback: msRest.ServiceCallback): void; + /** + * @param assessmentMetadataName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + deleteInSubscription(assessmentMetadataName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteInSubscription(assessmentMetadataName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + assessmentMetadataName, + options + }, + deleteInSubscriptionOperationSpec, + callback); + } + + /** + * Get metadata information on all assessment types + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } + + /** + * Get metadata information on all assessment types in a specific subscription + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listBySubscriptionNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listBySubscriptionNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listBySubscriptionNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Security/assessmentMetadata", + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadataList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", + urlParameters: [ + Parameters.assessmentMetadataName + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadata + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadataList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getInSubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", + urlParameters: [ + Parameters.assessmentMetadataName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadata + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createInSubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", + urlParameters: [ + Parameters.assessmentMetadataName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "assessmentMetadata", + mapper: { + ...Mappers.SecurityAssessmentMetadata, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadata + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteInSubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}", + urlParameters: [ + Parameters.assessmentMetadataName, + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion7 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadataList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecurityAssessmentMetadataList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/autoProvisioningSettings.ts b/sdk/security/arm-security/src/operations/autoProvisioningSettings.ts index be242ac19ac5..352f1989c6d3 100644 --- a/sdk/security/arm-security/src/operations/autoProvisioningSettings.ts +++ b/sdk/security/arm-security/src/operations/autoProvisioningSettings.ts @@ -148,7 +148,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -172,7 +172,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.settingName0 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -196,7 +196,7 @@ const createOperationSpec: msRest.OperationSpec = { Parameters.settingName0 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/automations.ts b/sdk/security/arm-security/src/operations/automations.ts new file mode 100644 index 000000000000..087e3abb5def --- /dev/null +++ b/sdk/security/arm-security/src/operations/automations.ts @@ -0,0 +1,499 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/automationsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a Automations. */ +export class Automations { + private readonly client: SecurityCenterContext; + + /** + * Create a Automations. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * 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. + * @param [options] The optional parameters + * @returns Promise + */ + list(options?: msRest.RequestOptionsBase): Promise; + /** + * @param callback The callback + */ + list(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * 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 resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param [options] The optional parameters + * @returns Promise + */ + listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param callback The callback + */ + listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param options The optional parameters + * @param callback The callback + */ + listByResourceGroup(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + options + }, + listByResourceGroupOperationSpec, + callback) as Promise; + } + + /** + * Retrieves information about the model of a security automation. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, automationName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param callback The callback + */ + get(resourceGroupName: string, automationName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, automationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, automationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + automationName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * 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 resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroupName: string, automationName: string, automation: Models.Automation, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, automationName: string, automation: Models.Automation, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, automationName: string, automation: Models.Automation, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceGroupName: string, automationName: string, automation: Models.Automation, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + automationName, + automation, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Deletes a security automation. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, automationName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, automationName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, automationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, automationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + automationName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Validates the security automation model before create or update. Any validation errors are + * returned to the client. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param [options] The optional parameters + * @returns Promise + */ + validate(resourceGroupName: string, automationName: string, automation: Models.Automation, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param callback The callback + */ + validate(resourceGroupName: string, automationName: string, automation: Models.Automation, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param automationName The security automation name. + * @param automation The security automation resource + * @param options The optional parameters + * @param callback The callback + */ + validate(resourceGroupName: string, automationName: string, automation: Models.Automation, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + validate(resourceGroupName: string, automationName: string, automation: Models.Automation, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + automationName, + automation, + options + }, + validateOperationSpec, + callback) as Promise; + } + + /** + * 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. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } + + /** + * 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 nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByResourceGroupNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/automations", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AutomationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AutomationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.automationName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.Automation + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.automationName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "automation", + mapper: { + ...Mappers.Automation, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.Automation + }, + 201: { + bodyMapper: Mappers.Automation + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.automationName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const validateOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}/validate", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.automationName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "automation", + mapper: { + ...Mappers.Automation, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.AutomationValidationStatus + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AutomationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.AutomationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/complianceResults.ts b/sdk/security/arm-security/src/operations/complianceResults.ts new file mode 100644 index 000000000000..66c2d16295d4 --- /dev/null +++ b/sdk/security/arm-security/src/operations/complianceResults.ts @@ -0,0 +1,192 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/complianceResultsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a ComplianceResults. */ +export class ComplianceResults { + private readonly client: SecurityCenterContext; + + /** + * Create a ComplianceResults. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * 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). + * @param [options] The optional parameters + * @returns Promise + */ + list(scope: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param callback The callback + */ + list(scope: string, callback: msRest.ServiceCallback): void; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param options The optional parameters + * @param callback The callback + */ + list(scope: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(scope: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + scope, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Security Compliance Result + * @param resourceId The identifier of the resource. + * @param complianceResultName name of the desired assessment compliance result + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceId: string, complianceResultName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param complianceResultName name of the desired assessment compliance result + * @param callback The callback + */ + get(resourceId: string, complianceResultName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param complianceResultName name of the desired assessment compliance result + * @param options The optional parameters + * @param callback The callback + */ + get(resourceId: string, complianceResultName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceId: string, complianceResultName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + complianceResultName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Security compliance results in the subscription + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{scope}/providers/Microsoft.Security/complianceResults", + urlParameters: [ + Parameters.scope + ], + queryParameters: [ + Parameters.apiVersion0 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ComplianceResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{resourceId}/providers/Microsoft.Security/complianceResults/{complianceResultName}", + urlParameters: [ + Parameters.resourceId, + Parameters.complianceResultName + ], + queryParameters: [ + Parameters.apiVersion0 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ComplianceResult + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ComplianceResultList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/compliances.ts b/sdk/security/arm-security/src/operations/compliances.ts index 73cb750b550e..951f8b8f7abb 100644 --- a/sdk/security/arm-security/src/operations/compliances.ts +++ b/sdk/security/arm-security/src/operations/compliances.ts @@ -136,7 +136,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.scope ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -160,7 +160,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.complianceName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/deviceSecurityGroups.ts b/sdk/security/arm-security/src/operations/deviceSecurityGroups.ts new file mode 100644 index 000000000000..8906c9565522 --- /dev/null +++ b/sdk/security/arm-security/src/operations/deviceSecurityGroups.ts @@ -0,0 +1,320 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/deviceSecurityGroupsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a DeviceSecurityGroups. */ +export class DeviceSecurityGroups { + private readonly client: SecurityCenterContext; + + /** + * Create a DeviceSecurityGroups. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Use this method get the list of device security groups for the specified IoT Hub resource. + * @param resourceId The identifier of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceId: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param callback The callback + */ + list(resourceId: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceId: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceId: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get the device security group for the specified IoT Hub resource. + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceId: string, deviceSecurityGroupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param callback The callback + */ + get(resourceId: string, deviceSecurityGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceId: string, deviceSecurityGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceId: string, deviceSecurityGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + deviceSecurityGroupName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Use this method to creates or updates the device security group on a specified IoT Hub resource. + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param deviceSecurityGroup Security group object. + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: Models.DeviceSecurityGroup, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param deviceSecurityGroup Security group object. + * @param callback The callback + */ + createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: Models.DeviceSecurityGroup, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param deviceSecurityGroup Security group object. + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: Models.DeviceSecurityGroup, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: Models.DeviceSecurityGroup, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + deviceSecurityGroupName, + deviceSecurityGroup, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * User this method to deletes the device security group. + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceId: string, deviceSecurityGroupName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param callback The callback + */ + deleteMethod(resourceId: string, deviceSecurityGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceId The identifier of the resource. + * @param deviceSecurityGroupName The name of the device security group. Note that the name of the + * device security group is case insensitive. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceId: string, deviceSecurityGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceId: string, deviceSecurityGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceId, + deviceSecurityGroupName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Use this method get the list of device security groups for the specified IoT Hub resource. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{resourceId}/providers/Microsoft.Security/deviceSecurityGroups", + urlParameters: [ + Parameters.resourceId + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.DeviceSecurityGroupList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}", + urlParameters: [ + Parameters.resourceId, + Parameters.deviceSecurityGroupName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.DeviceSecurityGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}", + urlParameters: [ + Parameters.resourceId, + Parameters.deviceSecurityGroupName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "deviceSecurityGroup", + mapper: { + ...Mappers.DeviceSecurityGroup, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.DeviceSecurityGroup + }, + 201: { + bodyMapper: Mappers.DeviceSecurityGroup + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "{resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}", + urlParameters: [ + Parameters.resourceId, + Parameters.deviceSecurityGroupName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.DeviceSecurityGroupList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/discoveredSecuritySolutions.ts b/sdk/security/arm-security/src/operations/discoveredSecuritySolutions.ts index 08ce2d37ee85..a65a6cd10bb5 100644 --- a/sdk/security/arm-security/src/operations/discoveredSecuritySolutions.ts +++ b/sdk/security/arm-security/src/operations/discoveredSecuritySolutions.ts @@ -175,7 +175,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -199,7 +199,7 @@ const listByHomeRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -225,7 +225,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.discoveredSecuritySolutionName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/externalSecuritySolutions.ts b/sdk/security/arm-security/src/operations/externalSecuritySolutions.ts index 564bd6cab181..33c0cc882766 100644 --- a/sdk/security/arm-security/src/operations/externalSecuritySolutions.ts +++ b/sdk/security/arm-security/src/operations/externalSecuritySolutions.ts @@ -175,7 +175,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -199,7 +199,7 @@ const listByHomeRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -225,7 +225,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.externalSecuritySolutionsName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/index.ts b/sdk/security/arm-security/src/operations/index.ts index dd820149dfa7..85280c57928c 100644 --- a/sdk/security/arm-security/src/operations/index.ts +++ b/sdk/security/arm-security/src/operations/index.ts @@ -8,20 +8,36 @@ * regenerated. */ +export * from "./complianceResults"; export * from "./pricings"; -export * from "./securityContacts"; -export * from "./workspaceSettings"; -export * from "./autoProvisioningSettings"; -export * from "./compliances"; -export * from "./advancedThreatProtection"; -export * from "./settings"; -export * from "./informationProtectionPolicies"; -export * from "./operations"; -export * from "./locations"; -export * from "./tasks"; export * from "./alerts"; +export * from "./settings"; +export * from "./advancedThreatProtection"; +export * from "./deviceSecurityGroups"; +export * from "./iotSecuritySolution"; +export * from "./iotSecuritySolutionAnalytics"; +export * from "./iotSecuritySolutionsAnalyticsAggregatedAlert"; +export * from "./iotSecuritySolutionsAnalyticsRecommendation"; export * from "./discoveredSecuritySolutions"; -export * from "./jitNetworkAccessPolicies"; export * from "./externalSecuritySolutions"; -export * from "./topology"; +export * from "./locations"; +export * from "./operations"; +export * from "./tasks"; +export * from "./autoProvisioningSettings"; +export * from "./compliances"; +export * from "./informationProtectionPolicies"; +export * from "./securityContacts"; +export * from "./workspaceSettings"; +export * from "./regulatoryComplianceStandards"; +export * from "./regulatoryComplianceControls"; +export * from "./regulatoryComplianceAssessments"; +export * from "./serverVulnerabilityAssessmentOperations"; +export * from "./subAssessments"; +export * from "./automations"; +export * from "./assessmentsMetadata"; +export * from "./assessments"; +export * from "./adaptiveApplicationControls"; +export * from "./adaptiveNetworkHardenings"; export * from "./allowedConnections"; +export * from "./topology"; +export * from "./jitNetworkAccessPolicies"; diff --git a/sdk/security/arm-security/src/operations/informationProtectionPolicies.ts b/sdk/security/arm-security/src/operations/informationProtectionPolicies.ts index 59e511fb0445..4bcf11236eda 100644 --- a/sdk/security/arm-security/src/operations/informationProtectionPolicies.ts +++ b/sdk/security/arm-security/src/operations/informationProtectionPolicies.ts @@ -74,34 +74,38 @@ export class InformationProtectionPolicies { * (/providers/Microsoft.Management/managementGroups/mgName). * @param informationProtectionPolicyName Name of the information protection policy. Possible * values include: 'effective', 'custom' + * @param informationProtectionPolicy Information protection policy. * @param [options] The optional parameters * @returns Promise */ - createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, options?: msRest.RequestOptionsBase): Promise; + createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, informationProtectionPolicy: Models.InformationProtectionPolicy, options?: msRest.RequestOptionsBase): Promise; /** * @param scope Scope of the query, can be subscription * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group * (/providers/Microsoft.Management/managementGroups/mgName). * @param informationProtectionPolicyName Name of the information protection policy. Possible * values include: 'effective', 'custom' + * @param informationProtectionPolicy Information protection policy. * @param callback The callback */ - createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, callback: msRest.ServiceCallback): void; + createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, informationProtectionPolicy: Models.InformationProtectionPolicy, callback: msRest.ServiceCallback): void; /** * @param scope Scope of the query, can be subscription * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group * (/providers/Microsoft.Management/managementGroups/mgName). * @param informationProtectionPolicyName Name of the information protection policy. Possible * values include: 'effective', 'custom' + * @param informationProtectionPolicy Information protection policy. * @param options The optional parameters * @param callback The callback */ - createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, informationProtectionPolicy: Models.InformationProtectionPolicy, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(scope: string, informationProtectionPolicyName: Models.InformationProtectionPolicyName1, informationProtectionPolicy: Models.InformationProtectionPolicy, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { scope, informationProtectionPolicyName, + informationProtectionPolicy, options }, createOrUpdateOperationSpec, @@ -181,7 +185,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.informationProtectionPolicyName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -205,11 +209,18 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { Parameters.informationProtectionPolicyName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage ], + requestBody: { + parameterPath: "informationProtectionPolicy", + mapper: { + ...Mappers.InformationProtectionPolicy, + required: true + } + }, responses: { 200: { bodyMapper: Mappers.InformationProtectionPolicy @@ -231,7 +242,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.scope ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/iotSecuritySolution.ts b/sdk/security/arm-security/src/operations/iotSecuritySolution.ts new file mode 100644 index 000000000000..8584de5ac36e --- /dev/null +++ b/sdk/security/arm-security/src/operations/iotSecuritySolution.ts @@ -0,0 +1,497 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/iotSecuritySolutionMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a IotSecuritySolution. */ +export class IotSecuritySolution { + private readonly client: SecurityCenterContext; + + /** + * Create a IotSecuritySolution. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Use this method to get the list of IoT Security solutions by subscription. + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscription(options?: Models.IotSecuritySolutionListBySubscriptionOptionalParams): Promise; + /** + * @param callback The callback + */ + listBySubscription(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + listBySubscription(options: Models.IotSecuritySolutionListBySubscriptionOptionalParams, callback: msRest.ServiceCallback): void; + listBySubscription(options?: Models.IotSecuritySolutionListBySubscriptionOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listBySubscriptionOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get the list IoT Security solutions organized by resource group. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param [options] The optional parameters + * @returns Promise + */ + listByResourceGroup(resourceGroupName: string, options?: Models.IotSecuritySolutionListByResourceGroupOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param callback The callback + */ + listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param options The optional parameters + * @param callback The callback + */ + listByResourceGroup(resourceGroupName: string, options: Models.IotSecuritySolutionListByResourceGroupOptionalParams, callback: msRest.ServiceCallback): void; + listByResourceGroup(resourceGroupName: string, options?: Models.IotSecuritySolutionListByResourceGroupOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + options + }, + listByResourceGroupOperationSpec, + callback) as Promise; + } + + /** + * User this method to get details of a specific IoT Security solution based on solution name + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Use this method to create or update yours IoT Security solution + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param iotSecuritySolutionData The security solution data + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: Models.IoTSecuritySolutionModel, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param iotSecuritySolutionData The security solution data + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: Models.IoTSecuritySolutionModel, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param iotSecuritySolutionData The security solution data + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: Models.IoTSecuritySolutionModel, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: Models.IoTSecuritySolutionModel, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + iotSecuritySolutionData, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Use this method to update existing IoT Security solution tags or user defined resources. To + * update other fields use the CreateOrUpdate method. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param updateIotSecuritySolutionData The security solution data + * @param [options] The optional parameters + * @returns Promise + */ + update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: Models.UpdateIotSecuritySolutionData, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param updateIotSecuritySolutionData The security solution data + * @param callback The callback + */ + update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: Models.UpdateIotSecuritySolutionData, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param updateIotSecuritySolutionData The security solution data + * @param options The optional parameters + * @param callback The callback + */ + update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: Models.UpdateIotSecuritySolutionData, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: Models.UpdateIotSecuritySolutionData, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + updateIotSecuritySolutionData, + options + }, + updateOperationSpec, + callback) as Promise; + } + + /** + * Use this method to delete yours IoT Security solution + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, solutionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + deleteMethodOperationSpec, + callback); + } + + /** + * Use this method to get the list of IoT Security solutions by subscription. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listBySubscriptionNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listBySubscriptionNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listBySubscriptionNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listBySubscriptionNextOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get the list IoT Security solutions organized by resource group. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listByResourceGroupNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listBySubscriptionOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/iotSecuritySolutions", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion3, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName + ], + queryParameters: [ + Parameters.apiVersion3, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionModel + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "iotSecuritySolutionData", + mapper: { + ...Mappers.IoTSecuritySolutionModel, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionModel + }, + 201: { + bodyMapper: Mappers.IoTSecuritySolutionModel + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const updateOperationSpec: msRest.OperationSpec = { + httpMethod: "PATCH", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + requestBody: { + parameterPath: "updateIotSecuritySolutionData", + mapper: { + ...Mappers.UpdateIotSecuritySolutionData, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionModel + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listBySubscriptionNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/iotSecuritySolutionAnalytics.ts b/sdk/security/arm-security/src/operations/iotSecuritySolutionAnalytics.ts new file mode 100644 index 000000000000..e66f18882294 --- /dev/null +++ b/sdk/security/arm-security/src/operations/iotSecuritySolutionAnalytics.ts @@ -0,0 +1,150 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/iotSecuritySolutionAnalyticsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a IotSecuritySolutionAnalytics. */ +export class IotSecuritySolutionAnalytics { + private readonly client: SecurityCenterContext; + + /** + * Create a IotSecuritySolutionAnalytics. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Use this method to get IoT security Analytics metrics in an array. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get IoT Security Analytics metrics. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, solutionName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + getOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionAnalyticsModelList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecuritySolutionAnalyticsModel + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsAggregatedAlert.ts b/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsAggregatedAlert.ts new file mode 100644 index 000000000000..914c656d760d --- /dev/null +++ b/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsAggregatedAlert.ts @@ -0,0 +1,269 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/iotSecuritySolutionsAnalyticsAggregatedAlertMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a IotSecuritySolutionsAnalyticsAggregatedAlert. */ +export class IotSecuritySolutionsAnalyticsAggregatedAlert { + private readonly client: SecurityCenterContext; + + /** + * Create a IotSecuritySolutionsAnalyticsAggregatedAlert. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Use this method to get the aggregated alert list of yours IoT Security solution. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, solutionName: string, options?: Models.IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, options: Models.IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, solutionName: string, options?: Models.IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get a single the aggregated alert of yours IoT Security solution. This + * aggregation is performed by alert name. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + aggregatedAlertName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Use this method to dismiss an aggregated IoT Security Solution Alert. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param [options] The optional parameters + * @returns Promise + */ + dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param callback The callback + */ + dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedAlertName Identifier of the aggregated alert. + * @param options The optional parameters + * @param callback The callback + */ + dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + aggregatedAlertName, + options + }, + dismissOperationSpec, + callback); + } + + /** + * Use this method to get the aggregated alert list of yours IoT Security solution. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3, + Parameters.top + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedAlertList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName, + Parameters.aggregatedAlertName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedAlert + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const dismissOperationSpec: msRest.OperationSpec = { + httpMethod: "POST", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}/dismiss", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName, + Parameters.aggregatedAlertName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedAlertList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsRecommendation.ts b/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsRecommendation.ts new file mode 100644 index 000000000000..2801c7369e88 --- /dev/null +++ b/sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsRecommendation.ts @@ -0,0 +1,208 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/iotSecuritySolutionsAnalyticsRecommendationMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a IotSecuritySolutionsAnalyticsRecommendation. */ +export class IotSecuritySolutionsAnalyticsRecommendation { + private readonly client: SecurityCenterContext; + + /** + * Create a IotSecuritySolutionsAnalyticsRecommendation. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Use this method to get the aggregated security analytics recommendation of yours IoT Security + * solution. This aggregation is performed by recommendation name. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedRecommendationName Name of the recommendation aggregated for this query. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedRecommendationName Name of the recommendation aggregated for this query. + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param aggregatedRecommendationName Name of the recommendation aggregated for this query. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + aggregatedRecommendationName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get the list of aggregated security analytics recommendations of yours IoT + * Security solution. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param [options] The optional parameters + * @returns Promise + */ + list(resourceGroupName: string, solutionName: string, options?: Models.IotSecuritySolutionsAnalyticsRecommendationListOptionalParams): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param solutionName The name of the IoT Security solution. + * @param options The optional parameters + * @param callback The callback + */ + list(resourceGroupName: string, solutionName: string, options: Models.IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, callback: msRest.ServiceCallback): void; + list(resourceGroupName: string, solutionName: string, options?: Models.IotSecuritySolutionsAnalyticsRecommendationListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + solutionName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Use this method to get the list of aggregated security analytics recommendations of yours IoT + * Security solution. + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations/{aggregatedRecommendationName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName, + Parameters.aggregatedRecommendationName + ], + queryParameters: [ + Parameters.apiVersion3 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedRecommendation + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.solutionName + ], + queryParameters: [ + Parameters.apiVersion3, + Parameters.top + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedRecommendationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.IoTSecurityAggregatedRecommendationList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/jitNetworkAccessPolicies.ts b/sdk/security/arm-security/src/operations/jitNetworkAccessPolicies.ts index a9eca485751a..9659d3beb32d 100644 --- a/sdk/security/arm-security/src/operations/jitNetworkAccessPolicies.ts +++ b/sdk/security/arm-security/src/operations/jitNetworkAccessPolicies.ts @@ -413,7 +413,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -437,7 +437,7 @@ const listByRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -461,7 +461,7 @@ const listByResourceGroupOperationSpec: msRest.OperationSpec = { Parameters.resourceGroupName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -486,7 +486,7 @@ const listByResourceGroupAndRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -512,7 +512,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.jitNetworkAccessPolicyName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -538,7 +538,7 @@ const createOrUpdateOperationSpec: msRest.OperationSpec = { Parameters.jitNetworkAccessPolicyName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -571,7 +571,7 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { Parameters.jitNetworkAccessPolicyName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -597,7 +597,7 @@ const initiateOperationSpec: msRest.OperationSpec = { Parameters.jitNetworkAccessPolicyInitiateType ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/locations.ts b/sdk/security/arm-security/src/operations/locations.ts index ca7e3a22f61b..6fddbae9fa18 100644 --- a/sdk/security/arm-security/src/operations/locations.ts +++ b/sdk/security/arm-security/src/operations/locations.ts @@ -116,7 +116,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -140,7 +140,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/operations.ts b/sdk/security/arm-security/src/operations/operations.ts index 76388bc9221b..15d396b057d3 100644 --- a/sdk/security/arm-security/src/operations/operations.ts +++ b/sdk/security/arm-security/src/operations/operations.ts @@ -85,7 +85,7 @@ const listOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "providers/Microsoft.Security/operations", queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/pricings.ts b/sdk/security/arm-security/src/operations/pricings.ts index 835af87be06a..e604f40d8222 100644 --- a/sdk/security/arm-security/src/operations/pricings.ts +++ b/sdk/security/arm-security/src/operations/pricings.ts @@ -27,7 +27,7 @@ export class Pricings { } /** - * Security pricing configurations in the subscription + * Lists Security Center pricing configurations in the subscription. * @param [options] The optional parameters * @returns Promise */ @@ -51,225 +51,63 @@ export class Pricings { } /** - * Security pricing configurations in the resource group - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. - * @param callback The callback - */ - listByResourceGroup(resourceGroupName: string, callback: msRest.ServiceCallback): void; - /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. - * @param options The optional parameters - * @param callback The callback - */ - listByResourceGroup(resourceGroupName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroup(resourceGroupName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - resourceGroupName, - options - }, - listByResourceGroupOperationSpec, - callback) as Promise; - } - - /** - * Security pricing configuration in the subscriptionSecurity pricing configuration in the - * subscription - * @param pricingName name of the pricing configuration - * @param [options] The optional parameters - * @returns Promise - */ - getSubscriptionPricing(pricingName: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param pricingName name of the pricing configuration - * @param callback The callback - */ - getSubscriptionPricing(pricingName: string, callback: msRest.ServiceCallback): void; - /** - * @param pricingName name of the pricing configuration - * @param options The optional parameters - * @param callback The callback - */ - getSubscriptionPricing(pricingName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - getSubscriptionPricing(pricingName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - pricingName, - options - }, - getSubscriptionPricingOperationSpec, - callback) as Promise; - } - - /** - * Security pricing configuration in the subscription - * @param pricingName name of the pricing configuration - * @param pricing Pricing object - * @param [options] The optional parameters - * @returns Promise - */ - updateSubscriptionPricing(pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase): Promise; - /** - * @param pricingName name of the pricing configuration - * @param pricing Pricing object - * @param callback The callback - */ - updateSubscriptionPricing(pricingName: string, pricing: Models.Pricing, callback: msRest.ServiceCallback): void; - /** - * @param pricingName name of the pricing configuration - * @param pricing Pricing object - * @param options The optional parameters - * @param callback The callback - */ - updateSubscriptionPricing(pricingName: string, pricing: Models.Pricing, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - updateSubscriptionPricing(pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - pricingName, - pricing, - options - }, - updateSubscriptionPricingOperationSpec, - callback) as Promise; - } - - /** - * Security pricing configuration in the resource group - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. + * Gets a provided Security Center pricing configuration in the subscription. * @param pricingName name of the pricing configuration * @param [options] The optional parameters - * @returns Promise + * @returns Promise */ - getResourceGroupPricing(resourceGroupName: string, pricingName: string, options?: msRest.RequestOptionsBase): Promise; + get(pricingName: string, options?: msRest.RequestOptionsBase): Promise; /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. * @param pricingName name of the pricing configuration * @param callback The callback */ - getResourceGroupPricing(resourceGroupName: string, pricingName: string, callback: msRest.ServiceCallback): void; + get(pricingName: string, callback: msRest.ServiceCallback): void; /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. * @param pricingName name of the pricing configuration * @param options The optional parameters * @param callback The callback */ - getResourceGroupPricing(resourceGroupName: string, pricingName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - getResourceGroupPricing(resourceGroupName: string, pricingName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + get(pricingName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(pricingName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { - resourceGroupName, pricingName, options }, - getResourceGroupPricingOperationSpec, - callback) as Promise; + getOperationSpec, + callback) as Promise; } /** - * Security pricing configuration in the resource group - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. + * Updates a provided Security Center pricing configuration in the subscription. * @param pricingName name of the pricing configuration * @param pricing Pricing object * @param [options] The optional parameters - * @returns Promise + * @returns Promise */ - createOrUpdateResourceGroupPricing(resourceGroupName: string, pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase): Promise; + update(pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase): Promise; /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. * @param pricingName name of the pricing configuration * @param pricing Pricing object * @param callback The callback */ - createOrUpdateResourceGroupPricing(resourceGroupName: string, pricingName: string, pricing: Models.Pricing, callback: msRest.ServiceCallback): void; + update(pricingName: string, pricing: Models.Pricing, callback: msRest.ServiceCallback): void; /** - * @param resourceGroupName The name of the resource group within the user's subscription. The name - * is case insensitive. * @param pricingName name of the pricing configuration * @param pricing Pricing object * @param options The optional parameters * @param callback The callback */ - createOrUpdateResourceGroupPricing(resourceGroupName: string, pricingName: string, pricing: Models.Pricing, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - createOrUpdateResourceGroupPricing(resourceGroupName: string, pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + update(pricingName: string, pricing: Models.Pricing, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + update(pricingName: string, pricing: Models.Pricing, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { return this.client.sendOperationRequest( { - resourceGroupName, pricingName, pricing, options }, - createOrUpdateResourceGroupPricingOperationSpec, - callback) as Promise; - } - - /** - * Security pricing configurations in the subscription - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback - */ - listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listNextOperationSpec, - callback) as Promise; - } - - /** - * Security pricing configurations in the resource group - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param [options] The optional parameters - * @returns Promise - */ - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param callback The callback - */ - listByResourceGroupNext(nextPageLink: string, callback: msRest.ServiceCallback): void; - /** - * @param nextPageLink The NextLink from the previous successful call to List operation. - * @param options The optional parameters - * @param callback The callback - */ - listByResourceGroupNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; - listByResourceGroupNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { - return this.client.sendOperationRequest( - { - nextPageLink, - options - }, - listByResourceGroupNextOperationSpec, - callback) as Promise; + updateOperationSpec, + callback) as Promise; } } @@ -282,7 +120,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion1 ], headerParameters: [ Parameters.acceptLanguage @@ -298,31 +136,7 @@ const listOperationSpec: msRest.OperationSpec = { serializer }; -const listByResourceGroupOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings", - urlParameters: [ - Parameters.subscriptionId, - Parameters.resourceGroupName - ], - queryParameters: [ - Parameters.apiVersion0 - ], - headerParameters: [ - Parameters.acceptLanguage - ], - responses: { - 200: { - bodyMapper: Mappers.PricingList - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - serializer -}; - -const getSubscriptionPricingOperationSpec: msRest.OperationSpec = { +const getOperationSpec: msRest.OperationSpec = { httpMethod: "GET", path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}", urlParameters: [ @@ -330,7 +144,7 @@ const getSubscriptionPricingOperationSpec: msRest.OperationSpec = { Parameters.pricingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion1 ], headerParameters: [ Parameters.acceptLanguage @@ -346,7 +160,7 @@ const getSubscriptionPricingOperationSpec: msRest.OperationSpec = { serializer }; -const updateSubscriptionPricingOperationSpec: msRest.OperationSpec = { +const updateOperationSpec: msRest.OperationSpec = { httpMethod: "PUT", path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}", urlParameters: [ @@ -354,7 +168,7 @@ const updateSubscriptionPricingOperationSpec: msRest.OperationSpec = { Parameters.pricingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion1 ], headerParameters: [ Parameters.acceptLanguage @@ -376,102 +190,3 @@ const updateSubscriptionPricingOperationSpec: msRest.OperationSpec = { }, serializer }; - -const getResourceGroupPricingOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings/{pricingName}", - urlParameters: [ - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.pricingName - ], - queryParameters: [ - Parameters.apiVersion0 - ], - headerParameters: [ - Parameters.acceptLanguage - ], - responses: { - 200: { - bodyMapper: Mappers.Pricing - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - serializer -}; - -const createOrUpdateResourceGroupPricingOperationSpec: msRest.OperationSpec = { - httpMethod: "PUT", - path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/pricings/{pricingName}", - urlParameters: [ - Parameters.subscriptionId, - Parameters.resourceGroupName, - Parameters.pricingName - ], - queryParameters: [ - Parameters.apiVersion0 - ], - headerParameters: [ - Parameters.acceptLanguage - ], - requestBody: { - parameterPath: "pricing", - mapper: { - ...Mappers.Pricing, - required: true - } - }, - responses: { - 200: { - bodyMapper: Mappers.Pricing - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - serializer -}; - -const listNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", - path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], - responses: { - 200: { - bodyMapper: Mappers.PricingList - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - serializer -}; - -const listByResourceGroupNextOperationSpec: msRest.OperationSpec = { - httpMethod: "GET", - baseUrl: "https://management.azure.com", - path: "{nextLink}", - urlParameters: [ - Parameters.nextPageLink - ], - headerParameters: [ - Parameters.acceptLanguage - ], - responses: { - 200: { - bodyMapper: Mappers.PricingList - }, - default: { - bodyMapper: Mappers.CloudError - } - }, - serializer -}; diff --git a/sdk/security/arm-security/src/operations/regulatoryComplianceAssessments.ts b/sdk/security/arm-security/src/operations/regulatoryComplianceAssessments.ts new file mode 100644 index 000000000000..d9e7f429a94d --- /dev/null +++ b/sdk/security/arm-security/src/operations/regulatoryComplianceAssessments.ts @@ -0,0 +1,199 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/regulatoryComplianceAssessmentsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a RegulatoryComplianceAssessments. */ +export class RegulatoryComplianceAssessments { + private readonly client: SecurityCenterContext; + + /** + * Create a RegulatoryComplianceAssessments. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Details and state of assessments mapped to selected regulatory compliance control + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param [options] The optional parameters + * @returns Promise + */ + list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: Models.RegulatoryComplianceAssessmentsListOptionalParams): Promise; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param callback The callback + */ + list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, callback: msRest.ServiceCallback): void; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param options The optional parameters + * @param callback The callback + */ + list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options: Models.RegulatoryComplianceAssessmentsListOptionalParams, callback: msRest.ServiceCallback): void; + list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: Models.RegulatoryComplianceAssessmentsListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Supported regulatory compliance details and state for selected assessment + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param regulatoryComplianceAssessmentName Name of the regulatory compliance assessment object + * @param [options] The optional parameters + * @returns Promise + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param regulatoryComplianceAssessmentName Name of the regulatory compliance assessment object + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, callback: msRest.ServiceCallback): void; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param regulatoryComplianceAssessmentName Name of the regulatory compliance assessment object + * @param options The optional parameters + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + regulatoryComplianceAssessmentName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Details and state of assessments mapped to selected regulatory compliance control + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments", + urlParameters: [ + Parameters.subscriptionId, + Parameters.regulatoryComplianceStandardName, + Parameters.regulatoryComplianceControlName + ], + queryParameters: [ + Parameters.apiVersion6, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments/{regulatoryComplianceAssessmentName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.regulatoryComplianceStandardName, + Parameters.regulatoryComplianceControlName, + Parameters.regulatoryComplianceAssessmentName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/regulatoryComplianceControls.ts b/sdk/security/arm-security/src/operations/regulatoryComplianceControls.ts new file mode 100644 index 000000000000..5d40b5b0688b --- /dev/null +++ b/sdk/security/arm-security/src/operations/regulatoryComplianceControls.ts @@ -0,0 +1,189 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/regulatoryComplianceControlsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a RegulatoryComplianceControls. */ +export class RegulatoryComplianceControls { + private readonly client: SecurityCenterContext; + + /** + * Create a RegulatoryComplianceControls. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * All supported regulatory compliance controls details and state for selected standard + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param [options] The optional parameters + * @returns Promise + */ + list(regulatoryComplianceStandardName: string, options?: Models.RegulatoryComplianceControlsListOptionalParams): Promise; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param callback The callback + */ + list(regulatoryComplianceStandardName: string, callback: msRest.ServiceCallback): void; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param options The optional parameters + * @param callback The callback + */ + list(regulatoryComplianceStandardName: string, options: Models.RegulatoryComplianceControlsListOptionalParams, callback: msRest.ServiceCallback): void; + list(regulatoryComplianceStandardName: string, options?: Models.RegulatoryComplianceControlsListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + regulatoryComplianceStandardName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Selected regulatory compliance control details and state + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param [options] The optional parameters + * @returns Promise + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, callback: msRest.ServiceCallback): void; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param regulatoryComplianceControlName Name of the regulatory compliance control object + * @param options The optional parameters + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * All supported regulatory compliance controls details and state for selected standard + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls", + urlParameters: [ + Parameters.subscriptionId, + Parameters.regulatoryComplianceStandardName + ], + queryParameters: [ + Parameters.apiVersion6, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceControlList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.regulatoryComplianceStandardName, + Parameters.regulatoryComplianceControlName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceControl + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceControlList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/regulatoryComplianceStandards.ts b/sdk/security/arm-security/src/operations/regulatoryComplianceStandards.ts new file mode 100644 index 000000000000..07b2a60f5258 --- /dev/null +++ b/sdk/security/arm-security/src/operations/regulatoryComplianceStandards.ts @@ -0,0 +1,179 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/regulatoryComplianceStandardsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a RegulatoryComplianceStandards. */ +export class RegulatoryComplianceStandards { + private readonly client: SecurityCenterContext; + + /** + * Create a RegulatoryComplianceStandards. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Supported regulatory compliance standards details and state + * @param [options] The optional parameters + * @returns Promise + */ + list(options?: Models.RegulatoryComplianceStandardsListOptionalParams): Promise; + /** + * @param callback The callback + */ + list(callback: msRest.ServiceCallback): void; + /** + * @param options The optional parameters + * @param callback The callback + */ + list(options: Models.RegulatoryComplianceStandardsListOptionalParams, callback: msRest.ServiceCallback): void; + list(options?: Models.RegulatoryComplianceStandardsListOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * Supported regulatory compliance details state for selected standard + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param [options] The optional parameters + * @returns Promise + */ + get(regulatoryComplianceStandardName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, callback: msRest.ServiceCallback): void; + /** + * @param regulatoryComplianceStandardName Name of the regulatory compliance standard object + * @param options The optional parameters + * @param callback The callback + */ + get(regulatoryComplianceStandardName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(regulatoryComplianceStandardName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + regulatoryComplianceStandardName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Supported regulatory compliance standards details and state + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards", + urlParameters: [ + Parameters.subscriptionId + ], + queryParameters: [ + Parameters.apiVersion6, + Parameters.filter + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceStandardList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.regulatoryComplianceStandardName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceStandard + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.RegulatoryComplianceStandardList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/securityContacts.ts b/sdk/security/arm-security/src/operations/securityContacts.ts index d96d049f457f..e368e7b7cf1f 100644 --- a/sdk/security/arm-security/src/operations/securityContacts.ts +++ b/sdk/security/arm-security/src/operations/securityContacts.ts @@ -208,7 +208,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -232,7 +232,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.securityContactName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -256,7 +256,7 @@ const createOperationSpec: msRest.OperationSpec = { Parameters.securityContactName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -287,7 +287,7 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { Parameters.securityContactName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -309,7 +309,7 @@ const updateOperationSpec: msRest.OperationSpec = { Parameters.securityContactName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/serverVulnerabilityAssessmentOperations.ts b/sdk/security/arm-security/src/operations/serverVulnerabilityAssessmentOperations.ts new file mode 100644 index 000000000000..660a35067e2d --- /dev/null +++ b/sdk/security/arm-security/src/operations/serverVulnerabilityAssessmentOperations.ts @@ -0,0 +1,313 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/serverVulnerabilityAssessmentOperationsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a ServerVulnerabilityAssessmentOperations. */ +export class ServerVulnerabilityAssessmentOperations { + private readonly client: SecurityCenterContext; + + /** + * Create a ServerVulnerabilityAssessmentOperations. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * Gets a list of server vulnerability assessment onboarding statuses on a given resource. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param callback The callback + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param options The optional parameters + * @param callback The callback + */ + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options + }, + listByExtendedResourceOperationSpec, + callback) as Promise; + } + + /** + * Gets a server vulnerability assessment onboarding statuses on a given resource. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param callback The callback + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param options The optional parameters + * @param callback The callback + */ + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Creating a server vulnerability assessment on a resource, which will onboard a resource for + * having a vulnerability assessment on it + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param options The optional parameters + * @param callback The callback + */ + createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options + }, + createOrUpdateOperationSpec, + callback) as Promise; + } + + /** + * Removing server vulnerability assessment from a resource. + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param [options] The optional parameters + * @returns Promise + */ + deleteMethod(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, callback: msRest.ServiceCallback): void; + /** + * @param resourceGroupName The name of the resource group within the user's subscription. The name + * is case insensitive. + * @param resourceNamespace The Namespace of the resource. + * @param resourceType The type of the resource. + * @param resourceName Name of the resource. + * @param options The optional parameters + * @param callback The callback + */ + deleteMethod(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + deleteMethod(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options + }, + deleteMethodOperationSpec, + callback); + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listByExtendedResourceOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ServerVulnerabilityAssessmentsList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName, + Parameters.serverVulnerabilityAssessment + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.ServerVulnerabilityAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const createOrUpdateOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName, + Parameters.serverVulnerabilityAssessment + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 202: { + bodyMapper: Mappers.ServerVulnerabilityAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const deleteMethodOperationSpec: msRest.OperationSpec = { + httpMethod: "DELETE", + path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}", + urlParameters: [ + Parameters.subscriptionId, + Parameters.resourceGroupName, + Parameters.resourceNamespace, + Parameters.resourceType, + Parameters.resourceName, + Parameters.serverVulnerabilityAssessment + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: {}, + 204: {}, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/settings.ts b/sdk/security/arm-security/src/operations/settings.ts index b5d38a326868..dfe07c34cb90 100644 --- a/sdk/security/arm-security/src/operations/settings.ts +++ b/sdk/security/arm-security/src/operations/settings.ts @@ -52,18 +52,18 @@ export class Settings { /** * Settings of different configurations in security center - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param [options] The optional parameters * @returns Promise */ get(settingName: Models.SettingName, options?: msRest.RequestOptionsBase): Promise; /** - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param callback The callback */ get(settingName: Models.SettingName, callback: msRest.ServiceCallback): void; /** - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param options The optional parameters * @param callback The callback */ @@ -80,20 +80,20 @@ export class Settings { /** * updating settings about different configurations in security center - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param setting Setting object * @param [options] The optional parameters * @returns Promise */ update(settingName: Models.SettingName1, setting: Models.SettingUnion, options?: msRest.RequestOptionsBase): Promise; /** - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param setting Setting object * @param callback The callback */ update(settingName: Models.SettingName1, setting: Models.SettingUnion, callback: msRest.ServiceCallback): void; /** - * @param settingName Name of setting. Possible values include: 'MCAS', 'WDATP' + * @param settingName Name of setting: (MCAS/WDATP). Possible values include: 'MCAS', 'WDATP' * @param setting Setting object * @param options The optional parameters * @param callback The callback @@ -148,7 +148,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -172,7 +172,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.settingName0 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage @@ -196,7 +196,7 @@ const updateOperationSpec: msRest.OperationSpec = { Parameters.settingName0 ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion2 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/subAssessments.ts b/sdk/security/arm-security/src/operations/subAssessments.ts new file mode 100644 index 000000000000..64a0fbc45549 --- /dev/null +++ b/sdk/security/arm-security/src/operations/subAssessments.ts @@ -0,0 +1,314 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * 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 * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/subAssessmentsMappers"; +import * as Parameters from "../models/parameters"; +import { SecurityCenterContext } from "../securityCenterContext"; + +/** Class representing a SubAssessments. */ +export class SubAssessments { + private readonly client: SecurityCenterContext; + + /** + * Create a SubAssessments. + * @param {SecurityCenterContext} client Reference to the service client. + */ + constructor(client: SecurityCenterContext) { + this.client = client; + } + + /** + * 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). + * @param [options] The optional parameters + * @returns Promise + */ + listAll(scope: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param callback The callback + */ + listAll(scope: string, callback: msRest.ServiceCallback): void; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param options The optional parameters + * @param callback The callback + */ + listAll(scope: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listAll(scope: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + scope, + options + }, + listAllOperationSpec, + callback) as Promise; + } + + /** + * 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). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param [options] The optional parameters + * @returns Promise + */ + list(scope: string, assessmentName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param callback The callback + */ + list(scope: string, assessmentName: string, callback: msRest.ServiceCallback): void; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param options The optional parameters + * @param callback The callback + */ + list(scope: string, assessmentName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + list(scope: string, assessmentName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + scope, + assessmentName, + options + }, + listOperationSpec, + callback) as Promise; + } + + /** + * 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). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param subAssessmentName The Sub-Assessment Key - Unique key for the sub-assessment type + * @param [options] The optional parameters + * @returns Promise + */ + get(scope: string, assessmentName: string, subAssessmentName: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param subAssessmentName The Sub-Assessment Key - Unique key for the sub-assessment type + * @param callback The callback + */ + get(scope: string, assessmentName: string, subAssessmentName: string, callback: msRest.ServiceCallback): void; + /** + * @param scope Scope of the query, can be subscription + * (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group + * (/providers/Microsoft.Management/managementGroups/mgName). + * @param assessmentName The Assessment Key - Unique key for the assessment type + * @param subAssessmentName The Sub-Assessment Key - Unique key for the sub-assessment type + * @param options The optional parameters + * @param callback The callback + */ + get(scope: string, assessmentName: string, subAssessmentName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + get(scope: string, assessmentName: string, subAssessmentName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + scope, + assessmentName, + subAssessmentName, + options + }, + getOperationSpec, + callback) as Promise; + } + + /** + * Get security sub-assessments on all your scanned resources inside a subscription scope + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listAllNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listAllNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listAllNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listAllNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listAllNextOperationSpec, + callback) as Promise; + } + + /** + * Get security sub-assessments on all your scanned resources inside a scope + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param [options] The optional parameters + * @returns Promise + */ + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase): Promise; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param callback The callback + */ + listNext(nextPageLink: string, callback: msRest.ServiceCallback): void; + /** + * @param nextPageLink The NextLink from the previous successful call to List operation. + * @param options The optional parameters + * @param callback The callback + */ + listNext(nextPageLink: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void; + listNext(nextPageLink: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + nextPageLink, + options + }, + listNextOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const listAllOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{scope}/providers/Microsoft.Security/subAssessments", + urlParameters: [ + Parameters.scope + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecuritySubAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments", + urlParameters: [ + Parameters.scope, + Parameters.assessmentName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecuritySubAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const getOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + path: "{scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments/{subAssessmentName}", + urlParameters: [ + Parameters.scope, + Parameters.assessmentName, + Parameters.subAssessmentName + ], + queryParameters: [ + Parameters.apiVersion6 + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecuritySubAssessment + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listAllNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecuritySubAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; + +const listNextOperationSpec: msRest.OperationSpec = { + httpMethod: "GET", + baseUrl: "https://management.azure.com", + path: "{nextLink}", + urlParameters: [ + Parameters.nextPageLink + ], + headerParameters: [ + Parameters.acceptLanguage + ], + responses: { + 200: { + bodyMapper: Mappers.SecuritySubAssessmentList + }, + default: { + bodyMapper: Mappers.CloudError + } + }, + serializer +}; diff --git a/sdk/security/arm-security/src/operations/tasks.ts b/sdk/security/arm-security/src/operations/tasks.ts index cf2414a50cfe..28712385dcf5 100644 --- a/sdk/security/arm-security/src/operations/tasks.ts +++ b/sdk/security/arm-security/src/operations/tasks.ts @@ -339,7 +339,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion4, Parameters.filter ], headerParameters: [ @@ -364,7 +364,7 @@ const listByHomeRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion4, Parameters.filter ], headerParameters: [ @@ -390,7 +390,7 @@ const getSubscriptionLevelTaskOperationSpec: msRest.OperationSpec = { Parameters.taskName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -416,7 +416,7 @@ const updateSubscriptionLevelTaskStateOperationSpec: msRest.OperationSpec = { Parameters.taskUpdateActionType ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -439,7 +439,7 @@ const listByResourceGroupOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1, + Parameters.apiVersion4, Parameters.filter ], headerParameters: [ @@ -466,7 +466,7 @@ const getResourceGroupLevelTaskOperationSpec: msRest.OperationSpec = { Parameters.taskName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage @@ -493,7 +493,7 @@ const updateResourceGroupLevelTaskStateOperationSpec: msRest.OperationSpec = { Parameters.taskUpdateActionType ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion4 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/topology.ts b/sdk/security/arm-security/src/operations/topology.ts index 29881ed37736..05a1723a8999 100644 --- a/sdk/security/arm-security/src/operations/topology.ts +++ b/sdk/security/arm-security/src/operations/topology.ts @@ -175,7 +175,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -199,7 +199,7 @@ const listByHomeRegionOperationSpec: msRest.OperationSpec = { Parameters.ascLocation ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage @@ -225,7 +225,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.topologyResourceName ], queryParameters: [ - Parameters.apiVersion1 + Parameters.apiVersion7 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/operations/workspaceSettings.ts b/sdk/security/arm-security/src/operations/workspaceSettings.ts index 7aa4886714a4..242206b5175f 100644 --- a/sdk/security/arm-security/src/operations/workspaceSettings.ts +++ b/sdk/security/arm-security/src/operations/workspaceSettings.ts @@ -27,7 +27,8 @@ export class WorkspaceSettings { } /** - * Settings about where we should store your security data and logs + * 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 [options] The optional parameters * @returns Promise */ @@ -51,7 +52,8 @@ export class WorkspaceSettings { } /** - * Settings about where we should store your security data and logs + * 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 workspaceSettingName Name of the security setting * @param [options] The optional parameters * @returns Promise @@ -172,7 +174,8 @@ export class WorkspaceSettings { } /** - * Settings about where we should store your security data and logs + * 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 nextPageLink The NextLink from the previous successful call to List operation. * @param [options] The optional parameters * @returns Promise @@ -209,7 +212,7 @@ const listOperationSpec: msRest.OperationSpec = { Parameters.subscriptionId ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -233,7 +236,7 @@ const getOperationSpec: msRest.OperationSpec = { Parameters.workspaceSettingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -257,7 +260,7 @@ const createOperationSpec: msRest.OperationSpec = { Parameters.workspaceSettingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -288,7 +291,7 @@ const updateOperationSpec: msRest.OperationSpec = { Parameters.workspaceSettingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage @@ -319,7 +322,7 @@ const deleteMethodOperationSpec: msRest.OperationSpec = { Parameters.workspaceSettingName ], queryParameters: [ - Parameters.apiVersion0 + Parameters.apiVersion5 ], headerParameters: [ Parameters.acceptLanguage diff --git a/sdk/security/arm-security/src/securityCenter.ts b/sdk/security/arm-security/src/securityCenter.ts index 5b1f4c9ebf51..447ed4b45547 100644 --- a/sdk/security/arm-security/src/securityCenter.ts +++ b/sdk/security/arm-security/src/securityCenter.ts @@ -17,23 +17,39 @@ import { SecurityCenterContext } from "./securityCenterContext"; class SecurityCenter extends SecurityCenterContext { // Operation groups + complianceResults: operations.ComplianceResults; pricings: operations.Pricings; - securityContacts: operations.SecurityContacts; - workspaceSettings: operations.WorkspaceSettings; - autoProvisioningSettings: operations.AutoProvisioningSettings; - compliances: operations.Compliances; - advancedThreatProtection: operations.AdvancedThreatProtection; - settings: operations.Settings; - informationProtectionPolicies: operations.InformationProtectionPolicies; - operations: operations.Operations; - locations: operations.Locations; - tasks: operations.Tasks; alerts: operations.Alerts; + settings: operations.Settings; + advancedThreatProtection: operations.AdvancedThreatProtection; + deviceSecurityGroups: operations.DeviceSecurityGroups; + iotSecuritySolution: operations.IotSecuritySolution; + iotSecuritySolutionAnalytics: operations.IotSecuritySolutionAnalytics; + iotSecuritySolutionsAnalyticsAggregatedAlert: operations.IotSecuritySolutionsAnalyticsAggregatedAlert; + iotSecuritySolutionsAnalyticsRecommendation: operations.IotSecuritySolutionsAnalyticsRecommendation; discoveredSecuritySolutions: operations.DiscoveredSecuritySolutions; - jitNetworkAccessPolicies: operations.JitNetworkAccessPolicies; externalSecuritySolutions: operations.ExternalSecuritySolutions; - topology: operations.Topology; + locations: operations.Locations; + operations: operations.Operations; + tasks: operations.Tasks; + autoProvisioningSettings: operations.AutoProvisioningSettings; + compliances: operations.Compliances; + informationProtectionPolicies: operations.InformationProtectionPolicies; + securityContacts: operations.SecurityContacts; + workspaceSettings: operations.WorkspaceSettings; + regulatoryComplianceStandards: operations.RegulatoryComplianceStandards; + regulatoryComplianceControls: operations.RegulatoryComplianceControls; + regulatoryComplianceAssessments: operations.RegulatoryComplianceAssessments; + serverVulnerabilityAssessment: operations.ServerVulnerabilityAssessmentOperations; + subAssessments: operations.SubAssessments; + automations: operations.Automations; + assessmentsMetadata: operations.AssessmentsMetadata; + assessments: operations.Assessments; + adaptiveApplicationControls: operations.AdaptiveApplicationControls; + adaptiveNetworkHardenings: operations.AdaptiveNetworkHardenings; allowedConnections: operations.AllowedConnections; + topology: operations.Topology; + jitNetworkAccessPolicies: operations.JitNetworkAccessPolicies; /** * Initializes a new instance of the SecurityCenter class. @@ -45,23 +61,39 @@ class SecurityCenter extends SecurityCenterContext { */ constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, ascLocation: string, options?: Models.SecurityCenterOptions) { super(credentials, subscriptionId, ascLocation, options); + this.complianceResults = new operations.ComplianceResults(this); this.pricings = new operations.Pricings(this); - this.securityContacts = new operations.SecurityContacts(this); - this.workspaceSettings = new operations.WorkspaceSettings(this); - this.autoProvisioningSettings = new operations.AutoProvisioningSettings(this); - this.compliances = new operations.Compliances(this); - this.advancedThreatProtection = new operations.AdvancedThreatProtection(this); - this.settings = new operations.Settings(this); - this.informationProtectionPolicies = new operations.InformationProtectionPolicies(this); - this.operations = new operations.Operations(this); - this.locations = new operations.Locations(this); - this.tasks = new operations.Tasks(this); this.alerts = new operations.Alerts(this); + this.settings = new operations.Settings(this); + this.advancedThreatProtection = new operations.AdvancedThreatProtection(this); + this.deviceSecurityGroups = new operations.DeviceSecurityGroups(this); + this.iotSecuritySolution = new operations.IotSecuritySolution(this); + this.iotSecuritySolutionAnalytics = new operations.IotSecuritySolutionAnalytics(this); + this.iotSecuritySolutionsAnalyticsAggregatedAlert = new operations.IotSecuritySolutionsAnalyticsAggregatedAlert(this); + this.iotSecuritySolutionsAnalyticsRecommendation = new operations.IotSecuritySolutionsAnalyticsRecommendation(this); this.discoveredSecuritySolutions = new operations.DiscoveredSecuritySolutions(this); - this.jitNetworkAccessPolicies = new operations.JitNetworkAccessPolicies(this); this.externalSecuritySolutions = new operations.ExternalSecuritySolutions(this); - this.topology = new operations.Topology(this); + this.locations = new operations.Locations(this); + this.operations = new operations.Operations(this); + this.tasks = new operations.Tasks(this); + this.autoProvisioningSettings = new operations.AutoProvisioningSettings(this); + this.compliances = new operations.Compliances(this); + this.informationProtectionPolicies = new operations.InformationProtectionPolicies(this); + this.securityContacts = new operations.SecurityContacts(this); + this.workspaceSettings = new operations.WorkspaceSettings(this); + this.regulatoryComplianceStandards = new operations.RegulatoryComplianceStandards(this); + this.regulatoryComplianceControls = new operations.RegulatoryComplianceControls(this); + this.regulatoryComplianceAssessments = new operations.RegulatoryComplianceAssessments(this); + this.serverVulnerabilityAssessment = new operations.ServerVulnerabilityAssessmentOperations(this); + this.subAssessments = new operations.SubAssessments(this); + this.automations = new operations.Automations(this); + this.assessmentsMetadata = new operations.AssessmentsMetadata(this); + this.assessments = new operations.Assessments(this); + this.adaptiveApplicationControls = new operations.AdaptiveApplicationControls(this); + this.adaptiveNetworkHardenings = new operations.AdaptiveNetworkHardenings(this); this.allowedConnections = new operations.AllowedConnections(this); + this.topology = new operations.Topology(this); + this.jitNetworkAccessPolicies = new operations.JitNetworkAccessPolicies(this); } } diff --git a/sdk/security/arm-security/src/securityCenterContext.ts b/sdk/security/arm-security/src/securityCenterContext.ts index 1456da91b8ae..3cbbd0dd847c 100644 --- a/sdk/security/arm-security/src/securityCenterContext.ts +++ b/sdk/security/arm-security/src/securityCenterContext.ts @@ -13,7 +13,7 @@ import * as msRest from "@azure/ms-rest-js"; import * as msRestAzure from "@azure/ms-rest-azure-js"; const packageName = "@azure/arm-security"; -const packageVersion = "0.1.0"; +const packageVersion = "1.2.0"; export class SecurityCenterContext extends msRestAzure.AzureServiceClient { credentials: msRest.ServiceClientCredentials; diff --git a/sdk/security/arm-security/tsconfig.json b/sdk/security/arm-security/tsconfig.json index 87bbf5b5fa49..422b584abd5e 100644 --- a/sdk/security/arm-security/tsconfig.json +++ b/sdk/security/arm-security/tsconfig.json @@ -9,7 +9,7 @@ "esModuleInterop": true, "allowSyntheticDefaultImports": true, "forceConsistentCasingInFileNames": true, - "lib": ["es6"], + "lib": ["es6", "dom"], "declaration": true, "outDir": "./esm", "importHelpers": true