From 4daec7b4087be2a3b5d9c0d493a46b4d78d65460 Mon Sep 17 00:00:00 2001 From: azure-sdk Date: Sun, 10 May 2026 06:33:42 +0000 Subject: [PATCH 1/6] Configurations: 'specification/security/resource-manager/Microsoft.Security/Security/tspconfig.yaml', API Version: 2026-04-01-preview, SDK Release Type: beta, and CommitSHA: '41784cfad64229e05cb37b1532a686a0cc3a60a9' in SpecRepo: 'https://github.com/Azure/azure-rest-api-specs' Pipeline run: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=6275780 Refer to https://eng.ms/docs/products/azure-developer-experience/develop/sdk-release/sdk-release-prerequisites to prepare for SDK release. --- .github/CODEOWNERS | 2 +- pnpm-lock.yaml | 34 +- sdk/security/arm-security/CHANGELOG.md | 989 +- sdk/security/arm-security/LICENSE | 2 +- sdk/security/arm-security/README.md | 25 +- sdk/security/arm-security/_meta.json | 8 - sdk/security/arm-security/api-extractor.json | 4 +- sdk/security/arm-security/eslint.config.mjs | 14 + sdk/security/arm-security/metadata.json | 904 + sdk/security/arm-security/package.json | 800 +- .../review/arm-security-api-node.api.md | 26 + .../arm-security-models-alertsAPI-node.api.md | 204 + ...dels-alertsSuppressionRulesAPI-node.api.md | 45 + ...urity-models-apiCollectionsAPI-node.api.md | 37 + ...ecurity-models-applicationsAPI-node.api.md | 33 + ...-security-models-assessmentAPI-node.api.md | 436 + ...security-models-atpSettingsAPI-node.api.md | 19 + ...security-models-automationsAPI-node.api.md | 243 + .../arm-security-models-common-node.api.md | 126 + ...ty-models-complianceResultsAPI-node.api.md | 30 + ...y-models-defenderForStorageAPI-node.api.md | 110 + ...-security-models-governanceAPI-node.api.md | 152 + ...curity-models-healthReportsAPI-node.api.md | 86 + ...security-models-ioTSecurityAPI-node.api.md | 381 + ...urity-models-legacySettingsAPI-node.api.md | 116 + ...m-security-models-locationsAPI-node.api.md | 14 + ...curity-models-mdeOnboardingAPI-node.api.md | 26 + .../review/arm-security-models-node.api.md | 183 + ...rm-security-models-pricingsAPI-node.api.md | 98 + ...ecurity-models-privateLinksAPI-node.api.md | 54 + ...models-regulatoryComplianceAPI-node.api.md | 69 + ...security-models-secureScoreAPI-node.api.md | 101 + ...y-models-securityConnectorsAPI-node.api.md | 703 + ...ls-securityConnectorsDevOpsAPI-node.api.md | 317 + ...odels-securityManagementClient-node.api.md | 14 + ...ty-models-securityOperatorsAPI-node.api.md | 14 + ...ty-models-securitySolutionsAPI-node.api.md | 386 + ...ty-models-securityStandardsAPI-node.api.md | 209 + ...-models-sensitivitySettingsAPI-node.api.md | 75 + ...rabilityAssessmentsSettingsAPI-node.api.md | 53 + ...rm-security-models-settingsAPI-node.api.md | 50 + ...sqlVulnerabilityAssessmentsAPI-node.api.md | 223 + ...m-security-models-standardsAPI-node.api.md | 81 + ...urity-models-subAssessmentsAPI-node.api.md | 125 + .../arm-security-models-tasksAPI-node.api.md | 45 + .../review/arm-security-node.api.md | 5328 +++--- sdk/security/arm-security/sample.env | 4 - ...adaptiveApplicationControlsDeleteSample.ts | 30 - .../adaptiveApplicationControlsGetSample.ts | 30 - .../adaptiveApplicationControlsListSample.ts | 35 - .../adaptiveApplicationControlsPutSample.ts | 117 - .../adaptiveNetworkHardeningsEnforceSample.ts | 63 - .../adaptiveNetworkHardeningsGetSample.ts | 39 - ...kHardeningsListByExtendedResourceSample.ts | 40 - .../advancedThreatProtectionCreateSample.ts | 38 - .../advancedThreatProtectionGetSample.ts | 28 - .../alertsGetResourceGroupLevelSample.ts | 35 - .../alertsGetSubscriptionLevelSample.ts | 30 - .../alertsListByResourceGroupSample.ts | 32 - ...rtsListResourceGroupLevelByRegionSample.ts | 36 - .../samples-dev/alertsListSample.ts | 31 - ...ertsListSubscriptionLevelByRegionSample.ts | 32 - .../samples-dev/alertsSimulateSample.ts | 46 - .../alertsSuppressionRulesDeleteSample.ts | 29 - .../alertsSuppressionRulesGetSample.ts | 29 - .../alertsSuppressionRulesListSample.ts | 50 - .../alertsSuppressionRulesUpdateSample.ts | 43 - ...ResourceGroupLevelStateToActivateSample.ts | 35 - ...eResourceGroupLevelStateToDismissSample.ts | 35 - ...sourceGroupLevelStateToInProgressSample.ts | 35 - ...eResourceGroupLevelStateToResolveSample.ts | 35 - ...eSubscriptionLevelStateToActivateSample.ts | 30 - ...teSubscriptionLevelStateToDismissSample.ts | 30 - ...ubscriptionLevelStateToInProgressSample.ts | 33 - ...teSubscriptionLevelStateToResolveSample.ts | 30 - .../allowedConnectionsGetSample.ts | 35 - ...llowedConnectionsListByHomeRegionSample.ts | 32 - .../allowedConnectionsListSample.ts | 31 - ...onsGetByAzureApiManagementServiceSample.ts | 35 - ...nsListByAzureApiManagementServiceSample.ts | 36 - ...apiCollectionsListByResourceGroupSample.ts | 32 - .../apiCollectionsListBySubscriptionSample.ts | 31 - ...ionsOffboardAzureApiManagementApiSample.ts | 35 - ...tionsOnboardAzureApiManagementApiSample.ts | 35 - .../applicationCreateOrUpdateSample.ts | 40 - .../samples-dev/applicationDeleteSample.ts | 29 - .../samples-dev/applicationGetSample.ts | 29 - .../samples-dev/applicationsListSample.ts | 31 - .../assessmentsCreateOrUpdateSample.ts | 34 - .../samples-dev/assessmentsDeleteSample.ts | 29 - .../samples-dev/assessmentsGetSample.ts | 49 - .../samples-dev/assessmentsListSample.ts | 30 - ...mentsMetadataCreateInSubscriptionSample.ts | 46 - ...mentsMetadataDeleteInSubscriptionSample.ts | 29 - ...essmentsMetadataGetInSubscriptionSample.ts | 29 - .../assessmentsMetadataGetSample.ts | 27 - ...ssmentsMetadataListBySubscriptionSample.ts | 31 - .../assessmentsMetadataListSample.ts | 29 - .../autoProvisioningSettingsCreateSample.ts | 36 - .../autoProvisioningSettingsGetSample.ts | 29 - .../autoProvisioningSettingsListSample.ts | 31 - .../automationsCreateOrUpdateSample.ts | 186 - .../samples-dev/automationsDeleteSample.ts | 30 - .../samples-dev/automationsGetSample.ts | 30 - .../automationsListByResourceGroupSample.ts | 32 - .../samples-dev/automationsListSample.ts | 31 - .../samples-dev/automationsUpdateSample.ts | 53 - .../samples-dev/automationsValidateSample.ts | 71 - .../azureDevOpsOrgsCreateOrUpdateSample.ts | 43 - .../samples-dev/azureDevOpsOrgsGetSample.ts | 35 - .../azureDevOpsOrgsListAvailableSample.ts | 33 - .../samples-dev/azureDevOpsOrgsListSample.ts | 33 - .../azureDevOpsOrgsUpdateSample.ts | 43 - ...azureDevOpsProjectsCreateOrUpdateSample.ts | 45 - .../azureDevOpsProjectsGetSample.ts | 37 - .../azureDevOpsProjectsListSample.ts | 38 - .../azureDevOpsProjectsUpdateSample.ts | 45 - .../azureDevOpsReposCreateOrUpdateSample.ts | 47 - .../samples-dev/azureDevOpsReposGetSample.ts | 39 - .../samples-dev/azureDevOpsReposListSample.ts | 40 - .../azureDevOpsReposUpdateSample.ts | 47 - .../samples-dev/complianceResultsGetSample.ts | 28 - .../complianceResultsListSample.ts | 30 - .../samples-dev/compliancesGetSample.ts | 28 - .../samples-dev/compliancesListSample.ts | 30 - .../connectorsCreateOrUpdateSample.ts | 116 - .../samples-dev/connectorsDeleteSample.ts | 29 - .../samples-dev/connectorsGetSample.ts | 29 - .../samples-dev/connectorsListSample.ts | 31 - ...customAssessmentAutomationsCreateSample.ts | 44 - ...customAssessmentAutomationsDeleteSample.ts | 33 - .../customAssessmentAutomationsGetSample.ts | 33 - ...entAutomationsListByResourceGroupSample.ts | 34 - ...mentAutomationsListBySubscriptionSample.ts | 31 - ...ustomEntityStoreAssignmentsCreateSample.ts | 38 - ...ustomEntityStoreAssignmentsDeleteSample.ts | 33 - .../customEntityStoreAssignmentsGetSample.ts | 33 - ...oreAssignmentsListByResourceGroupSample.ts | 34 - ...toreAssignmentsListBySubscriptionSample.ts | 31 - .../defenderForStorageCreateSample.ts | 41 - .../defenderForStorageGetSample.ts | 29 - ...evOpsConfigurationsCreateOrUpdateSample.ts | 98 - .../devOpsConfigurationsDeleteSample.ts | 33 - .../devOpsConfigurationsGetSample.ts | 30 - .../devOpsConfigurationsListSample.ts | 36 - .../devOpsConfigurationsUpdateSample.ts | 38 - .../devOpsOperationResultsGetSample.ts | 58 - ...eviceSecurityGroupsCreateOrUpdateSample.ts | 45 - .../deviceSecurityGroupsDeleteSample.ts | 29 - .../deviceSecurityGroupsGetSample.ts | 29 - .../deviceSecurityGroupsListSample.ts | 31 - .../discoveredSecuritySolutionsGetSample.ts | 35 - ...SecuritySolutionsListByHomeRegionSample.ts | 32 - .../discoveredSecuritySolutionsListSample.ts | 31 - .../externalSecuritySolutionsGetSample.ts | 36 - ...SecuritySolutionsListByHomeRegionSample.ts | 32 - .../externalSecuritySolutionsListSample.ts | 31 - .../getSensitivitySettingsSample.ts | 26 - .../samples-dev/gitHubOwnersGetSample.ts | 31 - .../gitHubOwnersListAvailableSample.ts | 30 - .../samples-dev/gitHubOwnersListSample.ts | 33 - .../samples-dev/gitHubReposGetSample.ts | 37 - .../samples-dev/gitHubReposListSample.ts | 38 - .../samples-dev/gitLabGroupsGetSample.ts | 35 - .../gitLabGroupsListAvailableSample.ts | 30 - .../samples-dev/gitLabGroupsListSample.ts | 33 - .../samples-dev/gitLabProjectsGetSample.ts | 37 - .../samples-dev/gitLabProjectsListSample.ts | 38 - .../samples-dev/gitLabSubgroupsListSample.ts | 35 - ...vernanceAssignmentsCreateOrUpdateSample.ts | 54 - .../governanceAssignmentsDeleteSample.ts | 30 - .../governanceAssignmentsGetSample.ts | 30 - .../governanceAssignmentsListSample.ts | 31 - .../governanceRulesCreateOrUpdateSample.ts | 144 - .../governanceRulesDeleteSample.ts | 61 - .../governanceRulesExecuteSample.ts | 61 - .../samples-dev/governanceRulesGetSample.ts | 61 - .../samples-dev/governanceRulesListSample.ts | 67 - .../governanceRulesOperationResultsSample.ts | 64 - .../samples-dev/healthReportsGetSample.ts | 29 - .../samples-dev/healthReportsListSample.ts | 30 - ...nProtectionPoliciesCreateOrUpdateSample.ts | 71 - .../informationProtectionPoliciesGetSample.ts | 52 - ...informationProtectionPoliciesListSample.ts | 31 - .../iotSecuritySolutionAnalyticsGetSample.ts | 30 - .../iotSecuritySolutionAnalyticsListSample.ts | 30 - ...iotSecuritySolutionCreateOrUpdateSample.ts | 57 - .../iotSecuritySolutionDeleteSample.ts | 30 - .../iotSecuritySolutionGetSample.ts | 30 - ...curitySolutionListByResourceGroupSample.ts | 61 - ...ecuritySolutionListBySubscriptionSample.ts | 56 - .../iotSecuritySolutionUpdateSample.ts | 46 - ...nsAnalyticsAggregatedAlertDismissSample.ts | 35 - ...utionsAnalyticsAggregatedAlertGetSample.ts | 35 - ...tionsAnalyticsAggregatedAlertListSample.ts | 36 - ...lutionsAnalyticsRecommendationGetSample.ts | 35 - ...utionsAnalyticsRecommendationListSample.ts | 36 - ...tworkAccessPoliciesCreateOrUpdateSample.ts | 84 - .../jitNetworkAccessPoliciesDeleteSample.ts | 35 - .../jitNetworkAccessPoliciesGetSample.ts | 35 - .../jitNetworkAccessPoliciesInitiateSample.ts | 48 - ...NetworkAccessPoliciesListByRegionSample.ts | 32 - ...iciesListByResourceGroupAndRegionSample.ts | 36 - ...AccessPoliciesListByResourceGroupSample.ts | 32 - .../jitNetworkAccessPoliciesListSample.ts | 31 - .../samples-dev/locationsGetSample.ts | 29 - .../samples-dev/locationsListSample.ts | 31 - .../samples-dev/mdeOnboardingsGetSample.ts | 28 - .../samples-dev/mdeOnboardingsListSample.ts | 28 - .../samples-dev/pricingsDeleteSample.ts | 29 - .../samples-dev/pricingsGetSample.ts | 109 - .../samples-dev/pricingsListSample.ts | 58 - .../samples-dev/pricingsUpdateSample.ts | 86 - ...egulatoryComplianceAssessmentsGetSample.ts | 35 - ...gulatoryComplianceAssessmentsListSample.ts | 36 - .../regulatoryComplianceControlsGetSample.ts | 33 - .../regulatoryComplianceControlsListSample.ts | 34 - .../regulatoryComplianceStandardsGetSample.ts | 29 - ...regulatoryComplianceStandardsListSample.ts | 31 - ...trolDefinitionsListBySubscriptionSample.ts | 31 - ...secureScoreControlDefinitionsListSample.ts | 29 - ...ureScoreControlsListBySecureScoreSample.ts | 57 - .../secureScoreControlsListSample.ts | 31 - .../samples-dev/secureScoresGetSample.ts | 29 - .../samples-dev/secureScoresListSample.ts | 31 - ...onnectorApplicationCreateOrUpdateSample.ts | 47 - ...ecurityConnectorApplicationDeleteSample.ts | 35 - .../securityConnectorApplicationGetSample.ts | 35 - ...securityConnectorApplicationsListSample.ts | 36 - .../securityConnectorsCreateOrUpdateSample.ts | 51 - .../securityConnectorsDeleteSample.ts | 30 - .../securityConnectorsGetSample.ts | 30 - ...rityConnectorsListByResourceGroupSample.ts | 32 - .../securityConnectorsListSample.ts | 31 - .../securityConnectorsUpdateSample.ts | 51 - .../securityContactsCreateSample.ts | 40 - .../securityContactsDeleteSample.ts | 29 - .../samples-dev/securityContactsGetSample.ts | 29 - .../samples-dev/securityContactsListSample.ts | 31 - .../securityOperatorsCreateOrUpdateSample.ts | 30 - .../securityOperatorsDeleteSample.ts | 30 - .../samples-dev/securityOperatorsGetSample.ts | 30 - .../securityOperatorsListSample.ts | 29 - .../samples-dev/securitySolutionsGetSample.ts | 35 - .../securitySolutionsListSample.ts | 31 - ...ionsReferenceDataListByHomeRegionSample.ts | 30 - ...ecuritySolutionsReferenceDataListSample.ts | 28 - .../sensitivitySettingsListSample.ts | 26 - ...erabilityAssessmentCreateOrUpdateSample.ts | 37 - ...rverVulnerabilityAssessmentDeleteSample.ts | 37 - .../serverVulnerabilityAssessmentGetSample.ts | 37 - ...yAssessmentListByExtendedResourceSample.ts | 37 - ...AssessmentsSettingsCreateOrUpdateSample.ts | 37 - ...rabilityAssessmentsSettingsDeleteSample.ts | 29 - ...lnerabilityAssessmentsSettingsGetSample.ts | 29 - ...ssmentsSettingsListBySubscriptionSample.ts | 31 - .../samples-dev/settingsGetSample.ts | 29 - .../samples-dev/settingsListSample.ts | 31 - .../samples-dev/settingsUpdateSample.ts | 34 - .../softwareInventoriesGetSample.ts | 39 - ...InventoriesListByExtendedResourceSample.ts | 40 - ...wareInventoriesListBySubscriptionSample.ts | 31 - ...abilityAssessmentBaselineRulesAddSample.ts | 75 - ...ssmentBaselineRulesCreateOrUpdateSample.ts | 72 - ...lityAssessmentBaselineRulesDeleteSample.ts | 34 - ...abilityAssessmentBaselineRulesGetSample.ts | 34 - ...bilityAssessmentBaselineRulesListSample.ts | 29 - ...erabilityAssessmentScanResultsGetSample.ts | 60 - ...rabilityAssessmentScanResultsListSample.ts | 56 - ...qlVulnerabilityAssessmentScansGetSample.ts | 48 - ...lVulnerabilityAssessmentScansListSample.ts | 29 - .../samples-dev/subAssessmentsGetSample.ts | 30 - .../subAssessmentsListAllSample.ts | 30 - .../samples-dev/subAssessmentsListSample.ts | 31 - .../tasksGetResourceGroupLevelTaskSample.ts | 35 - .../tasksGetSubscriptionLevelTaskSample.ts | 30 - .../tasksListByHomeRegionSample.ts | 32 - .../tasksListByResourceGroupSample.ts | 33 - .../samples-dev/tasksListSample.ts | 31 - ...UpdateResourceGroupLevelTaskStateSample.ts | 37 - ...sUpdateSubscriptionLevelTaskStateSample.ts | 35 - .../samples-dev/topologyGetSample.ts | 31 - .../topologyListByHomeRegionSample.ts | 32 - .../samples-dev/topologyListSample.ts | 31 - .../updateSensitivitySettingsSample.ts | 36 - .../workspaceSettingsCreateSample.ts | 38 - .../workspaceSettingsDeleteSample.ts | 29 - .../samples-dev/workspaceSettingsGetSample.ts | 29 - .../workspaceSettingsListSample.ts | 31 - .../workspaceSettingsUpdateSample.ts | 37 - .../samples/v6-beta/javascript/README.md | 534 - ...adaptiveApplicationControlsDeleteSample.js | 36 - .../adaptiveApplicationControlsGetSample.js | 36 - .../adaptiveApplicationControlsListSample.js | 40 - .../adaptiveApplicationControlsPutSample.js | 122 - .../adaptiveNetworkHardeningsEnforceSample.js | 68 - .../adaptiveNetworkHardeningsGetSample.js | 45 - ...kHardeningsListByExtendedResourceSample.js | 46 - .../advancedThreatProtectionCreateSample.js | 43 - .../advancedThreatProtectionGetSample.js | 34 - .../alertsGetResourceGroupLevelSample.js | 41 - .../alertsGetSubscriptionLevelSample.js | 36 - .../alertsListByResourceGroupSample.js | 38 - ...rtsListResourceGroupLevelByRegionSample.js | 42 - .../v6-beta/javascript/alertsListSample.js | 37 - ...ertsListSubscriptionLevelByRegionSample.js | 38 - .../javascript/alertsSimulateSample.js | 51 - .../alertsSuppressionRulesDeleteSample.js | 35 - .../alertsSuppressionRulesGetSample.js | 35 - .../alertsSuppressionRulesListSample.js | 56 - .../alertsSuppressionRulesUpdateSample.js | 48 - ...ResourceGroupLevelStateToActivateSample.js | 41 - ...eResourceGroupLevelStateToDismissSample.js | 41 - ...sourceGroupLevelStateToInProgressSample.js | 41 - ...eResourceGroupLevelStateToResolveSample.js | 41 - ...eSubscriptionLevelStateToActivateSample.js | 36 - ...teSubscriptionLevelStateToDismissSample.js | 36 - ...ubscriptionLevelStateToInProgressSample.js | 39 - ...teSubscriptionLevelStateToResolveSample.js | 36 - .../javascript/allowedConnectionsGetSample.js | 41 - ...llowedConnectionsListByHomeRegionSample.js | 38 - .../allowedConnectionsListSample.js | 37 - ...onsGetByAzureApiManagementServiceSample.js | 41 - ...nsListByAzureApiManagementServiceSample.js | 42 - ...apiCollectionsListByResourceGroupSample.js | 38 - .../apiCollectionsListBySubscriptionSample.js | 37 - ...ionsOffboardAzureApiManagementApiSample.js | 41 - ...tionsOnboardAzureApiManagementApiSample.js | 41 - .../applicationCreateOrUpdateSample.js | 45 - .../javascript/applicationDeleteSample.js | 35 - .../javascript/applicationGetSample.js | 35 - .../javascript/applicationsListSample.js | 37 - .../assessmentsCreateOrUpdateSample.js | 39 - .../javascript/assessmentsDeleteSample.js | 35 - .../javascript/assessmentsGetSample.js | 54 - .../javascript/assessmentsListSample.js | 36 - ...mentsMetadataCreateInSubscriptionSample.js | 51 - ...mentsMetadataDeleteInSubscriptionSample.js | 35 - ...essmentsMetadataGetInSubscriptionSample.js | 35 - .../assessmentsMetadataGetSample.js | 33 - ...ssmentsMetadataListBySubscriptionSample.js | 37 - .../assessmentsMetadataListSample.js | 35 - .../autoProvisioningSettingsCreateSample.js | 41 - .../autoProvisioningSettingsGetSample.js | 35 - .../autoProvisioningSettingsListSample.js | 37 - .../automationsCreateOrUpdateSample.js | 191 - .../javascript/automationsDeleteSample.js | 36 - .../javascript/automationsGetSample.js | 36 - .../automationsListByResourceGroupSample.js | 38 - .../javascript/automationsListSample.js | 37 - .../javascript/automationsUpdateSample.js | 58 - .../javascript/automationsValidateSample.js | 76 - .../azureDevOpsOrgsCreateOrUpdateSample.js | 48 - .../javascript/azureDevOpsOrgsGetSample.js | 41 - .../azureDevOpsOrgsListAvailableSample.js | 39 - .../javascript/azureDevOpsOrgsListSample.js | 39 - .../javascript/azureDevOpsOrgsUpdateSample.js | 48 - ...azureDevOpsProjectsCreateOrUpdateSample.js | 50 - .../azureDevOpsProjectsGetSample.js | 43 - .../azureDevOpsProjectsListSample.js | 44 - .../azureDevOpsProjectsUpdateSample.js | 50 - .../azureDevOpsReposCreateOrUpdateSample.js | 52 - .../javascript/azureDevOpsReposGetSample.js | 45 - .../javascript/azureDevOpsReposListSample.js | 46 - .../azureDevOpsReposUpdateSample.js | 52 - .../javascript/complianceResultsGetSample.js | 34 - .../javascript/complianceResultsListSample.js | 36 - .../javascript/compliancesGetSample.js | 34 - .../javascript/compliancesListSample.js | 36 - .../connectorsCreateOrUpdateSample.js | 121 - .../javascript/connectorsDeleteSample.js | 35 - .../v6-beta/javascript/connectorsGetSample.js | 35 - .../javascript/connectorsListSample.js | 37 - ...customAssessmentAutomationsCreateSample.js | 49 - ...customAssessmentAutomationsDeleteSample.js | 39 - .../customAssessmentAutomationsGetSample.js | 39 - ...entAutomationsListByResourceGroupSample.js | 40 - ...mentAutomationsListBySubscriptionSample.js | 37 - ...ustomEntityStoreAssignmentsCreateSample.js | 43 - ...ustomEntityStoreAssignmentsDeleteSample.js | 39 - .../customEntityStoreAssignmentsGetSample.js | 39 - ...oreAssignmentsListByResourceGroupSample.js | 40 - ...toreAssignmentsListBySubscriptionSample.js | 37 - .../defenderForStorageCreateSample.js | 46 - .../javascript/defenderForStorageGetSample.js | 35 - ...evOpsConfigurationsCreateOrUpdateSample.js | 103 - .../devOpsConfigurationsDeleteSample.js | 39 - .../devOpsConfigurationsGetSample.js | 36 - .../devOpsConfigurationsListSample.js | 42 - .../devOpsConfigurationsUpdateSample.js | 43 - .../devOpsOperationResultsGetSample.js | 64 - ...eviceSecurityGroupsCreateOrUpdateSample.js | 50 - .../deviceSecurityGroupsDeleteSample.js | 35 - .../deviceSecurityGroupsGetSample.js | 35 - .../deviceSecurityGroupsListSample.js | 37 - .../discoveredSecuritySolutionsGetSample.js | 41 - ...SecuritySolutionsListByHomeRegionSample.js | 38 - .../discoveredSecuritySolutionsListSample.js | 37 - .../externalSecuritySolutionsGetSample.js | 42 - ...SecuritySolutionsListByHomeRegionSample.js | 38 - .../externalSecuritySolutionsListSample.js | 37 - .../getSensitivitySettingsSample.js | 32 - .../javascript/gitHubOwnersGetSample.js | 37 - .../gitHubOwnersListAvailableSample.js | 36 - .../javascript/gitHubOwnersListSample.js | 39 - .../javascript/gitHubReposGetSample.js | 43 - .../javascript/gitHubReposListSample.js | 44 - .../javascript/gitLabGroupsGetSample.js | 41 - .../gitLabGroupsListAvailableSample.js | 36 - .../javascript/gitLabGroupsListSample.js | 39 - .../javascript/gitLabProjectsGetSample.js | 43 - .../javascript/gitLabProjectsListSample.js | 44 - .../javascript/gitLabSubgroupsListSample.js | 41 - ...vernanceAssignmentsCreateOrUpdateSample.js | 59 - .../governanceAssignmentsDeleteSample.js | 36 - .../governanceAssignmentsGetSample.js | 36 - .../governanceAssignmentsListSample.js | 37 - .../governanceRulesCreateOrUpdateSample.js | 149 - .../javascript/governanceRulesDeleteSample.js | 67 - .../governanceRulesExecuteSample.js | 67 - .../javascript/governanceRulesGetSample.js | 67 - .../javascript/governanceRulesListSample.js | 73 - .../governanceRulesOperationResultsSample.js | 70 - .../javascript/healthReportsGetSample.js | 35 - .../javascript/healthReportsListSample.js | 36 - ...nProtectionPoliciesCreateOrUpdateSample.js | 76 - .../informationProtectionPoliciesGetSample.js | 58 - ...informationProtectionPoliciesListSample.js | 37 - .../iotSecuritySolutionAnalyticsGetSample.js | 36 - .../iotSecuritySolutionAnalyticsListSample.js | 36 - ...iotSecuritySolutionCreateOrUpdateSample.js | 62 - .../iotSecuritySolutionDeleteSample.js | 36 - .../iotSecuritySolutionGetSample.js | 36 - ...curitySolutionListByResourceGroupSample.js | 66 - ...ecuritySolutionListBySubscriptionSample.js | 61 - .../iotSecuritySolutionUpdateSample.js | 51 - ...nsAnalyticsAggregatedAlertDismissSample.js | 41 - ...utionsAnalyticsAggregatedAlertGetSample.js | 41 - ...tionsAnalyticsAggregatedAlertListSample.js | 42 - ...lutionsAnalyticsRecommendationGetSample.js | 41 - ...utionsAnalyticsRecommendationListSample.js | 42 - ...tworkAccessPoliciesCreateOrUpdateSample.js | 89 - .../jitNetworkAccessPoliciesDeleteSample.js | 41 - .../jitNetworkAccessPoliciesGetSample.js | 41 - .../jitNetworkAccessPoliciesInitiateSample.js | 53 - ...NetworkAccessPoliciesListByRegionSample.js | 38 - ...iciesListByResourceGroupAndRegionSample.js | 42 - ...AccessPoliciesListByResourceGroupSample.js | 38 - .../jitNetworkAccessPoliciesListSample.js | 37 - .../v6-beta/javascript/locationsGetSample.js | 35 - .../v6-beta/javascript/locationsListSample.js | 37 - .../javascript/mdeOnboardingsGetSample.js | 34 - .../javascript/mdeOnboardingsListSample.js | 34 - .../samples/v6-beta/javascript/package.json | 32 - .../javascript/pricingsDeleteSample.js | 35 - .../v6-beta/javascript/pricingsGetSample.js | 115 - .../v6-beta/javascript/pricingsListSample.js | 64 - .../javascript/pricingsUpdateSample.js | 91 - ...egulatoryComplianceAssessmentsGetSample.js | 41 - ...gulatoryComplianceAssessmentsListSample.js | 42 - .../regulatoryComplianceControlsGetSample.js | 39 - .../regulatoryComplianceControlsListSample.js | 40 - .../regulatoryComplianceStandardsGetSample.js | 35 - ...regulatoryComplianceStandardsListSample.js | 37 - .../samples/v6-beta/javascript/sample.env | 4 - ...trolDefinitionsListBySubscriptionSample.js | 37 - ...secureScoreControlDefinitionsListSample.js | 35 - ...ureScoreControlsListBySecureScoreSample.js | 62 - .../secureScoreControlsListSample.js | 37 - .../javascript/secureScoresGetSample.js | 35 - .../javascript/secureScoresListSample.js | 37 - ...onnectorApplicationCreateOrUpdateSample.js | 52 - ...ecurityConnectorApplicationDeleteSample.js | 41 - .../securityConnectorApplicationGetSample.js | 41 - ...securityConnectorApplicationsListSample.js | 42 - .../securityConnectorsCreateOrUpdateSample.js | 56 - .../securityConnectorsDeleteSample.js | 36 - .../javascript/securityConnectorsGetSample.js | 36 - ...rityConnectorsListByResourceGroupSample.js | 38 - .../securityConnectorsListSample.js | 37 - .../securityConnectorsUpdateSample.js | 56 - .../securityContactsCreateSample.js | 45 - .../securityContactsDeleteSample.js | 35 - .../javascript/securityContactsGetSample.js | 35 - .../javascript/securityContactsListSample.js | 37 - .../securityOperatorsCreateOrUpdateSample.js | 36 - .../securityOperatorsDeleteSample.js | 36 - .../javascript/securityOperatorsGetSample.js | 36 - .../javascript/securityOperatorsListSample.js | 35 - .../javascript/securitySolutionsGetSample.js | 41 - .../javascript/securitySolutionsListSample.js | 37 - ...ionsReferenceDataListByHomeRegionSample.js | 36 - ...ecuritySolutionsReferenceDataListSample.js | 34 - .../sensitivitySettingsListSample.js | 32 - ...erabilityAssessmentCreateOrUpdateSample.js | 43 - ...rverVulnerabilityAssessmentDeleteSample.js | 43 - .../serverVulnerabilityAssessmentGetSample.js | 43 - ...yAssessmentListByExtendedResourceSample.js | 43 - ...AssessmentsSettingsCreateOrUpdateSample.js | 42 - ...rabilityAssessmentsSettingsDeleteSample.js | 35 - ...lnerabilityAssessmentsSettingsGetSample.js | 35 - ...ssmentsSettingsListBySubscriptionSample.js | 37 - .../v6-beta/javascript/settingsGetSample.js | 35 - .../v6-beta/javascript/settingsListSample.js | 37 - .../javascript/settingsUpdateSample.js | 39 - .../softwareInventoriesGetSample.js | 45 - ...InventoriesListByExtendedResourceSample.js | 46 - ...wareInventoriesListBySubscriptionSample.js | 37 - ...abilityAssessmentBaselineRulesAddSample.js | 77 - ...ssmentBaselineRulesCreateOrUpdateSample.js | 74 - ...lityAssessmentBaselineRulesDeleteSample.js | 40 - ...abilityAssessmentBaselineRulesGetSample.js | 40 - ...bilityAssessmentBaselineRulesListSample.js | 35 - ...erabilityAssessmentScanResultsGetSample.js | 66 - ...rabilityAssessmentScanResultsListSample.js | 62 - ...qlVulnerabilityAssessmentScansGetSample.js | 54 - ...lVulnerabilityAssessmentScansListSample.js | 35 - .../javascript/subAssessmentsGetSample.js | 36 - .../javascript/subAssessmentsListAllSample.js | 36 - .../javascript/subAssessmentsListSample.js | 37 - .../tasksGetResourceGroupLevelTaskSample.js | 41 - .../tasksGetSubscriptionLevelTaskSample.js | 36 - .../javascript/tasksListByHomeRegionSample.js | 38 - .../tasksListByResourceGroupSample.js | 39 - .../v6-beta/javascript/tasksListSample.js | 37 - ...UpdateResourceGroupLevelTaskStateSample.js | 43 - ...sUpdateSubscriptionLevelTaskStateSample.js | 41 - .../v6-beta/javascript/topologyGetSample.js | 37 - .../topologyListByHomeRegionSample.js | 38 - .../v6-beta/javascript/topologyListSample.js | 37 - .../updateSensitivitySettingsSample.js | 41 - .../workspaceSettingsCreateSample.js | 43 - .../workspaceSettingsDeleteSample.js | 35 - .../javascript/workspaceSettingsGetSample.js | 35 - .../javascript/workspaceSettingsListSample.js | 37 - .../workspaceSettingsUpdateSample.js | 42 - .../samples/v6-beta/typescript/README.md | 547 - .../samples/v6-beta/typescript/package.json | 41 - .../samples/v6-beta/typescript/sample.env | 4 - ...adaptiveApplicationControlsDeleteSample.ts | 40 - .../adaptiveApplicationControlsGetSample.ts | 40 - .../adaptiveApplicationControlsListSample.ts | 44 - .../adaptiveApplicationControlsPutSample.ts | 133 - .../adaptiveNetworkHardeningsEnforceSample.ts | 72 - .../src/adaptiveNetworkHardeningsGetSample.ts | 46 - ...kHardeningsListByExtendedResourceSample.ts | 47 - .../advancedThreatProtectionCreateSample.ts | 46 - .../src/advancedThreatProtectionGetSample.ts | 34 - .../src/alertsGetResourceGroupLevelSample.ts | 42 - .../src/alertsGetSubscriptionLevelSample.ts | 40 - .../src/alertsListByResourceGroupSample.ts | 39 - ...rtsListResourceGroupLevelByRegionSample.ts | 43 - .../typescript/src/alertsListSample.ts | 38 - ...ertsListSubscriptionLevelByRegionSample.ts | 41 - .../typescript/src/alertsSimulateSample.ts | 55 - .../src/alertsSuppressionRulesDeleteSample.ts | 38 - .../src/alertsSuppressionRulesGetSample.ts | 38 - .../src/alertsSuppressionRulesListSample.ts | 58 - .../src/alertsSuppressionRulesUpdateSample.ts | 52 - ...ResourceGroupLevelStateToActivateSample.ts | 42 - ...eResourceGroupLevelStateToDismissSample.ts | 42 - ...sourceGroupLevelStateToInProgressSample.ts | 42 - ...eResourceGroupLevelStateToResolveSample.ts | 42 - ...eSubscriptionLevelStateToActivateSample.ts | 40 - ...teSubscriptionLevelStateToDismissSample.ts | 40 - ...ubscriptionLevelStateToInProgressSample.ts | 40 - ...teSubscriptionLevelStateToResolveSample.ts | 40 - .../src/allowedConnectionsGetSample.ts | 43 - ...llowedConnectionsListByHomeRegionSample.ts | 41 - .../src/allowedConnectionsListSample.ts | 38 - ...onsGetByAzureApiManagementServiceSample.ts | 42 - ...nsListByAzureApiManagementServiceSample.ts | 43 - ...apiCollectionsListByResourceGroupSample.ts | 41 - .../apiCollectionsListBySubscriptionSample.ts | 38 - ...ionsOffboardAzureApiManagementApiSample.ts | 42 - ...tionsOnboardAzureApiManagementApiSample.ts | 43 - .../src/applicationCreateOrUpdateSample.ts | 51 - .../typescript/src/applicationDeleteSample.ts | 36 - .../typescript/src/applicationGetSample.ts | 36 - .../typescript/src/applicationsListSample.ts | 38 - .../src/assessmentsCreateOrUpdateSample.ts | 43 - .../typescript/src/assessmentsDeleteSample.ts | 35 - .../typescript/src/assessmentsGetSample.ts | 61 - .../typescript/src/assessmentsListSample.ts | 36 - ...mentsMetadataCreateInSubscriptionSample.ts | 56 - ...mentsMetadataDeleteInSubscriptionSample.ts | 38 - ...essmentsMetadataGetInSubscriptionSample.ts | 38 - .../src/assessmentsMetadataGetSample.ts | 33 - ...ssmentsMetadataListBySubscriptionSample.ts | 38 - .../src/assessmentsMetadataListSample.ts | 35 - .../autoProvisioningSettingsCreateSample.ts | 45 - .../src/autoProvisioningSettingsGetSample.ts | 36 - .../src/autoProvisioningSettingsListSample.ts | 38 - .../src/automationsCreateOrUpdateSample.ts | 197 - .../typescript/src/automationsDeleteSample.ts | 40 - .../typescript/src/automationsGetSample.ts | 41 - .../automationsListByResourceGroupSample.ts | 42 - .../typescript/src/automationsListSample.ts | 38 - .../typescript/src/automationsUpdateSample.ts | 64 - .../src/automationsValidateSample.ts | 82 - .../azureDevOpsOrgsCreateOrUpdateSample.ts | 49 - .../src/azureDevOpsOrgsGetSample.ts | 42 - .../src/azureDevOpsOrgsListAvailableSample.ts | 40 - .../src/azureDevOpsOrgsListSample.ts | 43 - .../src/azureDevOpsOrgsUpdateSample.ts | 49 - ...azureDevOpsProjectsCreateOrUpdateSample.ts | 51 - .../src/azureDevOpsProjectsGetSample.ts | 44 - .../src/azureDevOpsProjectsListSample.ts | 45 - .../src/azureDevOpsProjectsUpdateSample.ts | 51 - .../azureDevOpsReposCreateOrUpdateSample.ts | 53 - .../src/azureDevOpsReposGetSample.ts | 46 - .../src/azureDevOpsReposListSample.ts | 47 - .../src/azureDevOpsReposUpdateSample.ts | 53 - .../src/complianceResultsGetSample.ts | 37 - .../src/complianceResultsListSample.ts | 36 - .../typescript/src/compliancesGetSample.ts | 34 - .../typescript/src/compliancesListSample.ts | 36 - .../src/connectorsCreateOrUpdateSample.ts | 133 - .../typescript/src/connectorsDeleteSample.ts | 36 - .../typescript/src/connectorsGetSample.ts | 36 - .../typescript/src/connectorsListSample.ts | 38 - ...customAssessmentAutomationsCreateSample.ts | 54 - ...customAssessmentAutomationsDeleteSample.ts | 41 - .../customAssessmentAutomationsGetSample.ts | 41 - ...entAutomationsListByResourceGroupSample.ts | 42 - ...mentAutomationsListBySubscriptionSample.ts | 38 - ...ustomEntityStoreAssignmentsCreateSample.ts | 51 - ...ustomEntityStoreAssignmentsDeleteSample.ts | 42 - .../customEntityStoreAssignmentsGetSample.ts | 42 - ...oreAssignmentsListByResourceGroupSample.ts | 42 - ...toreAssignmentsListBySubscriptionSample.ts | 38 - .../src/defenderForStorageCreateSample.ts | 46 - .../src/defenderForStorageGetSample.ts | 35 - ...evOpsConfigurationsCreateOrUpdateSample.ts | 106 - .../src/devOpsConfigurationsDeleteSample.ts | 40 - .../src/devOpsConfigurationsGetSample.ts | 40 - .../src/devOpsConfigurationsListSample.ts | 43 - .../src/devOpsConfigurationsUpdateSample.ts | 44 - .../src/devOpsOperationResultsGetSample.ts | 66 - ...eviceSecurityGroupsCreateOrUpdateSample.ts | 50 - .../src/deviceSecurityGroupsDeleteSample.ts | 38 - .../src/deviceSecurityGroupsGetSample.ts | 38 - .../src/deviceSecurityGroupsListSample.ts | 37 - .../discoveredSecuritySolutionsGetSample.ts | 42 - ...SecuritySolutionsListByHomeRegionSample.ts | 41 - .../discoveredSecuritySolutionsListSample.ts | 38 - .../src/externalSecuritySolutionsGetSample.ts | 44 - ...SecuritySolutionsListByHomeRegionSample.ts | 41 - .../externalSecuritySolutionsListSample.ts | 38 - .../src/getSensitivitySettingsSample.ts | 32 - .../typescript/src/gitHubOwnersGetSample.ts | 42 - .../src/gitHubOwnersListAvailableSample.ts | 40 - .../typescript/src/gitHubOwnersListSample.ts | 43 - .../typescript/src/gitHubReposGetSample.ts | 44 - .../typescript/src/gitHubReposListSample.ts | 45 - .../typescript/src/gitLabGroupsGetSample.ts | 42 - .../src/gitLabGroupsListAvailableSample.ts | 40 - .../typescript/src/gitLabGroupsListSample.ts | 43 - .../typescript/src/gitLabProjectsGetSample.ts | 44 - .../src/gitLabProjectsListSample.ts | 45 - .../src/gitLabSubgroupsListSample.ts | 42 - ...vernanceAssignmentsCreateOrUpdateSample.ts | 59 - .../src/governanceAssignmentsDeleteSample.ts | 40 - .../src/governanceAssignmentsGetSample.ts | 40 - .../src/governanceAssignmentsListSample.ts | 40 - .../governanceRulesCreateOrUpdateSample.ts | 161 - .../src/governanceRulesDeleteSample.ts | 67 - .../src/governanceRulesExecuteSample.ts | 76 - .../src/governanceRulesGetSample.ts | 67 - .../src/governanceRulesListSample.ts | 73 - .../governanceRulesOperationResultsSample.ts | 82 - .../typescript/src/healthReportsGetSample.ts | 35 - .../typescript/src/healthReportsListSample.ts | 36 - ...nProtectionPoliciesCreateOrUpdateSample.ts | 81 - .../informationProtectionPoliciesGetSample.ts | 58 - ...informationProtectionPoliciesListSample.ts | 37 - .../iotSecuritySolutionAnalyticsGetSample.ts | 40 - .../iotSecuritySolutionAnalyticsListSample.ts | 40 - ...iotSecuritySolutionCreateOrUpdateSample.ts | 64 - .../src/iotSecuritySolutionDeleteSample.ts | 40 - .../src/iotSecuritySolutionGetSample.ts | 40 - ...curitySolutionListByResourceGroupSample.ts | 73 - ...ecuritySolutionListBySubscriptionSample.ts | 68 - .../src/iotSecuritySolutionUpdateSample.ts | 56 - ...nsAnalyticsAggregatedAlertDismissSample.ts | 44 - ...utionsAnalyticsAggregatedAlertGetSample.ts | 42 - ...tionsAnalyticsAggregatedAlertListSample.ts | 43 - ...lutionsAnalyticsRecommendationGetSample.ts | 43 - ...utionsAnalyticsRecommendationListSample.ts | 44 - ...tworkAccessPoliciesCreateOrUpdateSample.ts | 90 - .../jitNetworkAccessPoliciesDeleteSample.ts | 42 - .../src/jitNetworkAccessPoliciesGetSample.ts | 42 - .../jitNetworkAccessPoliciesInitiateSample.ts | 55 - ...NetworkAccessPoliciesListByRegionSample.ts | 41 - ...iciesListByResourceGroupAndRegionSample.ts | 43 - ...AccessPoliciesListByResourceGroupSample.ts | 41 - .../src/jitNetworkAccessPoliciesListSample.ts | 38 - .../typescript/src/locationsGetSample.ts | 36 - .../typescript/src/locationsListSample.ts | 38 - .../typescript/src/mdeOnboardingsGetSample.ts | 35 - .../src/mdeOnboardingsListSample.ts | 35 - .../typescript/src/pricingsDeleteSample.ts | 35 - .../typescript/src/pricingsGetSample.ts | 115 - .../typescript/src/pricingsListSample.ts | 64 - .../typescript/src/pricingsUpdateSample.ts | 91 - ...egulatoryComplianceAssessmentsGetSample.ts | 43 - ...gulatoryComplianceAssessmentsListSample.ts | 43 - .../regulatoryComplianceControlsGetSample.ts | 40 - .../regulatoryComplianceControlsListSample.ts | 41 - .../regulatoryComplianceStandardsGetSample.ts | 38 - ...regulatoryComplianceStandardsListSample.ts | 38 - ...trolDefinitionsListBySubscriptionSample.ts | 38 - ...secureScoreControlDefinitionsListSample.ts | 35 - ...ureScoreControlsListBySecureScoreSample.ts | 72 - .../src/secureScoreControlsListSample.ts | 38 - .../typescript/src/secureScoresGetSample.ts | 36 - .../typescript/src/secureScoresListSample.ts | 38 - ...onnectorApplicationCreateOrUpdateSample.ts | 56 - ...ecurityConnectorApplicationDeleteSample.ts | 43 - .../securityConnectorApplicationGetSample.ts | 43 - ...securityConnectorApplicationsListSample.ts | 44 - .../securityConnectorsCreateOrUpdateSample.ts | 58 - .../src/securityConnectorsDeleteSample.ts | 40 - .../src/securityConnectorsGetSample.ts | 41 - ...rityConnectorsListByResourceGroupSample.ts | 42 - .../src/securityConnectorsListSample.ts | 38 - .../src/securityConnectorsUpdateSample.ts | 58 - .../src/securityContactsCreateSample.ts | 49 - .../src/securityContactsDeleteSample.ts | 36 - .../src/securityContactsGetSample.ts | 36 - .../src/securityContactsListSample.ts | 38 - .../securityOperatorsCreateOrUpdateSample.ts | 40 - .../src/securityOperatorsDeleteSample.ts | 40 - .../src/securityOperatorsGetSample.ts | 40 - .../src/securityOperatorsListSample.ts | 36 - .../src/securitySolutionsGetSample.ts | 42 - .../src/securitySolutionsListSample.ts | 38 - ...ionsReferenceDataListByHomeRegionSample.ts | 39 - ...ecuritySolutionsReferenceDataListSample.ts | 35 - .../src/sensitivitySettingsListSample.ts | 32 - ...erabilityAssessmentCreateOrUpdateSample.ts | 45 - ...rverVulnerabilityAssessmentDeleteSample.ts | 45 - .../serverVulnerabilityAssessmentGetSample.ts | 44 - ...yAssessmentListByExtendedResourceSample.ts | 45 - ...AssessmentsSettingsCreateOrUpdateSample.ts | 44 - ...rabilityAssessmentsSettingsDeleteSample.ts | 37 - ...lnerabilityAssessmentsSettingsGetSample.ts | 37 - ...ssmentsSettingsListBySubscriptionSample.ts | 38 - .../typescript/src/settingsGetSample.ts | 36 - .../typescript/src/settingsListSample.ts | 38 - .../typescript/src/settingsUpdateSample.ts | 40 - .../src/softwareInventoriesGetSample.ts | 47 - ...InventoriesListByExtendedResourceSample.ts | 48 - ...wareInventoriesListBySubscriptionSample.ts | 38 - ...abilityAssessmentBaselineRulesAddSample.ts | 81 - ...ssmentBaselineRulesCreateOrUpdateSample.ts | 82 - ...lityAssessmentBaselineRulesDeleteSample.ts | 40 - ...abilityAssessmentBaselineRulesGetSample.ts | 40 - ...bilityAssessmentBaselineRulesListSample.ts | 38 - ...erabilityAssessmentScanResultsGetSample.ts | 66 - ...rabilityAssessmentScanResultsListSample.ts | 62 - ...qlVulnerabilityAssessmentScansGetSample.ts | 62 - ...lVulnerabilityAssessmentScansListSample.ts | 38 - .../typescript/src/subAssessmentsGetSample.ts | 40 - .../src/subAssessmentsListAllSample.ts | 36 - .../src/subAssessmentsListSample.ts | 37 - .../tasksGetResourceGroupLevelTaskSample.ts | 42 - .../tasksGetSubscriptionLevelTaskSample.ts | 40 - .../src/tasksListByHomeRegionSample.ts | 39 - .../src/tasksListByResourceGroupSample.ts | 43 - .../v6-beta/typescript/src/tasksListSample.ts | 38 - ...UpdateResourceGroupLevelTaskStateSample.ts | 44 - ...sUpdateSubscriptionLevelTaskStateSample.ts | 42 - .../typescript/src/topologyGetSample.ts | 43 - .../src/topologyListByHomeRegionSample.ts | 39 - .../typescript/src/topologyListSample.ts | 38 - .../src/updateSensitivitySettingsSample.ts | 44 - .../src/workspaceSettingsCreateSample.ts | 47 - .../src/workspaceSettingsDeleteSample.ts | 36 - .../src/workspaceSettingsGetSample.ts | 36 - .../src/workspaceSettingsListSample.ts | 38 - .../src/workspaceSettingsUpdateSample.ts | 46 - .../samples/v6-beta/typescript/tsconfig.json | 17 - .../src/api/advancedThreatProtection/index.ts | 8 + .../advancedThreatProtection/operations.ts | 117 + .../api/advancedThreatProtection/options.ts | 10 + .../arm-security/src/api/alerts/index.ts | 37 + .../arm-security/src/api/alerts/operations.ts | 830 + .../arm-security/src/api/alerts/options.ts | 52 + .../src/api/alertsSuppressionRules/index.ts | 10 + .../api/alertsSuppressionRules/operations.ts | 220 + .../src/api/alertsSuppressionRules/options.ts | 19 + .../src/api/allowedConnections/index.ts | 9 + .../src/api/allowedConnections/operations.ts | 179 + .../src/api/allowedConnections/options.ts | 13 + .../src/api/apiCollections/index.ts | 19 + .../src/api/apiCollections/operations.ts | 361 + .../src/api/apiCollections/options.ts | 25 + .../arm-security/src/api/application/index.ts | 9 + .../src/api/application/operations.ts | 157 + .../src/api/application/options.ts | 13 + .../src/api/applications/index.ts | 5 + .../src/api/applications/operations.ts | 68 + .../src/api/applications/options.ts | 7 + .../arm-security/src/api/assessments/index.ts | 10 + .../src/api/assessments/operations.ts | 230 + .../src/api/assessments/options.ts | 20 + .../src/api/assessmentsMetadata/index.ts | 19 + .../src/api/assessmentsMetadata/operations.ts | 315 + .../src/api/assessmentsMetadata/options.ts | 22 + .../arm-security/src/api/assignments/index.ts | 11 + .../src/api/assignments/operations.ts | 277 + .../src/api/assignments/options.ts | 19 + .../src/api/autoProvisioningSettings/index.ts | 9 + .../autoProvisioningSettings/operations.ts | 172 + .../api/autoProvisioningSettings/options.ts | 13 + .../arm-security/src/api/automations/index.ts | 21 + .../src/api/automations/operations.ts | 393 + .../src/api/automations/options.ts | 25 + .../src/api/azureDevOpsOrgs/index.ts | 11 + .../src/api/azureDevOpsOrgs/operations.ts | 332 + .../src/api/azureDevOpsOrgs/options.ts | 25 + .../src/api/azureDevOpsProjects/index.ts | 10 + .../src/api/azureDevOpsProjects/operations.ts | 294 + .../src/api/azureDevOpsProjects/options.ts | 22 + .../src/api/azureDevOpsRepos/index.ts | 10 + .../src/api/azureDevOpsRepos/operations.ts | 312 + .../src/api/azureDevOpsRepos/options.ts | 22 + .../src/api/complianceResults/index.ts | 8 + .../src/api/complianceResults/operations.ts | 122 + .../src/api/complianceResults/options.ts | 10 + .../arm-security/src/api/compliances/index.ts | 5 + .../src/api/compliances/operations.ts | 117 + .../src/api/compliances/options.ts | 10 + .../src/api/customRecommendations/index.ts | 10 + .../api/customRecommendations/operations.ts | 228 + .../src/api/customRecommendations/options.ts | 16 + .../src/api/defenderForStorage/index.ts | 19 + .../src/api/defenderForStorage/operations.ts | 339 + .../src/api/defenderForStorage/options.ts | 22 + .../src/api/devOpsConfigurations/index.ts | 11 + .../api/devOpsConfigurations/operations.ts | 307 + .../src/api/devOpsConfigurations/options.ts | 28 + .../src/api/devOpsOperationResults/index.ts | 5 + .../api/devOpsOperationResults/operations.ts | 75 + .../src/api/devOpsOperationResults/options.ts | 7 + .../src/api/deviceSecurityGroups/index.ts | 10 + .../api/deviceSecurityGroups/operations.ts | 226 + .../src/api/deviceSecurityGroups/options.ts | 16 + .../api/discoveredSecuritySolutions/index.ts | 9 + .../discoveredSecuritySolutions/operations.ts | 184 + .../discoveredSecuritySolutions/options.ts | 13 + .../api/externalSecuritySolutions/index.ts | 9 + .../externalSecuritySolutions/operations.ts | 184 + .../api/externalSecuritySolutions/options.ts | 13 + .../src/api/gitHubIssues/index.ts | 5 + .../src/api/gitHubIssues/operations.ts | 78 + .../src/api/gitHubIssues/options.ts | 13 + .../src/api/gitHubOwners/index.ts | 9 + .../src/api/gitHubOwners/operations.ts | 191 + .../src/api/gitHubOwners/options.ts | 13 + .../arm-security/src/api/gitHubRepos/index.ts | 5 + .../src/api/gitHubRepos/operations.ts | 140 + .../src/api/gitHubRepos/options.ts | 10 + .../src/api/gitLabGroups/index.ts | 9 + .../src/api/gitLabGroups/operations.ts | 191 + .../src/api/gitLabGroups/options.ts | 13 + .../src/api/gitLabProjects/index.ts | 8 + .../src/api/gitLabProjects/operations.ts | 140 + .../src/api/gitLabProjects/options.ts | 10 + .../src/api/gitLabSubgroups/index.ts | 5 + .../src/api/gitLabSubgroups/operations.ts | 75 + .../src/api/gitLabSubgroups/options.ts | 7 + .../src/api/governanceAssignments/index.ts | 10 + .../api/governanceAssignments/operations.ts | 241 + .../src/api/governanceAssignments/options.ts | 16 + .../src/api/governanceRules/index.ts | 12 + .../src/api/governanceRules/operations.ts | 337 + .../src/api/governanceRules/options.ts | 31 + .../src/api/healthReports/index.ts | 5 + .../src/api/healthReports/operations.ts | 117 + .../src/api/healthReports/options.ts | 10 + sdk/security/arm-security/src/api/index.ts | 8 + .../informationProtectionPolicies/index.ts | 9 + .../operations.ts | 185 + .../informationProtectionPolicies/options.ts | 13 + .../src/api/iotSecuritySolution/index.ts | 19 + .../src/api/iotSecuritySolution/operations.ts | 345 + .../src/api/iotSecuritySolution/options.ts | 28 + .../api/iotSecuritySolutionAnalytics/index.ts | 8 + .../operations.ts | 120 + .../iotSecuritySolutionAnalytics/options.ts | 10 + .../index.ts | 9 + .../operations.ts | 197 + .../options.ts | 16 + .../index.ts | 8 + .../operations.ts | 139 + .../options.ts | 13 + .../src/api/jitNetworkAccessPolicies/index.ts | 23 + .../jitNetworkAccessPolicies/operations.ts | 483 + .../api/jitNetworkAccessPolicies/options.ts | 28 + .../arm-security/src/api/locations/index.ts | 5 + .../src/api/locations/operations.ts | 113 + .../arm-security/src/api/locations/options.ts | 10 + .../src/api/mdeOnboardings/index.ts | 8 + .../src/api/mdeOnboardings/operations.ts | 103 + .../src/api/mdeOnboardings/options.ts | 10 + .../src/api/operationResults/index.ts | 5 + .../src/api/operationResults/operations.ts | 57 + .../src/api/operationResults/options.ts | 7 + .../src/api/operationStatuses/index.ts | 5 + .../src/api/operationStatuses/operations.ts | 66 + .../src/api/operationStatuses/options.ts | 7 + .../arm-security/src/api/operations/index.ts | 5 + .../src/api/operations/operations.ts | 69 + .../src/api/operations/options.ts | 7 + .../arm-security/src/api/pricings/index.ts | 10 + .../src/api/pricings/operations.ts | 208 + .../arm-security/src/api/pricings/options.ts | 19 + .../api/privateEndpointConnections/index.ts | 10 + .../privateEndpointConnections/operations.ts | 275 + .../api/privateEndpointConnections/options.ts | 22 + .../src/api/privateLinkResources/index.ts | 8 + .../api/privateLinkResources/operations.ts | 135 + .../src/api/privateLinkResources/options.ts | 10 + .../src/api/privateLinks/index.ts | 13 + .../src/api/privateLinks/operations.ts | 392 + .../src/api/privateLinks/options.ts | 31 + .../regulatoryComplianceAssessments/index.ts | 8 + .../operations.ts | 145 + .../options.ts | 13 + .../api/regulatoryComplianceControls/index.ts | 8 + .../operations.ts | 132 + .../regulatoryComplianceControls/options.ts | 13 + .../regulatoryComplianceStandards/index.ts | 8 + .../operations.ts | 121 + .../regulatoryComplianceStandards/options.ts | 13 + .../secureScoreControlDefinitions/index.ts | 8 + .../operations.ts | 120 + .../secureScoreControlDefinitions/options.ts | 10 + .../src/api/secureScoreControls/index.ts | 8 + .../src/api/secureScoreControls/operations.ts | 126 + .../src/api/secureScoreControls/options.ts | 17 + .../src/api/secureScores/index.ts | 5 + .../src/api/secureScores/operations.ts | 113 + .../src/api/secureScores/options.ts | 10 + .../src/api/securityCenterContext.ts | 46 + .../api/securityConnectorApplication/index.ts | 9 + .../operations.ts | 194 + .../securityConnectorApplication/options.ts | 13 + .../securityConnectorApplications/index.ts | 5 + .../operations.ts | 74 + .../securityConnectorApplications/options.ts | 7 + .../src/api/securityConnectors/index.ts | 12 + .../src/api/securityConnectors/operations.ts | 339 + .../src/api/securityConnectors/options.ts | 22 + .../src/api/securityContacts/index.ts | 10 + .../src/api/securityContacts/operations.ts | 211 + .../src/api/securityContacts/options.ts | 16 + .../src/api/securityOperators/index.ts | 10 + .../src/api/securityOperators/operations.ts | 219 + .../src/api/securityOperators/options.ts | 16 + .../src/api/securitySolutions/index.ts | 8 + .../src/api/securitySolutions/operations.ts | 130 + .../src/api/securitySolutions/options.ts | 10 + .../securitySolutionsReferenceData/index.ts | 8 + .../operations.ts | 109 + .../securitySolutionsReferenceData/options.ts | 10 + .../src/api/securityStandards/index.ts | 10 + .../src/api/securityStandards/operations.ts | 220 + .../src/api/securityStandards/options.ts | 16 + .../src/api/sensitivitySettings/index.ts | 9 + .../src/api/sensitivitySettings/operations.ts | 155 + .../src/api/sensitivitySettings/options.ts | 13 + .../serverVulnerabilityAssessment/index.ts | 10 + .../operations.ts | 282 + .../serverVulnerabilityAssessment/options.ts | 19 + .../index.ts | 10 + .../operations.ts | 230 + .../options.ts | 16 + .../arm-security/src/api/settings/index.ts | 9 + .../src/api/settings/operations.ts | 166 + .../arm-security/src/api/settings/options.ts | 13 + .../index.ts | 11 + .../operations.ts | 272 + .../options.ts | 42 + .../index.ts | 8 + .../operations.ts | 128 + .../options.ts | 14 + .../sqlVulnerabilityAssessmentScans/index.ts | 10 + .../operations.ts | 238 + .../options.ts | 27 + .../index.ts | 9 + .../operations.ts | 156 + .../options.ts | 17 + .../src/api/standardAssignments/index.ts | 10 + .../src/api/standardAssignments/operations.ts | 226 + .../src/api/standardAssignments/options.ts | 16 + .../arm-security/src/api/standards/index.ts | 11 + .../src/api/standards/operations.ts | 275 + .../arm-security/src/api/standards/options.ts | 19 + .../src/api/subAssessments/index.ts | 9 + .../src/api/subAssessments/operations.ts | 181 + .../src/api/subAssessments/options.ts | 13 + .../arm-security/src/api/tasks/index.ts | 21 + .../arm-security/src/api/tasks/operations.ts | 407 + .../arm-security/src/api/tasks/options.ts | 34 + .../arm-security/src/api/topology/index.ts | 9 + .../src/api/topology/operations.ts | 180 + .../arm-security/src/api/topology/options.ts | 13 + .../src/api/workspaceSettings/index.ts | 11 + .../src/api/workspaceSettings/operations.ts | 259 + .../src/api/workspaceSettings/options.ts | 19 + .../classic/advancedThreatProtection/index.ts | 45 + .../arm-security/src/classic/alerts/index.ts | 276 + .../classic/alertsSuppressionRules/index.ts | 62 + .../src/classic/allowedConnections/index.ts | 59 + .../src/classic/apiCollections/index.ts | 150 + .../src/classic/application/index.ts | 45 + .../src/classic/applications/index.ts | 26 + .../src/classic/assessments/index.ts | 69 + .../src/classic/assessmentsMetadata/index.ts | 86 + .../src/classic/assignments/index.ts | 83 + .../classic/autoProvisioningSettings/index.ts | 52 + .../src/classic/automations/index.ts | 116 + .../src/classic/azureDevOpsOrgs/index.ts | 216 + .../src/classic/azureDevOpsProjects/index.ts | 224 + .../src/classic/azureDevOpsRepos/index.ts | 255 + .../src/classic/complianceResults/index.ts | 46 + .../src/classic/compliances/index.ts | 40 + .../classic/customRecommendations/index.ts | 73 + .../src/classic/defenderForStorage/index.ts | 111 + .../src/classic/devOpsConfigurations/index.ts | 221 + .../classic/devOpsOperationResults/index.ts | 37 + .../src/classic/deviceSecurityGroups/index.ts | 72 + .../discoveredSecuritySolutions/index.ts | 56 + .../externalSecuritySolutions/index.ts | 56 + .../src/classic/gitHubIssues/index.ts | 88 + .../src/classic/gitHubOwners/index.ts | 65 + .../src/classic/gitHubRepos/index.ts | 54 + .../src/classic/gitLabGroups/index.ts | 65 + .../src/classic/gitLabProjects/index.ts | 56 + .../src/classic/gitLabSubgroups/index.ts | 37 + .../classic/governanceAssignments/index.ts | 83 + .../src/classic/governanceRules/index.ts | 154 + .../src/classic/healthReports/index.ts | 43 + .../arm-security/src/classic/index.ts | 79 + .../informationProtectionPolicies/index.ts | 70 + .../src/classic/iotSecuritySolution/index.ts | 105 + .../iotSecuritySolutionAnalytics/index.ts | 52 + .../index.ts | 70 + .../index.ts | 52 + .../classic/jitNetworkAccessPolicies/index.ts | 146 + .../src/classic/locations/index.ts | 33 + .../src/classic/mdeOnboardings/index.ts | 33 + .../src/classic/operationResults/index.ts | 31 + .../src/classic/operationStatuses/index.ts | 32 + .../src/classic/operations/index.ts | 26 + .../src/classic/pricings/index.ts | 60 + .../privateEndpointConnections/index.ts | 196 + .../src/classic/privateLinkResources/index.ts | 53 + .../src/classic/privateLinks/index.ts | 174 + .../regulatoryComplianceAssessments/index.ts | 59 + .../regulatoryComplianceControls/index.ts | 48 + .../regulatoryComplianceStandards/index.ts | 42 + .../secureScoreControlDefinitions/index.ts | 39 + .../src/classic/secureScoreControls/index.ts | 42 + .../src/classic/secureScores/index.ts | 36 + .../securityConnectorApplication/index.ts | 77 + .../securityConnectorApplications/index.ts | 36 + .../src/classic/securityConnectors/index.ts | 102 + .../src/classic/securityContacts/index.ts | 62 + .../src/classic/securityOperators/index.ts | 70 + .../src/classic/securitySolutions/index.ts | 46 + .../securitySolutionsReferenceData/index.ts | 41 + .../src/classic/securityStandards/index.ts | 66 + .../src/classic/sensitivitySettings/index.ts | 49 + .../serverVulnerabilityAssessment/index.ts | 166 + .../index.ts | 74 + .../src/classic/settings/index.ts | 46 + .../index.ts | 86 + .../index.ts | 52 + .../sqlVulnerabilityAssessmentScans/index.ts | 110 + .../index.ts | 57 + .../src/classic/standardAssignments/index.ts | 72 + .../src/classic/standards/index.ts | 80 + .../src/classic/subAssessments/index.ts | 57 + .../arm-security/src/classic/tasks/index.ts | 127 + .../src/classic/topology/index.ts | 50 + .../src/classic/workspaceSettings/index.ts | 72 + sdk/security/arm-security/src/index.ts | 1260 +- sdk/security/arm-security/src/logger.ts | 5 + sdk/security/arm-security/src/lroImpl.ts | 38 - .../src/models/alertsAPI/index.ts | 31 + .../src/models/alertsAPI/models.ts | 649 + .../models/alertsSuppressionRulesAPI/index.ts | 10 + .../alertsSuppressionRulesAPI/models.ts | 226 + .../src/models/apiCollectionsAPI/index.ts | 4 + .../src/models/apiCollectionsAPI/models.ts | 126 + .../src/models/applicationsAPI/index.ts | 9 + .../src/models/applicationsAPI/models.ts | 152 + .../src/models/assessmentAPI/index.ts | 49 + .../src/models/assessmentAPI/models.ts | 1669 ++ .../src/models/atpSettingsAPI/index.ts | 7 + .../src/models/atpSettingsAPI/models.ts | 75 + .../src/models/automationsAPI/index.ts | 43 + .../src/models/automationsAPI/models.ts | 1017 ++ .../arm-security/src/models/common/index.ts | 26 + .../arm-security/src/models/common/models.ts | 334 + .../src/models/complianceResultsAPI/index.ts | 5 + .../src/models/complianceResultsAPI/models.ts | 93 + .../src/models/defenderForStorageAPI/index.ts | 19 + .../models/defenderForStorageAPI/models.ts | 395 + .../src/models/governanceAPI/index.ts | 27 + .../src/models/governanceAPI/models.ts | 668 + .../src/models/healthReportsAPI/index.ts | 14 + .../src/models/healthReportsAPI/models.ts | 303 + sdk/security/arm-security/src/models/index.ts | 11134 +------------ .../src/models/ioTSecurityAPI/index.ts | 59 + .../src/models/ioTSecurityAPI/models.ts | 1701 ++ .../src/models/legacySettingsAPI/index.ts | 21 + .../src/models/legacySettingsAPI/models.ts | 616 + .../src/models/locationsAPI/index.ts | 4 + .../src/models/locationsAPI/models.ts | 49 + .../arm-security/src/models/mappers.ts | 13844 ---------------- .../src/models/mdeOnboardingAPI/index.ts | 8 + .../src/models/mdeOnboardingAPI/models.ts | 89 + .../arm-security/src/models/models.ts | 649 + .../arm-security/src/models/parameters.ts | 1546 -- .../src/models/pricingsAPI/index.ts | 21 + .../src/models/pricingsAPI/models.ts | 323 + .../src/models/privateLinksAPI/index.ts | 12 + .../src/models/privateLinksAPI/models.ts | 242 + .../models/regulatoryComplianceAPI/index.ts | 11 + .../models/regulatoryComplianceAPI/models.ts | 298 + .../src/models/secureScoreAPI/index.ts | 17 + .../src/models/secureScoreAPI/models.ts | 392 + .../src/models/securityConnectorsAPI/index.ts | 122 + .../models/securityConnectorsAPI/models.ts | 3329 ++++ .../securityConnectorsDevOpsAPI/index.ts | 54 + .../securityConnectorsDevOpsAPI/models.ts | 1459 ++ .../models/securityManagementClient/index.ts | 4 + .../models/securityManagementClient/models.ts | 18 + .../src/models/securityOperatorsAPI/index.ts | 4 + .../src/models/securityOperatorsAPI/models.ts | 51 + .../src/models/securitySolutionsAPI/index.ts | 62 + .../src/models/securitySolutionsAPI/models.ts | 1487 ++ .../src/models/securityStandardsAPI/index.ts | 36 + .../src/models/securityStandardsAPI/models.ts | 928 ++ .../models/sensitivitySettingsAPI/index.ts | 15 + .../models/sensitivitySettingsAPI/models.ts | 229 + .../index.ts | 17 + .../models.ts | 228 + .../src/models/settingsAPI/index.ts | 13 + .../src/models/settingsAPI/models.ts | 248 + .../sqlVulnerabilityAssessmentsAPI/index.ts | 40 + .../sqlVulnerabilityAssessmentsAPI/models.ts | 707 + .../src/models/standardsAPI/index.ts | 13 + .../src/models/standardsAPI/models.ts | 459 + .../src/models/subAssessmentsAPI/index.ts | 19 + .../src/models/subAssessmentsAPI/models.ts | 401 + .../arm-security/src/models/tasksAPI/index.ts | 10 + .../src/models/tasksAPI/models.ts | 138 + .../src/operations/aPICollections.ts | 709 - .../operations/adaptiveApplicationControls.ts | 192 - .../operations/adaptiveNetworkHardenings.ts | 453 - .../operations/advancedThreatProtection.ts | 110 - .../arm-security/src/operations/alerts.ts | 1159 -- .../src/operations/alertsSuppressionRules.ts | 265 - .../src/operations/allowedConnections.ts | 344 - .../src/operations/applicationOperations.ts | 141 - .../src/operations/applications.ts | 153 - .../src/operations/assessments.ts | 291 - .../src/operations/assessmentsMetadata.ts | 416 - .../operations/autoProvisioningSettings.ts | 231 - .../src/operations/automations.ts | 526 - .../src/operations/azureDevOpsOrgs.ts | 573 - .../src/operations/azureDevOpsProjects.ts | 570 - .../src/operations/azureDevOpsRepos.ts | 616 - .../src/operations/complianceResults.ts | 205 - .../src/operations/compliances.ts | 207 - .../arm-security/src/operations/connectors.ts | 268 - .../operations/customAssessmentAutomations.ts | 441 - .../customEntityStoreAssignments.ts | 444 - .../src/operations/defenderForStorage.ts | 118 - .../src/operations/devOpsConfigurations.ts | 619 - .../src/operations/devOpsOperationResults.ts | 74 - .../src/operations/deviceSecurityGroups.ts | 285 - .../operations/discoveredSecuritySolutions.ts | 349 - .../operations/externalSecuritySolutions.ts | 349 - .../src/operations/gitHubOwners.ts | 284 - .../src/operations/gitHubRepos.ts | 274 - .../src/operations/gitLabGroups.ts | 284 - .../src/operations/gitLabProjects.ts | 276 - .../src/operations/gitLabSubgroups.ts | 74 - .../src/operations/governanceAssignments.ts | 325 - .../src/operations/governanceRules.ts | 520 - .../src/operations/healthReports.ts | 203 - .../arm-security/src/operations/index.ts | 78 - .../informationProtectionPolicies.ts | 263 - .../src/operations/iotSecuritySolution.ts | 484 - .../iotSecuritySolutionAnalytics.ts | 115 - ...curitySolutionsAnalyticsAggregatedAlert.ts | 284 - ...ecuritySolutionsAnalyticsRecommendation.ts | 250 - .../operations/jitNetworkAccessPolicies.ts | 819 - .../arm-security/src/operations/locations.ts | 195 - .../src/operations/mdeOnboardings.ts | 87 - .../arm-security/src/operations/operations.ts | 149 - .../arm-security/src/operations/pricings.ts | 207 - .../regulatoryComplianceAssessments.ts | 260 - .../regulatoryComplianceControls.ts | 226 - .../regulatoryComplianceStandards.ts | 192 - .../secureScoreControlDefinitions.ts | 274 - .../src/operations/secureScoreControls.ts | 301 - .../src/operations/secureScores.ts | 192 - .../securityConnectorApplication.ts | 170 - .../securityConnectorApplications.ts | 206 - .../src/operations/securityConnectors.ts | 479 - .../src/operations/securityContacts.ts | 270 - .../src/operations/securityOperators.ts | 186 - .../src/operations/securitySolutions.ts | 198 - ...ecuritySolutionsReferenceDataOperations.ts | 99 - .../src/operations/sensitivitySettings.ts | 59 - ...serverVulnerabilityAssessmentOperations.ts | 327 - .../serverVulnerabilityAssessmentsSettings.ts | 278 - .../arm-security/src/operations/settings.ts | 232 - .../src/operations/softwareInventories.ts | 425 - ...sqlVulnerabilityAssessmentBaselineRules.ts | 216 - .../sqlVulnerabilityAssessmentScanResults.ts | 114 - .../sqlVulnerabilityAssessmentScans.ts | 105 - .../src/operations/subAssessments.ts | 367 - .../arm-security/src/operations/tasks.ts | 648 - .../arm-security/src/operations/topology.ts | 342 - .../src/operations/workspaceSettings.ts | 310 - .../operationsInterfaces/aPICollections.ts | 127 - .../adaptiveApplicationControls.ts | 67 - .../adaptiveNetworkHardenings.ts | 97 - .../advancedThreatProtection.ts | 39 - .../src/operationsInterfaces/alerts.ts | 234 - .../alertsSuppressionRules.ts | 59 - .../allowedConnections.ts | 55 - .../applicationOperations.ts | 49 - .../src/operationsInterfaces/applications.ts | 22 - .../src/operationsInterfaces/assessments.ts | 72 - .../assessmentsMetadata.ts | 79 - .../autoProvisioningSettings.ts | 49 - .../src/operationsInterfaces/automations.ts | 116 - .../operationsInterfaces/azureDevOpsOrgs.ts | 133 - .../azureDevOpsProjects.ts | 131 - .../operationsInterfaces/azureDevOpsRepos.ts | 143 - .../operationsInterfaces/complianceResults.ts | 42 - .../src/operationsInterfaces/compliances.ts | 44 - .../src/operationsInterfaces/connectors.ts | 61 - .../customAssessmentAutomations.ts | 81 - .../customEntityStoreAssignments.ts | 84 - .../defenderForStorage.ts | 44 - .../devOpsConfigurations.ts | 132 - .../devOpsOperationResults.ts | 29 - .../deviceSecurityGroups.ts | 70 - .../discoveredSecuritySolutions.ts | 53 - .../externalSecuritySolutions.ts | 53 - .../src/operationsInterfaces/gitHubOwners.ts | 57 - .../src/operationsInterfaces/gitHubRepos.ts | 48 - .../src/operationsInterfaces/gitLabGroups.ts | 57 - .../operationsInterfaces/gitLabProjects.ts | 49 - .../operationsInterfaces/gitLabSubgroups.ts | 29 - .../governanceAssignments.ts | 86 - .../operationsInterfaces/governanceRules.ts | 147 - .../src/operationsInterfaces/healthReports.ts | 42 - .../src/operationsInterfaces/index.ts | 78 - .../informationProtectionPolicies.ts | 62 - .../iotSecuritySolution.ts | 97 - .../iotSecuritySolutionAnalytics.ts | 42 - ...curitySolutionsAnalyticsAggregatedAlert.ts | 62 - ...ecuritySolutionsAnalyticsRecommendation.ts | 48 - .../jitNetworkAccessPolicies.ts | 133 - .../src/operationsInterfaces/locations.ts | 39 - .../operationsInterfaces/mdeOnboardings.ts | 32 - .../src/operationsInterfaces/operations.ts | 22 - .../src/operationsInterfaces/pricings.ts | 86 - .../regulatoryComplianceAssessments.ts | 44 - .../regulatoryComplianceControls.ts | 40 - .../regulatoryComplianceStandards.ts | 36 - .../secureScoreControlDefinitions.ts | 34 - .../secureScoreControls.ts | 36 - .../src/operationsInterfaces/secureScores.ts | 38 - .../securityConnectorApplication.ts | 64 - .../securityConnectorApplications.ts | 30 - .../securityConnectors.ts | 98 - .../operationsInterfaces/securityContacts.ts | 60 - .../operationsInterfaces/securityOperators.ts | 63 - .../operationsInterfaces/securitySolutions.ts | 42 - ...ecuritySolutionsReferenceDataOperations.ts | 35 - .../sensitivitySettings.ts | 23 - ...serverVulnerabilityAssessmentOperations.ts | 103 - .../serverVulnerabilityAssessmentsSettings.ts | 63 - .../src/operationsInterfaces/settings.ts | 50 - .../softwareInventories.ts | 62 - ...sqlVulnerabilityAssessmentBaselineRules.ts | 84 - .../sqlVulnerabilityAssessmentScanResults.ts | 46 - .../sqlVulnerabilityAssessmentScans.ts | 42 - .../operationsInterfaces/subAssessments.ts | 60 - .../src/operationsInterfaces/tasks.ts | 115 - .../src/operationsInterfaces/topology.ts | 53 - .../operationsInterfaces/workspaceSettings.ts | 75 - sdk/security/arm-security/src/pagingHelper.ts | 39 - .../arm-security/src/restorePollerHelpers.ts | 260 + .../arm-security/src/securityCenter.ts | 995 +- .../src/static-helpers/cloudSettingHelpers.ts | 42 + .../src/static-helpers/pagingHelpers.ts | 269 + .../src/static-helpers/pollingHelpers.ts | 149 + .../serialization/check-prop-undefined.ts | 17 + .../serialization/serialize-record.ts | 22 + .../src/static-helpers/simplePollerHelpers.ts | 119 + .../src/static-helpers/urlTemplate.ts | 227 + .../arm-security/test/snippets.spec.ts | 2 +- sdk/security/arm-security/tsconfig.json | 6 +- .../arm-security/tsconfig.samples.json | 10 - sdk/security/arm-security/tsp-location.yaml | 4 + sdk/security/arm-security/vitest.config.ts | 1 - .../arm-security/vitest.esm.config.ts | 8 + sdk/security/arm-security/warp.config.yml | 58 +- sdk/security/ci.mgmt.yml | 4 +- 1323 files changed, 57404 insertions(+), 89698 deletions(-) delete mode 100644 sdk/security/arm-security/_meta.json create mode 100644 sdk/security/arm-security/eslint.config.mjs create mode 100644 sdk/security/arm-security/metadata.json create mode 100644 sdk/security/arm-security/review/arm-security-api-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-alertsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-alertsSuppressionRulesAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-apiCollectionsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-applicationsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-assessmentAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-atpSettingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-automationsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-common-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-complianceResultsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-defenderForStorageAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-governanceAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-healthReportsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-ioTSecurityAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-legacySettingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-locationsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-mdeOnboardingAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-pricingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-privateLinksAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-regulatoryComplianceAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-secureScoreAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securityConnectorsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securityConnectorsDevOpsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securityManagementClient-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securityOperatorsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securitySolutionsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-securityStandardsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-sensitivitySettingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-serverVulnerabilityAssessmentsSettingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-settingsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-sqlVulnerabilityAssessmentsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-standardsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-subAssessmentsAPI-node.api.md create mode 100644 sdk/security/arm-security/review/arm-security-models-tasksAPI-node.api.md delete mode 100644 sdk/security/arm-security/sample.env delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveApplicationControlsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveApplicationControlsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveApplicationControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveApplicationControlsPutSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsEnforceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/advancedThreatProtectionCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/advancedThreatProtectionGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsGetResourceGroupLevelSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsGetSubscriptionLevelSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsListResourceGroupLevelByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsListSubscriptionLevelByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsSimulateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsSuppressionRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsSuppressionRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsSuppressionRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsSuppressionRulesUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToActivateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToDismissSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToInProgressSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToResolveSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToActivateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToDismissSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToInProgressSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToResolveSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/allowedConnectionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/allowedConnectionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/allowedConnectionsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsGetByAzureApiManagementServiceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsListByAzureApiManagementServiceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsOffboardAzureApiManagementApiSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/apiCollectionsOnboardAzureApiManagementApiSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/applicationCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/applicationDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/applicationGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/applicationsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataCreateInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataDeleteInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataGetInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/assessmentsMetadataListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/autoProvisioningSettingsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/autoProvisioningSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/autoProvisioningSettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/automationsValidateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsOrgsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsOrgsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsOrgsListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsOrgsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsOrgsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsProjectsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsProjectsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsProjectsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsProjectsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsReposCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsReposGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsReposListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/azureDevOpsReposUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/complianceResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/complianceResultsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/compliancesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/compliancesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/connectorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/connectorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/connectorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/connectorsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customAssessmentAutomationsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customAssessmentAutomationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customAssessmentAutomationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customAssessmentAutomationsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customAssessmentAutomationsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/defenderForStorageCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/defenderForStorageGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsConfigurationsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsConfigurationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsConfigurationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsConfigurationsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsConfigurationsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/devOpsOperationResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/deviceSecurityGroupsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/deviceSecurityGroupsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/deviceSecurityGroupsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/deviceSecurityGroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/externalSecuritySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/externalSecuritySolutionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/externalSecuritySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/getSensitivitySettingsSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitHubOwnersGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitHubOwnersListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitHubOwnersListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitHubReposGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitHubReposListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabGroupsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabGroupsListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabGroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabProjectsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabProjectsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/gitLabSubgroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceAssignmentsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceAssignmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceAssignmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceAssignmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesExecuteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/governanceRulesOperationResultsSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/healthReportsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/healthReportsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/informationProtectionPoliciesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/informationProtectionPoliciesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/informationProtectionPoliciesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesInitiateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/locationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/locationsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/mdeOnboardingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/mdeOnboardingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/pricingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/pricingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/pricingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/pricingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceControlsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoreControlsListBySecureScoreSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoreControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoresGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/secureScoresListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorApplicationCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorApplicationDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorApplicationGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorApplicationsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityConnectorsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityContactsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityContactsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityContactsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityContactsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityOperatorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityOperatorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityOperatorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securityOperatorsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securitySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securitySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sensitivitySettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/settingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/settingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/settingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/softwareInventoriesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/softwareInventoriesListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/softwareInventoriesListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/subAssessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/subAssessmentsListAllSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/subAssessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksGetResourceGroupLevelTaskSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksGetSubscriptionLevelTaskSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksUpdateResourceGroupLevelTaskStateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/tasksUpdateSubscriptionLevelTaskStateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/topologyGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/topologyListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/topologyListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/updateSensitivitySettingsSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/workspaceSettingsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/workspaceSettingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/workspaceSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/workspaceSettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples-dev/workspaceSettingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/README.md delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsPutSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsEnforceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsListByExtendedResourceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsGetResourceGroupLevelSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsGetSubscriptionLevelSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsListResourceGroupLevelByRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsListSubscriptionLevelByRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsSimulateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToActivateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToDismissSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToInProgressSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToResolveSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToActivateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToDismissSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToInProgressSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToResolveSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsGetByAzureApiManagementServiceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByAzureApiManagementServiceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOffboardAzureApiManagementApiSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOnboardAzureApiManagementApiSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/applicationCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/applicationDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/applicationGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/applicationsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataCreateInSubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataDeleteInSubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetInSubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/automationsValidateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListAvailableSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/compliancesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/compliancesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/connectorsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/connectorsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/connectorsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/connectorsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/devOpsOperationResultsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/getSensitivitySettingsSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListAvailableSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListAvailableSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/gitLabSubgroupsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesExecuteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesOperationResultsSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/healthReportsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/healthReportsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesInitiateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/locationsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/locationsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/package.json delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/pricingsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/pricingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/pricingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/pricingsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sample.env delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListBySecureScoreSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoresGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/secureScoresListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityContactsCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityContactsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityContactsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityContactsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sensitivitySettingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentListByExtendedResourceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/settingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/settingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/settingsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListByExtendedResourceSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListBySubscriptionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesAddSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListAllSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksGetResourceGroupLevelTaskSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksGetSubscriptionLevelTaskSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksListByResourceGroupSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateResourceGroupLevelTaskStateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateSubscriptionLevelTaskStateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/topologyGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/topologyListByHomeRegionSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/topologyListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/updateSensitivitySettingsSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsCreateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsDeleteSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsGetSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsListSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsUpdateSample.js delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/README.md delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/package.json delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/sample.env delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsPutSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsEnforceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetResourceGroupLevelSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetSubscriptionLevelSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListResourceGroupLevelByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSubscriptionLevelByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSimulateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToActivateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToDismissSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToInProgressSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToResolveSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToActivateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToDismissSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToInProgressSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToResolveSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsGetByAzureApiManagementServiceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByAzureApiManagementServiceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOffboardAzureApiManagementApiSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOnboardAzureApiManagementApiSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/applicationCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/applicationDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/applicationGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/applicationsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataCreateInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataDeleteInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetInSubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/automationsValidateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsOperationResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/getSensitivitySettingsSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListAvailableSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabSubgroupsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesExecuteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesOperationResultsSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesInitiateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/locationsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/locationsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListBySecureScoreSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sensitivitySettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/settingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/settingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/settingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListByExtendedResourceSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListBySubscriptionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListAllSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetResourceGroupLevelTaskSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetSubscriptionLevelTaskSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByResourceGroupSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateResourceGroupLevelTaskStateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateSubscriptionLevelTaskStateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/topologyGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListByHomeRegionSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/updateSensitivitySettingsSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsCreateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsDeleteSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsGetSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsListSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsUpdateSample.ts delete mode 100644 sdk/security/arm-security/samples/v6-beta/typescript/tsconfig.json create mode 100644 sdk/security/arm-security/src/api/advancedThreatProtection/index.ts create mode 100644 sdk/security/arm-security/src/api/advancedThreatProtection/operations.ts create mode 100644 sdk/security/arm-security/src/api/advancedThreatProtection/options.ts create mode 100644 sdk/security/arm-security/src/api/alerts/index.ts create mode 100644 sdk/security/arm-security/src/api/alerts/operations.ts create mode 100644 sdk/security/arm-security/src/api/alerts/options.ts create mode 100644 sdk/security/arm-security/src/api/alertsSuppressionRules/index.ts create mode 100644 sdk/security/arm-security/src/api/alertsSuppressionRules/operations.ts create mode 100644 sdk/security/arm-security/src/api/alertsSuppressionRules/options.ts create mode 100644 sdk/security/arm-security/src/api/allowedConnections/index.ts create mode 100644 sdk/security/arm-security/src/api/allowedConnections/operations.ts create mode 100644 sdk/security/arm-security/src/api/allowedConnections/options.ts create mode 100644 sdk/security/arm-security/src/api/apiCollections/index.ts create mode 100644 sdk/security/arm-security/src/api/apiCollections/operations.ts create mode 100644 sdk/security/arm-security/src/api/apiCollections/options.ts create mode 100644 sdk/security/arm-security/src/api/application/index.ts create mode 100644 sdk/security/arm-security/src/api/application/operations.ts create mode 100644 sdk/security/arm-security/src/api/application/options.ts create mode 100644 sdk/security/arm-security/src/api/applications/index.ts create mode 100644 sdk/security/arm-security/src/api/applications/operations.ts create mode 100644 sdk/security/arm-security/src/api/applications/options.ts create mode 100644 sdk/security/arm-security/src/api/assessments/index.ts create mode 100644 sdk/security/arm-security/src/api/assessments/operations.ts create mode 100644 sdk/security/arm-security/src/api/assessments/options.ts create mode 100644 sdk/security/arm-security/src/api/assessmentsMetadata/index.ts create mode 100644 sdk/security/arm-security/src/api/assessmentsMetadata/operations.ts create mode 100644 sdk/security/arm-security/src/api/assessmentsMetadata/options.ts create mode 100644 sdk/security/arm-security/src/api/assignments/index.ts create mode 100644 sdk/security/arm-security/src/api/assignments/operations.ts create mode 100644 sdk/security/arm-security/src/api/assignments/options.ts create mode 100644 sdk/security/arm-security/src/api/autoProvisioningSettings/index.ts create mode 100644 sdk/security/arm-security/src/api/autoProvisioningSettings/operations.ts create mode 100644 sdk/security/arm-security/src/api/autoProvisioningSettings/options.ts create mode 100644 sdk/security/arm-security/src/api/automations/index.ts create mode 100644 sdk/security/arm-security/src/api/automations/operations.ts create mode 100644 sdk/security/arm-security/src/api/automations/options.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsOrgs/index.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsOrgs/operations.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsOrgs/options.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsProjects/index.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsProjects/operations.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsProjects/options.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsRepos/index.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsRepos/operations.ts create mode 100644 sdk/security/arm-security/src/api/azureDevOpsRepos/options.ts create mode 100644 sdk/security/arm-security/src/api/complianceResults/index.ts create mode 100644 sdk/security/arm-security/src/api/complianceResults/operations.ts create mode 100644 sdk/security/arm-security/src/api/complianceResults/options.ts create mode 100644 sdk/security/arm-security/src/api/compliances/index.ts create mode 100644 sdk/security/arm-security/src/api/compliances/operations.ts create mode 100644 sdk/security/arm-security/src/api/compliances/options.ts create mode 100644 sdk/security/arm-security/src/api/customRecommendations/index.ts create mode 100644 sdk/security/arm-security/src/api/customRecommendations/operations.ts create mode 100644 sdk/security/arm-security/src/api/customRecommendations/options.ts create mode 100644 sdk/security/arm-security/src/api/defenderForStorage/index.ts create mode 100644 sdk/security/arm-security/src/api/defenderForStorage/operations.ts create mode 100644 sdk/security/arm-security/src/api/defenderForStorage/options.ts create mode 100644 sdk/security/arm-security/src/api/devOpsConfigurations/index.ts create mode 100644 sdk/security/arm-security/src/api/devOpsConfigurations/operations.ts create mode 100644 sdk/security/arm-security/src/api/devOpsConfigurations/options.ts create mode 100644 sdk/security/arm-security/src/api/devOpsOperationResults/index.ts create mode 100644 sdk/security/arm-security/src/api/devOpsOperationResults/operations.ts create mode 100644 sdk/security/arm-security/src/api/devOpsOperationResults/options.ts create mode 100644 sdk/security/arm-security/src/api/deviceSecurityGroups/index.ts create mode 100644 sdk/security/arm-security/src/api/deviceSecurityGroups/operations.ts create mode 100644 sdk/security/arm-security/src/api/deviceSecurityGroups/options.ts create mode 100644 sdk/security/arm-security/src/api/discoveredSecuritySolutions/index.ts create mode 100644 sdk/security/arm-security/src/api/discoveredSecuritySolutions/operations.ts create mode 100644 sdk/security/arm-security/src/api/discoveredSecuritySolutions/options.ts create mode 100644 sdk/security/arm-security/src/api/externalSecuritySolutions/index.ts create mode 100644 sdk/security/arm-security/src/api/externalSecuritySolutions/operations.ts create mode 100644 sdk/security/arm-security/src/api/externalSecuritySolutions/options.ts create mode 100644 sdk/security/arm-security/src/api/gitHubIssues/index.ts create mode 100644 sdk/security/arm-security/src/api/gitHubIssues/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitHubIssues/options.ts create mode 100644 sdk/security/arm-security/src/api/gitHubOwners/index.ts create mode 100644 sdk/security/arm-security/src/api/gitHubOwners/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitHubOwners/options.ts create mode 100644 sdk/security/arm-security/src/api/gitHubRepos/index.ts create mode 100644 sdk/security/arm-security/src/api/gitHubRepos/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitHubRepos/options.ts create mode 100644 sdk/security/arm-security/src/api/gitLabGroups/index.ts create mode 100644 sdk/security/arm-security/src/api/gitLabGroups/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitLabGroups/options.ts create mode 100644 sdk/security/arm-security/src/api/gitLabProjects/index.ts create mode 100644 sdk/security/arm-security/src/api/gitLabProjects/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitLabProjects/options.ts create mode 100644 sdk/security/arm-security/src/api/gitLabSubgroups/index.ts create mode 100644 sdk/security/arm-security/src/api/gitLabSubgroups/operations.ts create mode 100644 sdk/security/arm-security/src/api/gitLabSubgroups/options.ts create mode 100644 sdk/security/arm-security/src/api/governanceAssignments/index.ts create mode 100644 sdk/security/arm-security/src/api/governanceAssignments/operations.ts create mode 100644 sdk/security/arm-security/src/api/governanceAssignments/options.ts create mode 100644 sdk/security/arm-security/src/api/governanceRules/index.ts create mode 100644 sdk/security/arm-security/src/api/governanceRules/operations.ts create mode 100644 sdk/security/arm-security/src/api/governanceRules/options.ts create mode 100644 sdk/security/arm-security/src/api/healthReports/index.ts create mode 100644 sdk/security/arm-security/src/api/healthReports/operations.ts create mode 100644 sdk/security/arm-security/src/api/healthReports/options.ts create mode 100644 sdk/security/arm-security/src/api/index.ts create mode 100644 sdk/security/arm-security/src/api/informationProtectionPolicies/index.ts create mode 100644 sdk/security/arm-security/src/api/informationProtectionPolicies/operations.ts create mode 100644 sdk/security/arm-security/src/api/informationProtectionPolicies/options.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolution/index.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolution/operations.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolution/options.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/index.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/operations.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/options.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/operations.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/options.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/index.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/operations.ts create mode 100644 sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/options.ts create mode 100644 sdk/security/arm-security/src/api/jitNetworkAccessPolicies/index.ts create mode 100644 sdk/security/arm-security/src/api/jitNetworkAccessPolicies/operations.ts create mode 100644 sdk/security/arm-security/src/api/jitNetworkAccessPolicies/options.ts create mode 100644 sdk/security/arm-security/src/api/locations/index.ts create mode 100644 sdk/security/arm-security/src/api/locations/operations.ts create mode 100644 sdk/security/arm-security/src/api/locations/options.ts create mode 100644 sdk/security/arm-security/src/api/mdeOnboardings/index.ts create mode 100644 sdk/security/arm-security/src/api/mdeOnboardings/operations.ts create mode 100644 sdk/security/arm-security/src/api/mdeOnboardings/options.ts create mode 100644 sdk/security/arm-security/src/api/operationResults/index.ts create mode 100644 sdk/security/arm-security/src/api/operationResults/operations.ts create mode 100644 sdk/security/arm-security/src/api/operationResults/options.ts create mode 100644 sdk/security/arm-security/src/api/operationStatuses/index.ts create mode 100644 sdk/security/arm-security/src/api/operationStatuses/operations.ts create mode 100644 sdk/security/arm-security/src/api/operationStatuses/options.ts create mode 100644 sdk/security/arm-security/src/api/operations/index.ts create mode 100644 sdk/security/arm-security/src/api/operations/operations.ts create mode 100644 sdk/security/arm-security/src/api/operations/options.ts create mode 100644 sdk/security/arm-security/src/api/pricings/index.ts create mode 100644 sdk/security/arm-security/src/api/pricings/operations.ts create mode 100644 sdk/security/arm-security/src/api/pricings/options.ts create mode 100644 sdk/security/arm-security/src/api/privateEndpointConnections/index.ts create mode 100644 sdk/security/arm-security/src/api/privateEndpointConnections/operations.ts create mode 100644 sdk/security/arm-security/src/api/privateEndpointConnections/options.ts create mode 100644 sdk/security/arm-security/src/api/privateLinkResources/index.ts create mode 100644 sdk/security/arm-security/src/api/privateLinkResources/operations.ts create mode 100644 sdk/security/arm-security/src/api/privateLinkResources/options.ts create mode 100644 sdk/security/arm-security/src/api/privateLinks/index.ts create mode 100644 sdk/security/arm-security/src/api/privateLinks/operations.ts create mode 100644 sdk/security/arm-security/src/api/privateLinks/options.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceAssessments/index.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceAssessments/operations.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceAssessments/options.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceControls/index.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceControls/operations.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceControls/options.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceStandards/index.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceStandards/operations.ts create mode 100644 sdk/security/arm-security/src/api/regulatoryComplianceStandards/options.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControlDefinitions/index.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControlDefinitions/operations.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControlDefinitions/options.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControls/index.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControls/operations.ts create mode 100644 sdk/security/arm-security/src/api/secureScoreControls/options.ts create mode 100644 sdk/security/arm-security/src/api/secureScores/index.ts create mode 100644 sdk/security/arm-security/src/api/secureScores/operations.ts create mode 100644 sdk/security/arm-security/src/api/secureScores/options.ts create mode 100644 sdk/security/arm-security/src/api/securityCenterContext.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplication/index.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplication/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplication/options.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplications/index.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplications/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectorApplications/options.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectors/index.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectors/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityConnectors/options.ts create mode 100644 sdk/security/arm-security/src/api/securityContacts/index.ts create mode 100644 sdk/security/arm-security/src/api/securityContacts/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityContacts/options.ts create mode 100644 sdk/security/arm-security/src/api/securityOperators/index.ts create mode 100644 sdk/security/arm-security/src/api/securityOperators/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityOperators/options.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutions/index.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutions/operations.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutions/options.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutionsReferenceData/index.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutionsReferenceData/operations.ts create mode 100644 sdk/security/arm-security/src/api/securitySolutionsReferenceData/options.ts create mode 100644 sdk/security/arm-security/src/api/securityStandards/index.ts create mode 100644 sdk/security/arm-security/src/api/securityStandards/operations.ts create mode 100644 sdk/security/arm-security/src/api/securityStandards/options.ts create mode 100644 sdk/security/arm-security/src/api/sensitivitySettings/index.ts create mode 100644 sdk/security/arm-security/src/api/sensitivitySettings/operations.ts create mode 100644 sdk/security/arm-security/src/api/sensitivitySettings/options.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessment/index.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessment/operations.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessment/options.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/index.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/operations.ts create mode 100644 sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/options.ts create mode 100644 sdk/security/arm-security/src/api/settings/index.ts create mode 100644 sdk/security/arm-security/src/api/settings/operations.ts create mode 100644 sdk/security/arm-security/src/api/settings/options.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/index.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/operations.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/options.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/index.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/operations.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/options.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/index.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/operations.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/options.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/index.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/operations.ts create mode 100644 sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/options.ts create mode 100644 sdk/security/arm-security/src/api/standardAssignments/index.ts create mode 100644 sdk/security/arm-security/src/api/standardAssignments/operations.ts create mode 100644 sdk/security/arm-security/src/api/standardAssignments/options.ts create mode 100644 sdk/security/arm-security/src/api/standards/index.ts create mode 100644 sdk/security/arm-security/src/api/standards/operations.ts create mode 100644 sdk/security/arm-security/src/api/standards/options.ts create mode 100644 sdk/security/arm-security/src/api/subAssessments/index.ts create mode 100644 sdk/security/arm-security/src/api/subAssessments/operations.ts create mode 100644 sdk/security/arm-security/src/api/subAssessments/options.ts create mode 100644 sdk/security/arm-security/src/api/tasks/index.ts create mode 100644 sdk/security/arm-security/src/api/tasks/operations.ts create mode 100644 sdk/security/arm-security/src/api/tasks/options.ts create mode 100644 sdk/security/arm-security/src/api/topology/index.ts create mode 100644 sdk/security/arm-security/src/api/topology/operations.ts create mode 100644 sdk/security/arm-security/src/api/topology/options.ts create mode 100644 sdk/security/arm-security/src/api/workspaceSettings/index.ts create mode 100644 sdk/security/arm-security/src/api/workspaceSettings/operations.ts create mode 100644 sdk/security/arm-security/src/api/workspaceSettings/options.ts create mode 100644 sdk/security/arm-security/src/classic/advancedThreatProtection/index.ts create mode 100644 sdk/security/arm-security/src/classic/alerts/index.ts create mode 100644 sdk/security/arm-security/src/classic/alertsSuppressionRules/index.ts create mode 100644 sdk/security/arm-security/src/classic/allowedConnections/index.ts create mode 100644 sdk/security/arm-security/src/classic/apiCollections/index.ts create mode 100644 sdk/security/arm-security/src/classic/application/index.ts create mode 100644 sdk/security/arm-security/src/classic/applications/index.ts create mode 100644 sdk/security/arm-security/src/classic/assessments/index.ts create mode 100644 sdk/security/arm-security/src/classic/assessmentsMetadata/index.ts create mode 100644 sdk/security/arm-security/src/classic/assignments/index.ts create mode 100644 sdk/security/arm-security/src/classic/autoProvisioningSettings/index.ts create mode 100644 sdk/security/arm-security/src/classic/automations/index.ts create mode 100644 sdk/security/arm-security/src/classic/azureDevOpsOrgs/index.ts create mode 100644 sdk/security/arm-security/src/classic/azureDevOpsProjects/index.ts create mode 100644 sdk/security/arm-security/src/classic/azureDevOpsRepos/index.ts create mode 100644 sdk/security/arm-security/src/classic/complianceResults/index.ts create mode 100644 sdk/security/arm-security/src/classic/compliances/index.ts create mode 100644 sdk/security/arm-security/src/classic/customRecommendations/index.ts create mode 100644 sdk/security/arm-security/src/classic/defenderForStorage/index.ts create mode 100644 sdk/security/arm-security/src/classic/devOpsConfigurations/index.ts create mode 100644 sdk/security/arm-security/src/classic/devOpsOperationResults/index.ts create mode 100644 sdk/security/arm-security/src/classic/deviceSecurityGroups/index.ts create mode 100644 sdk/security/arm-security/src/classic/discoveredSecuritySolutions/index.ts create mode 100644 sdk/security/arm-security/src/classic/externalSecuritySolutions/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitHubIssues/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitHubOwners/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitHubRepos/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitLabGroups/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitLabProjects/index.ts create mode 100644 sdk/security/arm-security/src/classic/gitLabSubgroups/index.ts create mode 100644 sdk/security/arm-security/src/classic/governanceAssignments/index.ts create mode 100644 sdk/security/arm-security/src/classic/governanceRules/index.ts create mode 100644 sdk/security/arm-security/src/classic/healthReports/index.ts create mode 100644 sdk/security/arm-security/src/classic/index.ts create mode 100644 sdk/security/arm-security/src/classic/informationProtectionPolicies/index.ts create mode 100644 sdk/security/arm-security/src/classic/iotSecuritySolution/index.ts create mode 100644 sdk/security/arm-security/src/classic/iotSecuritySolutionAnalytics/index.ts create mode 100644 sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts create mode 100644 sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsRecommendation/index.ts create mode 100644 sdk/security/arm-security/src/classic/jitNetworkAccessPolicies/index.ts create mode 100644 sdk/security/arm-security/src/classic/locations/index.ts create mode 100644 sdk/security/arm-security/src/classic/mdeOnboardings/index.ts create mode 100644 sdk/security/arm-security/src/classic/operationResults/index.ts create mode 100644 sdk/security/arm-security/src/classic/operationStatuses/index.ts create mode 100644 sdk/security/arm-security/src/classic/operations/index.ts create mode 100644 sdk/security/arm-security/src/classic/pricings/index.ts create mode 100644 sdk/security/arm-security/src/classic/privateEndpointConnections/index.ts create mode 100644 sdk/security/arm-security/src/classic/privateLinkResources/index.ts create mode 100644 sdk/security/arm-security/src/classic/privateLinks/index.ts create mode 100644 sdk/security/arm-security/src/classic/regulatoryComplianceAssessments/index.ts create mode 100644 sdk/security/arm-security/src/classic/regulatoryComplianceControls/index.ts create mode 100644 sdk/security/arm-security/src/classic/regulatoryComplianceStandards/index.ts create mode 100644 sdk/security/arm-security/src/classic/secureScoreControlDefinitions/index.ts create mode 100644 sdk/security/arm-security/src/classic/secureScoreControls/index.ts create mode 100644 sdk/security/arm-security/src/classic/secureScores/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityConnectorApplication/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityConnectorApplications/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityConnectors/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityContacts/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityOperators/index.ts create mode 100644 sdk/security/arm-security/src/classic/securitySolutions/index.ts create mode 100644 sdk/security/arm-security/src/classic/securitySolutionsReferenceData/index.ts create mode 100644 sdk/security/arm-security/src/classic/securityStandards/index.ts create mode 100644 sdk/security/arm-security/src/classic/sensitivitySettings/index.ts create mode 100644 sdk/security/arm-security/src/classic/serverVulnerabilityAssessment/index.ts create mode 100644 sdk/security/arm-security/src/classic/serverVulnerabilityAssessmentsSettings/index.ts create mode 100644 sdk/security/arm-security/src/classic/settings/index.ts create mode 100644 sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentBaselineRules/index.ts create mode 100644 sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScanResults/index.ts create mode 100644 sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScans/index.ts create mode 100644 sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentSettings/index.ts create mode 100644 sdk/security/arm-security/src/classic/standardAssignments/index.ts create mode 100644 sdk/security/arm-security/src/classic/standards/index.ts create mode 100644 sdk/security/arm-security/src/classic/subAssessments/index.ts create mode 100644 sdk/security/arm-security/src/classic/tasks/index.ts create mode 100644 sdk/security/arm-security/src/classic/topology/index.ts create mode 100644 sdk/security/arm-security/src/classic/workspaceSettings/index.ts create mode 100644 sdk/security/arm-security/src/logger.ts delete mode 100644 sdk/security/arm-security/src/lroImpl.ts create mode 100644 sdk/security/arm-security/src/models/alertsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/alertsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/apiCollectionsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/apiCollectionsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/applicationsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/applicationsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/assessmentAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/assessmentAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/atpSettingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/atpSettingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/automationsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/automationsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/common/index.ts create mode 100644 sdk/security/arm-security/src/models/common/models.ts create mode 100644 sdk/security/arm-security/src/models/complianceResultsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/complianceResultsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/defenderForStorageAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/defenderForStorageAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/governanceAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/governanceAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/healthReportsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/healthReportsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/ioTSecurityAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/ioTSecurityAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/legacySettingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/legacySettingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/locationsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/locationsAPI/models.ts delete mode 100644 sdk/security/arm-security/src/models/mappers.ts create mode 100644 sdk/security/arm-security/src/models/mdeOnboardingAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/mdeOnboardingAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/models.ts delete mode 100644 sdk/security/arm-security/src/models/parameters.ts create mode 100644 sdk/security/arm-security/src/models/pricingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/pricingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/privateLinksAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/privateLinksAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/regulatoryComplianceAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/regulatoryComplianceAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/secureScoreAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/secureScoreAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/securityConnectorsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/securityConnectorsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/securityManagementClient/index.ts create mode 100644 sdk/security/arm-security/src/models/securityManagementClient/models.ts create mode 100644 sdk/security/arm-security/src/models/securityOperatorsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/securityOperatorsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/securitySolutionsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/securitySolutionsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/securityStandardsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/securityStandardsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/sensitivitySettingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/sensitivitySettingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/serverVulnerabilityAssessmentsSettingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/serverVulnerabilityAssessmentsSettingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/settingsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/settingsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/sqlVulnerabilityAssessmentsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/sqlVulnerabilityAssessmentsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/standardsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/standardsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/subAssessmentsAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/subAssessmentsAPI/models.ts create mode 100644 sdk/security/arm-security/src/models/tasksAPI/index.ts create mode 100644 sdk/security/arm-security/src/models/tasksAPI/models.ts delete mode 100644 sdk/security/arm-security/src/operations/aPICollections.ts delete mode 100644 sdk/security/arm-security/src/operations/adaptiveApplicationControls.ts delete mode 100644 sdk/security/arm-security/src/operations/adaptiveNetworkHardenings.ts delete mode 100644 sdk/security/arm-security/src/operations/advancedThreatProtection.ts delete mode 100644 sdk/security/arm-security/src/operations/alerts.ts delete mode 100644 sdk/security/arm-security/src/operations/alertsSuppressionRules.ts delete mode 100644 sdk/security/arm-security/src/operations/allowedConnections.ts delete mode 100644 sdk/security/arm-security/src/operations/applicationOperations.ts delete mode 100644 sdk/security/arm-security/src/operations/applications.ts delete mode 100644 sdk/security/arm-security/src/operations/assessments.ts delete mode 100644 sdk/security/arm-security/src/operations/assessmentsMetadata.ts delete mode 100644 sdk/security/arm-security/src/operations/autoProvisioningSettings.ts delete mode 100644 sdk/security/arm-security/src/operations/automations.ts delete mode 100644 sdk/security/arm-security/src/operations/azureDevOpsOrgs.ts delete mode 100644 sdk/security/arm-security/src/operations/azureDevOpsProjects.ts delete mode 100644 sdk/security/arm-security/src/operations/azureDevOpsRepos.ts delete mode 100644 sdk/security/arm-security/src/operations/complianceResults.ts delete mode 100644 sdk/security/arm-security/src/operations/compliances.ts delete mode 100644 sdk/security/arm-security/src/operations/connectors.ts delete mode 100644 sdk/security/arm-security/src/operations/customAssessmentAutomations.ts delete mode 100644 sdk/security/arm-security/src/operations/customEntityStoreAssignments.ts delete mode 100644 sdk/security/arm-security/src/operations/defenderForStorage.ts delete mode 100644 sdk/security/arm-security/src/operations/devOpsConfigurations.ts delete mode 100644 sdk/security/arm-security/src/operations/devOpsOperationResults.ts delete mode 100644 sdk/security/arm-security/src/operations/deviceSecurityGroups.ts delete mode 100644 sdk/security/arm-security/src/operations/discoveredSecuritySolutions.ts delete mode 100644 sdk/security/arm-security/src/operations/externalSecuritySolutions.ts delete mode 100644 sdk/security/arm-security/src/operations/gitHubOwners.ts delete mode 100644 sdk/security/arm-security/src/operations/gitHubRepos.ts delete mode 100644 sdk/security/arm-security/src/operations/gitLabGroups.ts delete mode 100644 sdk/security/arm-security/src/operations/gitLabProjects.ts delete mode 100644 sdk/security/arm-security/src/operations/gitLabSubgroups.ts delete mode 100644 sdk/security/arm-security/src/operations/governanceAssignments.ts delete mode 100644 sdk/security/arm-security/src/operations/governanceRules.ts delete mode 100644 sdk/security/arm-security/src/operations/healthReports.ts delete mode 100644 sdk/security/arm-security/src/operations/index.ts delete mode 100644 sdk/security/arm-security/src/operations/informationProtectionPolicies.ts delete mode 100644 sdk/security/arm-security/src/operations/iotSecuritySolution.ts delete mode 100644 sdk/security/arm-security/src/operations/iotSecuritySolutionAnalytics.ts delete mode 100644 sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsAggregatedAlert.ts delete mode 100644 sdk/security/arm-security/src/operations/iotSecuritySolutionsAnalyticsRecommendation.ts delete mode 100644 sdk/security/arm-security/src/operations/jitNetworkAccessPolicies.ts delete mode 100644 sdk/security/arm-security/src/operations/locations.ts delete mode 100644 sdk/security/arm-security/src/operations/mdeOnboardings.ts delete mode 100644 sdk/security/arm-security/src/operations/operations.ts delete mode 100644 sdk/security/arm-security/src/operations/pricings.ts delete mode 100644 sdk/security/arm-security/src/operations/regulatoryComplianceAssessments.ts delete mode 100644 sdk/security/arm-security/src/operations/regulatoryComplianceControls.ts delete mode 100644 sdk/security/arm-security/src/operations/regulatoryComplianceStandards.ts delete mode 100644 sdk/security/arm-security/src/operations/secureScoreControlDefinitions.ts delete mode 100644 sdk/security/arm-security/src/operations/secureScoreControls.ts delete mode 100644 sdk/security/arm-security/src/operations/secureScores.ts delete mode 100644 sdk/security/arm-security/src/operations/securityConnectorApplication.ts delete mode 100644 sdk/security/arm-security/src/operations/securityConnectorApplications.ts delete mode 100644 sdk/security/arm-security/src/operations/securityConnectors.ts delete mode 100644 sdk/security/arm-security/src/operations/securityContacts.ts delete mode 100644 sdk/security/arm-security/src/operations/securityOperators.ts delete mode 100644 sdk/security/arm-security/src/operations/securitySolutions.ts delete mode 100644 sdk/security/arm-security/src/operations/securitySolutionsReferenceDataOperations.ts delete mode 100644 sdk/security/arm-security/src/operations/sensitivitySettings.ts delete mode 100644 sdk/security/arm-security/src/operations/serverVulnerabilityAssessmentOperations.ts delete mode 100644 sdk/security/arm-security/src/operations/serverVulnerabilityAssessmentsSettings.ts delete mode 100644 sdk/security/arm-security/src/operations/settings.ts delete mode 100644 sdk/security/arm-security/src/operations/softwareInventories.ts delete mode 100644 sdk/security/arm-security/src/operations/sqlVulnerabilityAssessmentBaselineRules.ts delete mode 100644 sdk/security/arm-security/src/operations/sqlVulnerabilityAssessmentScanResults.ts delete mode 100644 sdk/security/arm-security/src/operations/sqlVulnerabilityAssessmentScans.ts delete mode 100644 sdk/security/arm-security/src/operations/subAssessments.ts delete mode 100644 sdk/security/arm-security/src/operations/tasks.ts delete mode 100644 sdk/security/arm-security/src/operations/topology.ts delete mode 100644 sdk/security/arm-security/src/operations/workspaceSettings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/aPICollections.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/adaptiveApplicationControls.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/adaptiveNetworkHardenings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/advancedThreatProtection.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/alerts.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/alertsSuppressionRules.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/allowedConnections.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/applicationOperations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/applications.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/assessments.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/assessmentsMetadata.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/autoProvisioningSettings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/automations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/azureDevOpsOrgs.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/azureDevOpsProjects.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/azureDevOpsRepos.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/complianceResults.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/compliances.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/connectors.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/customAssessmentAutomations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/customEntityStoreAssignments.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/defenderForStorage.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/devOpsConfigurations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/devOpsOperationResults.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/deviceSecurityGroups.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/discoveredSecuritySolutions.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/externalSecuritySolutions.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/gitHubOwners.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/gitHubRepos.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/gitLabGroups.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/gitLabProjects.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/gitLabSubgroups.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/governanceAssignments.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/governanceRules.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/healthReports.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/index.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/informationProtectionPolicies.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/iotSecuritySolution.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/iotSecuritySolutionAnalytics.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/iotSecuritySolutionsAnalyticsAggregatedAlert.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/iotSecuritySolutionsAnalyticsRecommendation.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/jitNetworkAccessPolicies.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/locations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/mdeOnboardings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/operations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/pricings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/regulatoryComplianceAssessments.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/regulatoryComplianceControls.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/regulatoryComplianceStandards.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/secureScoreControlDefinitions.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/secureScoreControls.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/secureScores.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securityConnectorApplication.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securityConnectorApplications.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securityConnectors.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securityContacts.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securityOperators.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securitySolutions.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/securitySolutionsReferenceDataOperations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/sensitivitySettings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/serverVulnerabilityAssessmentOperations.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/serverVulnerabilityAssessmentsSettings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/settings.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/softwareInventories.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/sqlVulnerabilityAssessmentBaselineRules.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/sqlVulnerabilityAssessmentScanResults.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/sqlVulnerabilityAssessmentScans.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/subAssessments.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/tasks.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/topology.ts delete mode 100644 sdk/security/arm-security/src/operationsInterfaces/workspaceSettings.ts delete mode 100644 sdk/security/arm-security/src/pagingHelper.ts create mode 100644 sdk/security/arm-security/src/restorePollerHelpers.ts create mode 100644 sdk/security/arm-security/src/static-helpers/cloudSettingHelpers.ts create mode 100644 sdk/security/arm-security/src/static-helpers/pagingHelpers.ts create mode 100644 sdk/security/arm-security/src/static-helpers/pollingHelpers.ts create mode 100644 sdk/security/arm-security/src/static-helpers/serialization/check-prop-undefined.ts create mode 100644 sdk/security/arm-security/src/static-helpers/serialization/serialize-record.ts create mode 100644 sdk/security/arm-security/src/static-helpers/simplePollerHelpers.ts create mode 100644 sdk/security/arm-security/src/static-helpers/urlTemplate.ts delete mode 100644 sdk/security/arm-security/tsconfig.samples.json create mode 100644 sdk/security/arm-security/tsp-location.yaml create mode 100644 sdk/security/arm-security/vitest.esm.config.ts diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS index 6090660ca8ff..a16f50c960a1 100644 --- a/.github/CODEOWNERS +++ b/.github/CODEOWNERS @@ -928,7 +928,7 @@ # PRLabel: %Mgmt /sdk/springappdiscovery/arm-springappdiscovery/ @qiaozha @MaryGao @JialinHuang803 -# PRLabel: %Mgmt +# PRLabel: %Mgmt %mgmt-review-needed /sdk/security/arm-security/ @qiaozha @MaryGao @JialinHuang803 # PRLabel: %Mgmt diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f209a5e5a738..99dcf49c1887 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -28160,24 +28160,27 @@ importers: sdk/security/arm-security: dependencies: + '@azure-rest/core-client': + specifier: ^2.3.1 + version: link:../../core/core-client-rest '@azure/abort-controller': specifier: ^2.1.2 version: link:../../core/abort-controller '@azure/core-auth': specifier: ^1.9.0 version: link:../../core/core-auth - '@azure/core-client': - specifier: ^1.9.2 - version: link:../../core/core-client '@azure/core-lro': - specifier: ^2.5.4 - version: 2.7.2 - '@azure/core-paging': - specifier: ^1.6.2 - version: link:../../core/core-paging + specifier: ^3.1.0 + version: link:../../core/core-lro '@azure/core-rest-pipeline': specifier: link:../../core/core-rest-pipeline version: link:../../core/core-rest-pipeline + '@azure/core-util': + specifier: ^1.12.0 + version: link:../../core/core-util + '@azure/logger': + specifier: ^1.2.0 + version: link:../../core/logger tslib: specifier: ^2.8.1 version: 2.8.1 @@ -28194,12 +28197,12 @@ importers: '@azure/dev-tool': specifier: workspace:^ version: link:../../../common/tools/dev-tool + '@azure/eslint-plugin-azure-sdk': + specifier: workspace:^ + version: link:../../../common/tools/eslint-plugin-azure-sdk '@azure/identity': specifier: catalog:internal version: 4.13.0 - '@azure/logger': - specifier: ^1.1.4 - version: link:../../core/logger '@types/node': specifier: 'catalog:' version: 20.19.39 @@ -28215,12 +28218,15 @@ importers: dotenv: specifier: catalog:testing version: 16.6.1 + eslint: + specifier: 'catalog:' + version: 9.39.4 playwright: specifier: catalog:testing version: 1.59.1 - react-native: - specifier: catalog:testing - version: 0.84.1(@babel/core@7.29.0)(@types/react@19.2.14)(react@19.2.4) + prettier: + specifier: 'catalog:' + version: 3.8.3 rimraf: specifier: 'catalog:' version: 6.1.3 diff --git a/sdk/security/arm-security/CHANGELOG.md b/sdk/security/arm-security/CHANGELOG.md index 4845a126f0a6..b5fe458ef736 100644 --- a/sdk/security/arm-security/CHANGELOG.md +++ b/sdk/security/arm-security/CHANGELOG.md @@ -1,21 +1,988 @@ # Release History -## 6.0.0-beta.7 (Unreleased) +## 6.0.0-beta.7 (2026-05-10) +Compared with version 5.0.0 ### Features Added + - Added operation group APICollectionsOperations + - Added operation group ApplicationOperations + - Added operation group ApplicationsOperations + - Added operation group AssignmentsOperations + - Added operation group AzureDevOpsOrgsOperations + - Added operation group AzureDevOpsProjectsOperations + - Added operation group AzureDevOpsReposOperations + - Added operation group CustomRecommendationsOperations + - Added operation group DefenderForStorageOperations + - Added operation group DevOpsConfigurationsOperations + - Added operation group DevOpsOperationResultsOperations + - Added operation group GitHubIssuesOperations + - Added operation group GitHubOwnersOperations + - Added operation group GitHubReposOperations + - Added operation group GitLabGroupsOperations + - Added operation group GitLabProjectsOperations + - Added operation group GitLabSubgroupsOperations + - Added operation group GovernanceAssignmentsOperations + - Added operation group GovernanceRulesOperations + - Added operation group HealthReportsOperations + - Added operation group OperationResultsOperations + - Added operation group OperationStatusesOperations + - Added operation group PrivateEndpointConnectionsOperations + - Added operation group PrivateLinkResourcesOperations + - Added operation group PrivateLinksOperations + - Added operation group SecurityConnectorApplicationOperations + - Added operation group SecurityConnectorApplicationsOperations + - Added operation group SecurityOperatorsOperations + - Added operation group SecurityStandardsOperations + - Added operation group SensitivitySettingsOperations + - Added operation group ServerVulnerabilityAssessmentsSettingsOperations + - Added operation group SqlVulnerabilityAssessmentSettingsOperations + - Added operation group StandardAssignmentsOperations + - Added operation group StandardsOperations + - Added operation AlertsOperations.beginSimulate + - Added operation AlertsOperations.beginSimulateAndWait + - Added operation AlertsOperations.updateResourceGroupLevelStateToInProgress + - Added operation AlertsOperations.updateSubscriptionLevelStateToInProgress + - Added operation AutomationsOperations.update + - Added operation PricingsOperations.delete + - Added operation ServerVulnerabilityAssessmentOperations.delete + - Added operation SqlVulnerabilityAssessmentScansOperations.beginInitiateScan + - Added operation SqlVulnerabilityAssessmentScansOperations.beginInitiateScanAndWait + - Added operation SqlVulnerabilityAssessmentScansOperations.getScanOperationResult + - Added operation SqlVulnerabilityAssessmentScansOperations.initiateScan + - Added Interface AadExternalSecuritySolution + - Added Interface AadSolutionProperties + - Added Interface AccessTokenAuthentication + - Added Interface ActionableRemediation + - Added Interface AdvancedThreatProtectionProperties + - Added Interface AdvancedThreatProtectionSetting + - Added Interface AgentlessConfiguration + - Added Interface Alert + - Added Interface AlertProperties + - Added Interface AlertPropertiesSupportingEvidence + - Added Interface AlertSimulatorBundlesRequestProperties + - Added Interface AlertsSuppressionRule + - Added Interface AlertsSuppressionRuleProperties + - Added Interface AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams + - Added Interface AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams + - Added Interface AlertSyncSettingProperties + - Added Interface AlertSyncSettings + - Added Interface AllowedConnectionsResource + - Added Interface AllowedConnectionsResourceProperties + - Added Interface AllowlistCustomAlertRule + - Added Interface ApiCollection + - Added Interface ApiCollectionProperties + - Added Interface APICollectionsGetByAzureApiManagementServiceOptionalParams + - Added Interface APICollectionsListByAzureApiManagementServiceOptionalParams + - Added Interface APICollectionsListByResourceGroupOptionalParams + - Added Interface APICollectionsListBySubscriptionOptionalParams + - Added Interface APICollectionsOffboardAzureApiManagementApiOptionalParams + - Added Interface APICollectionsOnboardAzureApiManagementApiOptionalParams + - Added Interface Application + - Added Interface ApplicationCreateOrUpdateOptionalParams + - Added Interface ApplicationDeleteOptionalParams + - Added Interface ApplicationGetOptionalParams + - Added Interface ApplicationProperties + - Added Interface ApplicationsListOptionalParams + - Added Interface ArcAutoProvisioning + - Added Interface ArcAutoProvisioningAws + - Added Interface ArcAutoProvisioningConfiguration + - Added Interface ArcAutoProvisioningGcp + - Added Interface ArmPrivateEndpointConnection + - Added Interface AscLocation + - Added Interface AssessmentStatusResponse + - Added Interface AssignedAssessmentItem + - Added Interface AssignedComponentItem + - Added Interface AssignedStandardItem + - Added Interface Assignment + - Added Interface AssignmentProperties + - Added Interface AssignmentPropertiesAdditionalData + - Added Interface AssignmentsCreateOrUpdateOptionalParams + - Added Interface AssignmentsDeleteOptionalParams + - Added Interface AssignmentsGetOptionalParams + - Added Interface AssignmentsListBySubscriptionOptionalParams + - Added Interface AssignmentsListOptionalParams + - Added Interface AtaExternalSecuritySolution + - Added Interface AtaSolutionProperties + - Added Interface AttestationEvidence + - Added Interface Authentication + - Added Interface Authorization + - Added Interface Automation + - Added Interface AutomationActionEventHub + - Added Interface AutomationActionLogicApp + - Added Interface AutomationActionWorkspace + - Added Interface AutomationProperties + - Added Interface AutomationsUpdateOptionalParams + - Added Interface AutomationUpdateModel + - Added Interface AutoProvisioningSetting + - Added Interface AutoProvisioningSettingProperties + - Added Interface AwsEnvironmentData + - Added Interface AwsOrganizationalData + - Added Interface AwsOrganizationalDataMaster + - Added Interface AwsOrganizationalDataMember + - Added Interface AzureDevOpsOrg + - Added Interface AzureDevOpsOrgListResponse + - Added Interface AzureDevOpsOrgProperties + - Added Interface AzureDevOpsOrgsCreateOrUpdateOptionalParams + - Added Interface AzureDevOpsOrgsGetOptionalParams + - Added Interface AzureDevOpsOrgsListAvailableOptionalParams + - Added Interface AzureDevOpsOrgsListOptionalParams + - Added Interface AzureDevOpsOrgsUpdateOptionalParams + - Added Interface AzureDevOpsProject + - Added Interface AzureDevOpsProjectProperties + - Added Interface AzureDevOpsProjectsCreateOrUpdateOptionalParams + - Added Interface AzureDevOpsProjectsGetOptionalParams + - Added Interface AzureDevOpsProjectsListOptionalParams + - Added Interface AzureDevOpsProjectsUpdateOptionalParams + - Added Interface AzureDevOpsReposCreateOrUpdateOptionalParams + - Added Interface AzureDevOpsReposGetOptionalParams + - Added Interface AzureDevOpsRepository + - Added Interface AzureDevOpsRepositoryProperties + - Added Interface AzureDevOpsReposListOptionalParams + - Added Interface AzureDevOpsReposUpdateOptionalParams + - Added Interface AzureDevOpsScopeEnvironmentData + - Added Interface AzureResourceDetails + - Added Interface AzureResourceIdentifier + - Added Interface AzureServersSetting + - Added Interface BlobsScanSummary + - Added Interface BuiltInInfoType + - Added Interface CategoryConfiguration + - Added Interface CefExternalSecuritySolution + - Added Interface CefSolutionProperties + - Added Interface Compliance + - Added Interface ComplianceProperties + - Added Interface ComplianceResult + - Added Interface ComplianceResultProperties + - Added Interface ContainerRegistryVulnerabilityProperties + - Added Interface CspmMonitorAwsOffering + - Added Interface CspmMonitorAzureDevOpsOffering + - Added Interface CspmMonitorDockerHubOffering + - Added Interface CspmMonitorGcpOffering + - Added Interface CspmMonitorGcpOfferingNativeCloudConnection + - Added Interface CspmMonitorGithubOffering + - Added Interface CspmMonitorGitLabOffering + - Added Interface CspmMonitorJFrogOffering + - Added Interface CustomRecommendation + - Added Interface CustomRecommendationProperties + - Added Interface CustomRecommendationsCreateOrUpdateOptionalParams + - Added Interface CustomRecommendationsDeleteOptionalParams + - Added Interface CustomRecommendationsGetOptionalParams + - Added Interface CustomRecommendationsListOptionalParams + - Added Interface DataExportSettingProperties + - Added Interface DataExportSettings + - Added Interface DefenderCspmAwsOffering + - Added Interface DefenderCspmAwsOfferingCiem + - Added Interface DefenderCspmAwsOfferingCiemDiscovery + - Added Interface DefenderCspmAwsOfferingCiemOidc + - Added Interface DefenderCspmAwsOfferingDatabasesDspm + - Added Interface DefenderCspmAwsOfferingDataSensitivityDiscovery + - Added Interface DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S + - Added Interface DefenderCspmAwsOfferingMdcContainersImageAssessment + - Added Interface DefenderCspmAwsOfferingVmScanners + - Added Interface DefenderCspmDockerHubOffering + - Added Interface DefenderCspmGcpOffering + - Added Interface DefenderCspmGcpOfferingCiemDiscovery + - Added Interface DefenderCspmGcpOfferingDataSensitivityDiscovery + - Added Interface DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S + - Added Interface DefenderCspmGcpOfferingMdcContainersImageAssessment + - Added Interface DefenderCspmGcpOfferingVmScanners + - Added Interface DefenderCspmJFrogOffering + - Added Interface DefenderCspmJFrogOfferingMdcContainersImageAssessment + - Added Interface DefenderFoDatabasesAwsOffering + - Added Interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning + - Added Interface DefenderFoDatabasesAwsOfferingDatabasesDspm + - Added Interface DefenderFoDatabasesAwsOfferingRds + - Added Interface DefenderForContainersAwsOffering + - Added Interface DefenderForContainersAwsOfferingKubernetesDataCollection + - Added Interface DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S + - Added Interface DefenderForContainersAwsOfferingMdcContainersImageAssessment + - Added Interface DefenderForContainersAwsOfferingVmScanners + - Added Interface DefenderForContainersDockerHubOffering + - Added Interface DefenderForContainersGcpOffering + - Added Interface DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection + - Added Interface DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S + - Added Interface DefenderForContainersGcpOfferingMdcContainersImageAssessment + - Added Interface DefenderForContainersGcpOfferingNativeCloudConnection + - Added Interface DefenderForContainersGcpOfferingVmScanners + - Added Interface DefenderForContainersJFrogOffering + - Added Interface DefenderForDatabasesGcpOffering + - Added Interface DefenderForDatabasesGcpOfferingArcAutoProvisioning + - Added Interface DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning + - Added Interface DefenderForServersAwsOffering + - Added Interface DefenderForServersAwsOfferingMdeAutoProvisioning + - Added Interface DefenderForServersAwsOfferingSubPlan + - Added Interface DefenderForServersAwsOfferingVaAutoProvisioning + - Added Interface DefenderForServersAwsOfferingVaAutoProvisioningConfiguration + - Added Interface DefenderForServersAwsOfferingVmScanners + - Added Interface DefenderForServersGcpOffering + - Added Interface DefenderForServersGcpOfferingArcAutoProvisioning + - Added Interface DefenderForServersGcpOfferingDefenderForServers + - Added Interface DefenderForServersGcpOfferingMdeAutoProvisioning + - Added Interface DefenderForServersGcpOfferingSubPlan + - Added Interface DefenderForServersGcpOfferingVaAutoProvisioning + - Added Interface DefenderForServersGcpOfferingVaAutoProvisioningConfiguration + - Added Interface DefenderForServersGcpOfferingVmScanners + - Added Interface DefenderForStorageCancelMalwareScanOptionalParams + - Added Interface DefenderForStorageCreateOptionalParams + - Added Interface DefenderForStorageGetMalwareScanOptionalParams + - Added Interface DefenderForStorageGetOptionalParams + - Added Interface DefenderForStorageListOptionalParams + - Added Interface DefenderForStorageSetting + - Added Interface DefenderForStorageSettingProperties + - Added Interface DefenderForStorageStartMalwareScanOptionalParams + - Added Interface DenylistCustomAlertRule + - Added Interface DeviceSecurityGroup + - Added Interface DeviceSecurityGroupProperties + - Added Interface DevOpsCapability + - Added Interface DevOpsConfiguration + - Added Interface DevOpsConfigurationProperties + - Added Interface DevOpsConfigurationsCreateOrUpdateOptionalParams + - Added Interface DevOpsConfigurationsDeleteOptionalParams + - Added Interface DevOpsConfigurationsGetOptionalParams + - Added Interface DevOpsConfigurationsListOptionalParams + - Added Interface DevOpsConfigurationsUpdateOptionalParams + - Added Interface DevOpsOperationResultsGetOptionalParams + - Added Interface DiscoveredSecuritySolution + - Added Interface DiscoveredSecuritySolutionProperties + - Added Interface DockerHubEnvironmentData + - Added Interface EnvironmentData + - Added Interface EnvironmentDetails + - Added Interface ErrorDetail + - Added Interface ErrorResponse + - Added Interface ExecuteGovernanceRuleParams + - Added Interface Extension + - Added Interface ExtensionResource + - Added Interface ExternalSecuritySolution + - Added Interface FilesScanSummary + - Added Interface GcpOrganizationalData + - Added Interface GcpOrganizationalDataMember + - Added Interface GcpOrganizationalDataOrganization + - Added Interface GcpProjectDetails + - Added Interface GcpProjectEnvironmentData + - Added Interface GetSensitivitySettingsListResponse + - Added Interface GetSensitivitySettingsResponse + - Added Interface GetSensitivitySettingsResponseProperties + - Added Interface GetSensitivitySettingsResponsePropertiesMipInformation + - Added Interface GitHubIssuesCreateOptionalParams + - Added Interface GitHubOwner + - Added Interface GitHubOwnerListResponse + - Added Interface GitHubOwnerProperties + - Added Interface GitHubOwnersGetOptionalParams + - Added Interface GitHubOwnersListAvailableOptionalParams + - Added Interface GitHubOwnersListOptionalParams + - Added Interface GitHubReposGetOptionalParams + - Added Interface GitHubRepository + - Added Interface GitHubRepositoryProperties + - Added Interface GitHubReposListOptionalParams + - Added Interface GithubScopeEnvironmentData + - Added Interface GitLabGroup + - Added Interface GitLabGroupListResponse + - Added Interface GitLabGroupProperties + - Added Interface GitLabGroupsGetOptionalParams + - Added Interface GitLabGroupsListAvailableOptionalParams + - Added Interface GitLabGroupsListOptionalParams + - Added Interface GitLabProject + - Added Interface GitLabProjectProperties + - Added Interface GitLabProjectsGetOptionalParams + - Added Interface GitLabProjectsListOptionalParams + - Added Interface GitlabScopeEnvironmentData + - Added Interface GitLabSubgroupsListOptionalParams + - Added Interface GovernanceAssignment + - Added Interface GovernanceAssignmentAdditionalData + - Added Interface GovernanceAssignmentProperties + - Added Interface GovernanceAssignmentsCreateOrUpdateOptionalParams + - Added Interface GovernanceAssignmentsDeleteOptionalParams + - Added Interface GovernanceAssignmentsGetOptionalParams + - Added Interface GovernanceAssignmentsListOptionalParams + - Added Interface GovernanceEmailNotification + - Added Interface GovernanceRule + - Added Interface GovernanceRuleEmailNotification + - Added Interface GovernanceRuleMetadata + - Added Interface GovernanceRuleOwnerSource + - Added Interface GovernanceRuleProperties + - Added Interface GovernanceRulesCreateOrUpdateOptionalParams + - Added Interface GovernanceRulesDeleteOptionalParams + - Added Interface GovernanceRulesExecuteOptionalParams + - Added Interface GovernanceRulesGetOptionalParams + - Added Interface GovernanceRulesListOptionalParams + - Added Interface GovernanceRulesOperationResultsOptionalParams + - Added Interface HealthDataClassification + - Added Interface HealthReport + - Added Interface HealthReportProperties + - Added Interface HealthReportsGetOptionalParams + - Added Interface HealthReportsListOptionalParams + - Added Interface Identity + - Added Interface InformationProtectionPolicy + - Added Interface InformationProtectionPolicyProperties + - Added Interface InfoType + - Added Interface InventoryList + - Added Interface IoTSecurityAggregatedAlert + - Added Interface IoTSecurityAggregatedAlertProperties + - Added Interface IoTSecurityAggregatedRecommendation + - Added Interface IoTSecurityAggregatedRecommendationProperties + - Added Interface IoTSecuritySolutionAnalyticsModel + - Added Interface IoTSecuritySolutionAnalyticsModelProperties + - Added Interface IoTSecuritySolutionModel + - Added Interface IoTSecuritySolutionProperties + - Added Interface Issue + - Added Interface IssueCreationRequest + - Added Interface JFrogEnvironmentData + - Added Interface JitNetworkAccessPolicy + - Added Interface JitNetworkAccessPolicyProperties + - Added Interface Label + - Added Interface ListCustomAlertRule + - Added Interface LogAnalyticsIdentifier + - Added Interface MalwareScan + - Added Interface MalwareScanningProperties + - Added Interface MalwareScanProperties + - Added Interface MdeOnboardingData + - Added Interface MdeOnboardingDataProperties + - Added Interface NotificationsSource + - Added Interface NotificationsSourceAlert + - Added Interface NotificationsSourceAttackPath + - Added Interface OnPremiseResourceDetails + - Added Interface OnPremiseSqlResourceDetails + - Added Interface OnUploadFilters + - Added Interface OnUploadProperties + - Added Interface OperationResult + - Added Interface OperationResultsGetOptionalParams + - Added Interface OperationStatus + - Added Interface OperationStatusesGetOptionalParams + - Added Interface OperationStatusResult + - Added Interface PagedAsyncIterableIterator + - Added Interface PageSettings + - Added Interface PartialAssessmentProperties + - Added Interface Pricing + - Added Interface PricingProperties + - Added Interface PricingsDeleteOptionalParams + - Added Interface PrivateEndpoint + - Added Interface PrivateEndpointConnection + - Added Interface PrivateEndpointConnectionProperties + - Added Interface PrivateEndpointConnectionsCreateOrUpdateOptionalParams + - Added Interface PrivateEndpointConnectionsDeleteOptionalParams + - Added Interface PrivateEndpointConnectionsGetOptionalParams + - Added Interface PrivateEndpointConnectionsListOptionalParams + - Added Interface PrivateLinkGroupResource + - Added Interface PrivateLinkParameters + - Added Interface PrivateLinkProperties + - Added Interface PrivateLinkResource + - Added Interface PrivateLinkResourceProperties + - Added Interface PrivateLinkResourcesGetOptionalParams + - Added Interface PrivateLinkResourcesListOptionalParams + - Added Interface PrivateLinksCreateOptionalParams + - Added Interface PrivateLinksDeleteOptionalParams + - Added Interface PrivateLinkServiceConnectionState + - Added Interface PrivateLinksGetOptionalParams + - Added Interface PrivateLinksHeadOptionalParams + - Added Interface PrivateLinksListBySubscriptionOptionalParams + - Added Interface PrivateLinksListOptionalParams + - Added Interface PrivateLinksUpdateOptionalParams + - Added Interface PrivateLinkUpdate + - Added Interface ProxyResource + - Added Interface RegulatoryComplianceAssessment + - Added Interface RegulatoryComplianceAssessmentProperties + - Added Interface RegulatoryComplianceControl + - Added Interface RegulatoryComplianceControlProperties + - Added Interface RegulatoryComplianceStandard + - Added Interface RegulatoryComplianceStandardProperties + - Added Interface RemediationEta + - Added Interface RestorePollerOptions + - Added Interface RuleResults + - Added Interface ScanPropertiesV2 + - Added Interface ScanResult + - Added Interface ScanSummary + - Added Interface ScanV2 + - Added Interface ScoreDetails + - Added Interface SecureScoreControlDefinitionItem + - Added Interface SecureScoreControlDefinitionItemProperties + - Added Interface SecureScoreControlDetails + - Added Interface SecureScoreControlScoreDetails + - Added Interface SecureScoreItem + - Added Interface SecureScoreItemProperties + - Added Interface SecurityAssessment + - Added Interface SecurityAssessmentMetadataPropertiesResponse + - Added Interface SecurityAssessmentMetadataResponse + - Added Interface SecurityAssessmentProperties + - Added Interface SecurityAssessmentPropertiesBaseRisk + - Added Interface SecurityAssessmentPropertiesBaseRiskPathsItem + - Added Interface SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem + - Added Interface SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem + - Added Interface SecurityAssessmentPropertiesResponse + - Added Interface SecurityAssessmentResponse + - Added Interface SecurityCenterResourceDetails + - Added Interface SecurityConnector + - Added Interface SecurityConnectorApplicationCreateOrUpdateOptionalParams + - Added Interface SecurityConnectorApplicationDeleteOptionalParams + - Added Interface SecurityConnectorApplicationGetOptionalParams + - Added Interface SecurityConnectorApplicationsListOptionalParams + - Added Interface SecurityConnectorProperties + - Added Interface SecurityContact + - Added Interface SecurityContactProperties + - Added Interface SecurityContactPropertiesNotificationsByRole + - Added Interface SecurityOperator + - Added Interface SecurityOperatorsCreateOrUpdateOptionalParams + - Added Interface SecurityOperatorsDeleteOptionalParams + - Added Interface SecurityOperatorsGetOptionalParams + - Added Interface SecurityOperatorsListOptionalParams + - Added Interface SecuritySolution + - Added Interface SecuritySolutionProperties + - Added Interface SecuritySolutionsReferenceData + - Added Interface SecuritySolutionsReferenceDataProperties + - Added Interface SecurityStandard + - Added Interface SecurityStandardProperties + - Added Interface SecurityStandardsCreateOrUpdateOptionalParams + - Added Interface SecurityStandardsDeleteOptionalParams + - Added Interface SecurityStandardsGetOptionalParams + - Added Interface SecurityStandardsListOptionalParams + - Added Interface SecuritySubAssessment + - Added Interface SecuritySubAssessmentProperties + - Added Interface SecurityTask + - Added Interface SecurityTaskProperties + - Added Interface SensitiveDataDiscoveryProperties + - Added Interface SensitivitySettingsCreateOrUpdateOptionalParams + - Added Interface SensitivitySettingsGetOptionalParams + - Added Interface SensitivitySettingsListOptionalParams + - Added Interface ServerVulnerabilityAssessment + - Added Interface ServerVulnerabilityAssessmentProperties + - Added Interface ServerVulnerabilityAssessmentsAzureSettingProperties + - Added Interface ServerVulnerabilityAssessmentsSetting + - Added Interface ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams + - Added Interface ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams + - Added Interface ServerVulnerabilityAssessmentsSettingsGetOptionalParams + - Added Interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams + - Added Interface ServerVulnerabilityProperties + - Added Interface Setting + - Added Interface SimplePollerLike + - Added Interface SqlServerVulnerabilityProperties + - Added Interface SqlVulnerabilityAssessmentScanOperationResult + - Added Interface SqlVulnerabilityAssessmentScanOperationResultProperties + - Added Interface SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams + - Added Interface SqlVulnerabilityAssessmentScansInitiateScanOptionalParams + - Added Interface SqlVulnerabilityAssessmentSettings + - Added Interface SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams + - Added Interface SqlVulnerabilityAssessmentSettingsDeleteOptionalParams + - Added Interface SqlVulnerabilityAssessmentSettingsGetOptionalParams + - Added Interface SqlVulnerabilityAssessmentSettingsProperties + - Added Interface Standard + - Added Interface StandardAssignment + - Added Interface StandardAssignmentMetadata + - Added Interface StandardAssignmentProperties + - Added Interface StandardAssignmentPropertiesAttestationData + - Added Interface StandardAssignmentPropertiesExemptionData + - Added Interface StandardAssignmentsCreateOptionalParams + - Added Interface StandardAssignmentsDeleteOptionalParams + - Added Interface StandardAssignmentsGetOptionalParams + - Added Interface StandardAssignmentsListOptionalParams + - Added Interface StandardComponentProperties + - Added Interface StandardMetadata + - Added Interface StandardProperties + - Added Interface StandardsCreateOrUpdateOptionalParams + - Added Interface StandardsDeleteOptionalParams + - Added Interface StandardsGetOptionalParams + - Added Interface StandardsListBySubscriptionOptionalParams + - Added Interface StandardsListOptionalParams + - Added Interface Status + - Added Interface TargetBranchConfiguration + - Added Interface ThresholdCustomAlertRule + - Added Interface TimeWindowCustomAlertRule + - Added Interface TopologyResource + - Added Interface TopologyResourceProperties + - Added Interface TrackedResource + - Added Interface UpdateIotSecuritySolutionData + - Added Interface UpdateIoTSecuritySolutionProperties + - Added Interface UpdateSensitivitySettingsRequest + - Added Interface VmScannersAws + - Added Interface VmScannersBase + - Added Interface VmScannersBaseConfiguration + - Added Interface VmScannersGcp + - Added Interface WorkspaceSetting + - Added Interface WorkspaceSettingProperties + - Interface AlertEntity has a new optional parameter additionalProperties + - Interface AlertSimulatorRequestProperties has a new optional parameter additionalProperties + - Interface AlertsSimulateOptionalParams has a new optional parameter updateIntervalInMs + - Interface DefenderForServersAwsOfferingArcAutoProvisioning has a new optional parameter cloudRoleArn + - Interface DefenderForServersAwsOfferingArcAutoProvisioning has a new optional parameter configuration + - Interface ExternalSecuritySolutionProperties has a new optional parameter additionalProperties + - Interface Operation has a new optional parameter actionType + - Interface Operation has a new optional parameter isDataAction + - Interface PricingsListOptionalParams has a new optional parameter filter + - Interface Resource has a new optional parameter systemData + - Interface RuleResultsProperties has a new optional parameter latestScan + - Interface RulesResults has a new optional parameter nextLink + - Interface ScopeElement has a new optional parameter additionalProperties + - Interface SecurityAssessmentPropertiesBase has a new optional parameter risk + - Interface SecurityTaskParameters has a new optional parameter additionalProperties + - Interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentBaselineRulesListOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentScanResultsGetOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentScanResultsListOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentScansGetOptionalParams has a new optional parameter databaseName + - Interface SqlVulnerabilityAssessmentScansListOptionalParams has a new optional parameter databaseName + - Added Type Alias ActionableRemediationState + - Added Type Alias AgentlessEnablement + - Added Type Alias AnnotateDefaultBranchState + - Added Type Alias ApplicationSourceResourceType + - Added Type Alias ArmActionType + - Added Type Alias AttestationComplianceState + - Added Type Alias AuthenticationUnion + - Added Type Alias AutoDiscovery + - Added Type Alias AutomatedResponseType + - Added Type Alias AwsOrganizationalDataUnion + - Added Type Alias AzureSupportedClouds + - Added Type Alias BlobScanResultsOptions + - Added Type Alias ConnectionType + - Added Type Alias DevOpsProvisioningState + - Added Type Alias Effect + - Added Type Alias Enforce + - Added Type Alias EnvironmentDataUnion + - Added Type Alias EnvironmentType + - Added Type Alias ExemptionCategory + - Added Type Alias GcpOrganizationalDataUnion + - Added Type Alias GovernanceRuleOwnerSourceType + - Added Type Alias GovernanceRuleSourceResourceType + - Added Type Alias GovernanceRuleType + - Added Type Alias Inherited + - Added Type Alias InheritFromParentState + - Added Type Alias InventoryKind + - Added Type Alias InventoryListKind + - Added Type Alias IsEnabled + - Added Type Alias MinimalRiskLevel + - Added Type Alias MinimalSeverity + - Added Type Alias MipIntegrationStatus + - Added Type Alias NotificationsSourceUnion + - Added Type Alias OnboardingState + - Added Type Alias OperationResultStatus + - Added Type Alias Origin + - Added Type Alias PrivateEndpointConnectionProvisioningState + - Added Type Alias PrivateEndpointServiceConnectionStatus + - Added Type Alias PublicNetworkAccess + - Added Type Alias RecommendationSupportedClouds + - Added Type Alias ResourceIdentityType + - Added Type Alias ResourcesCoverageStatus + - Added Type Alias RiskLevel + - Added Type Alias RuleCategory + - Added Type Alias ScanningMode + - Added Type Alias ScanOperationStatus + - Added Type Alias SecurityCenterStatus + - Added Type Alias SecurityContactName + - Added Type Alias SecurityContactRole + - Added Type Alias SecurityIssue + - Added Type Alias ServerVulnerabilityAssessmentsAzureSettingSelectedProvider + - Added Type Alias ServerVulnerabilityAssessmentsSettingKind + - Added Type Alias ServerVulnerabilityAssessmentsSettingKindName + - Added Type Alias ServerVulnerabilityAssessmentsSettingUnion + - Added Type Alias SourceType + - Added Type Alias SqlVulnerabilityAssessmentState + - Added Type Alias StandardSupportedCloud + - Added Type Alias StandardSupportedClouds + - Added Type Alias StandardType + - Added Type Alias StatusName + - Added Type Alias SubPlan + - Added Type Alias Type + - Added Enum AzureClouds + - Added Enum KnownActionableRemediationState + - Added Enum KnownAgentlessEnablement + - Added Enum KnownAnnotateDefaultBranchState + - Added Enum KnownApplicationSourceResourceType + - Added Enum KnownArmActionType + - Added Enum KnownAttestationComplianceState + - Added Enum KnownAutoDiscovery + - Added Enum KnownAutomatedResponseType + - Added Enum KnownBlobScanResultsOptions + - Added Enum KnownDevOpsProvisioningState + - Added Enum KnownEffect + - Added Enum KnownEnforce + - Added Enum KnownEnvironmentType + - Added Enum KnownExemptionCategory + - Added Enum KnownGovernanceRuleOwnerSourceType + - Added Enum KnownGovernanceRuleSourceResourceType + - Added Enum KnownGovernanceRuleType + - Added Enum KnownInherited + - Added Enum KnownInheritFromParentState + - Added Enum KnownInventoryKind + - Added Enum KnownInventoryListKind + - Added Enum KnownIsEnabled + - Added Enum KnownMinimalRiskLevel + - Added Enum KnownMinimalSeverity + - Added Enum KnownMipIntegrationStatus + - Added Enum KnownOnboardingState + - Added Enum KnownOperationResultStatus + - Added Enum KnownOrigin + - Added Enum KnownPrivateEndpointConnectionProvisioningState + - Added Enum KnownPrivateEndpointServiceConnectionStatus + - Added Enum KnownPublicNetworkAccess + - Added Enum KnownRecommendationSupportedClouds + - Added Enum KnownResourcesCoverageStatus + - Added Enum KnownRiskLevel + - Added Enum KnownRuleCategory + - Added Enum KnownScanningMode + - Added Enum KnownScanOperationStatus + - Added Enum KnownSecurityContactName + - Added Enum KnownSecurityContactRole + - Added Enum KnownSecurityIssue + - Added Enum KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider + - Added Enum KnownServerVulnerabilityAssessmentsSettingKind + - Added Enum KnownServerVulnerabilityAssessmentsSettingKindName + - Added Enum KnownSourceType + - Added Enum KnownSqlVulnerabilityAssessmentState + - Added Enum KnownStandardSupportedCloud + - Added Enum KnownStandardType + - Added Enum KnownStatusName + - Added Enum KnownSubPlan + - Added Enum KnownType + - Enum KnownActionType has a new value Internal + - Enum KnownAlertStatus has a new value InProgress + - Enum KnownAssessedResourceType has a new value ServerVulnerabilityAssessment + - Enum KnownAssessmentType has a new value BuiltInPolicy + - Enum KnownAssessmentType has a new value Custom + - Enum KnownAssessmentType has a new value DynamicBuiltIn + - Enum KnownAssessmentType has a new value ManualBuiltIn + - Enum KnownAssessmentType has a new value ManualBuiltInPolicy + - Enum KnownAssessmentType has a new value ManualCustomPolicy + - Enum KnownAssessmentType has a new value Unknown + - Enum KnownAuthenticationType has a new value AccessToken + - Enum KnownBundleType has a new value CosmosDbs + - Enum KnownCategories has a new value AppServices + - Enum KnownCategories has a new value Container + - Enum KnownCloudName has a new value AzureDevOps + - Enum KnownCloudName has a new value DockerHub + - Enum KnownCloudName has a new value Github + - Enum KnownCloudName has a new value GitLab + - Enum KnownCloudName has a new value JFrog + - Enum KnownEventSource has a new value AttackPaths + - Enum KnownEventSource has a new value AttackPathsSnapshot + - Enum KnownOfferingType has a new value CspmMonitorAzureDevOps + - Enum KnownOfferingType has a new value CspmMonitorDockerHub + - Enum KnownOfferingType has a new value CspmMonitorGcp + - Enum KnownOfferingType has a new value CspmMonitorGithub + - Enum KnownOfferingType has a new value CspmMonitorGitLab + - Enum KnownOfferingType has a new value CspmMonitorJFrog + - Enum KnownOfferingType has a new value DefenderCspmAws + - Enum KnownOfferingType has a new value DefenderCspmDockerHub + - Enum KnownOfferingType has a new value DefenderCspmGcp + - Enum KnownOfferingType has a new value DefenderCspmJFrog + - Enum KnownOfferingType has a new value DefenderForContainersDockerHub + - Enum KnownOfferingType has a new value DefenderForContainersGcp + - Enum KnownOfferingType has a new value DefenderForContainersJFrog + - Enum KnownOfferingType has a new value DefenderForDatabasesAws + - Enum KnownOfferingType has a new value DefenderForDatabasesGcp + - Enum KnownOfferingType has a new value DefenderForServersGcp + - Enum KnownProvisioningState has a new value Canceled + - Enum KnownProvisioningState has a new value Creating + - Enum KnownProvisioningState has a new value Deleting + - Enum KnownProvisioningState has a new value InProgress + - Enum KnownRuleStatus has a new value NotApplicable + - Enum KnownSettingName has a new value Current + - Enum KnownSettingName has a new value WdatpUnifiedSolution + - Enum KnownSeverity has a new value Critical + - Enum KnownSource has a new value Aws + - Enum KnownSource has a new value Gcp + - Enum KnownSource has a new value OnPremiseResourceDetails + - Enum KnownState has a new value Off + - Enum KnownState has a new value On ### Breaking Changes + - Removed operation SecurityContacts.update + - Operation Alerts.getResourceGroupLevel has a new signature + - Operation Alerts.getSubscriptionLevel has a new signature + - Operation Alerts.simulate has a new signature + - Operation Assessments.createOrUpdate has a new signature + - Operation Assessments.get has a new signature + - Operation Automations.createOrUpdate has a new signature + - Operation Automations.get has a new signature + - Operation Automations.validate has a new signature + - Operation Pricings.get has a new signature + - Operation Pricings.list has a new signature + - Operation Pricings.update has a new signature + - Operation SecurityConnectors.createOrUpdate has a new signature + - Operation SecurityConnectors.get has a new signature + - Operation SecurityConnectors.update has a new signature + - Operation SqlVulnerabilityAssessmentBaselineRules.add has a new signature + - Operation SqlVulnerabilityAssessmentBaselineRules.createOrUpdate has a new signature + - Operation SqlVulnerabilityAssessmentBaselineRules.delete has a new signature + - Operation SqlVulnerabilityAssessmentBaselineRules.get has a new signature + - Operation SqlVulnerabilityAssessmentBaselineRules.list has a new signature + - Operation SqlVulnerabilityAssessmentScanResults.get has a new signature + - Operation SqlVulnerabilityAssessmentScanResults.list has a new signature + - Operation SqlVulnerabilityAssessmentScans.get has a new signature + - Operation SqlVulnerabilityAssessmentScans.list has a new signature + - Operation SubAssessments.get has a new signature + - Removed Interface AadConnectivityStateAutoGenerated + - Removed Interface AdaptiveApplicationControlGroups + - Removed Interface AdaptiveApplicationControlIssueSummary + - Removed Interface AdaptiveApplicationControls + - Removed Interface AdaptiveApplicationControlsDeleteOptionalParams + - Removed Interface AdaptiveApplicationControlsGetOptionalParams + - Removed Interface AdaptiveApplicationControlsListOptionalParams + - Removed Interface AdaptiveApplicationControlsPutOptionalParams + - Removed Interface AdaptiveNetworkHardeningEnforceRequest + - Removed Interface AdaptiveNetworkHardenings + - Removed Interface AdaptiveNetworkHardeningsEnforceOptionalParams + - Removed Interface AdaptiveNetworkHardeningsGetOptionalParams + - Removed Interface AdaptiveNetworkHardeningsList + - Removed Interface AdaptiveNetworkHardeningsListByExtendedResourceOptionalParams + - Removed Interface AlertList + - Removed Interface AlertsSuppressionRulesList + - Removed Interface AllowedConnectionsList + - Removed Interface AscLocationList + - Removed Interface AuthenticationDetailsProperties + - Removed Interface AutomationList + - Removed Interface AutoProvisioningSettingList + - Removed Interface AzureTrackedResourceLocation + - Removed Interface ComplianceList + - Removed Interface ComplianceResultList + - Removed Interface ConnectionStrings + - Removed Interface Connectors + - Removed Interface ConnectorsCreateOrUpdateOptionalParams + - Removed Interface ConnectorsDeleteOptionalParams + - Removed Interface ConnectorSettingList + - Removed Interface ConnectorsGetOptionalParams + - Removed Interface ConnectorsListOptionalParams + - Removed Interface CustomAssessmentAutomations + - Removed Interface CustomAssessmentAutomationsCreateOptionalParams + - Removed Interface CustomAssessmentAutomationsDeleteOptionalParams + - Removed Interface CustomAssessmentAutomationsGetOptionalParams + - Removed Interface CustomAssessmentAutomationsListByResourceGroupOptionalParams + - Removed Interface CustomAssessmentAutomationsListBySubscriptionOptionalParams + - Removed Interface CustomEntityStoreAssignmentRequest + - Removed Interface CustomEntityStoreAssignments + - Removed Interface CustomEntityStoreAssignmentsCreateOptionalParams + - Removed Interface CustomEntityStoreAssignmentsDeleteOptionalParams + - Removed Interface CustomEntityStoreAssignmentsGetOptionalParams + - Removed Interface CustomEntityStoreAssignmentsListByResourceGroupOptionalParams + - Removed Interface CustomEntityStoreAssignmentsListBySubscriptionOptionalParams + - Removed Interface DefenderForContainersAwsOfferingKubernetesScubaReader + - Removed Interface DefenderForServersAwsOfferingArcAutoProvisioningServicePrincipalSecretMetadata + - Removed Interface DeviceSecurityGroupList + - Removed Interface DiscoveredSecuritySolutionList + - Removed Interface EffectiveNetworkSecurityGroups + - Removed Interface ETag + - Removed Interface ExternalSecuritySolutionKindAutoGenerated + - Removed Interface ExternalSecuritySolutionList + - Removed Interface HybridComputeSettingsProperties + - Removed Interface InformationProtectionAwsOfferingInformationProtection + - Removed Interface InformationProtectionPolicyList + - Removed Interface IngestionConnectionString + - Removed Interface IngestionSettingList + - Removed Interface IngestionSettings + - Removed Interface IngestionSettingsCreateOptionalParams + - Removed Interface IngestionSettingsDeleteOptionalParams + - Removed Interface IngestionSettingsGetOptionalParams + - Removed Interface IngestionSettingsListConnectionStringsOptionalParams + - Removed Interface IngestionSettingsListOptionalParams + - Removed Interface IngestionSettingsListTokensOptionalParams + - Removed Interface IngestionSettingToken + - Removed Interface IoTSecurityAggregatedAlertList + - Removed Interface IoTSecurityAggregatedRecommendationList + - Removed Interface IoTSecuritySolutionsList + - Removed Interface JitNetworkAccessPoliciesList + - Removed Interface KindAutoGenerated + - Removed Interface Location_2 + - Removed Interface OperationList + - Removed Interface PathRecommendation + - Removed Interface ProtectionMode + - Removed Interface ProxyServerProperties + - Removed Interface PublisherInfo + - Removed Interface RegulatoryComplianceAssessmentList + - Removed Interface RegulatoryComplianceControlList + - Removed Interface RegulatoryComplianceStandardList + - Removed Interface Rule + - Removed Interface ScanProperties + - Removed Interface ScanResults + - Removed Interface Scans + - Removed Interface SecureScoreControlDefinitionList + - Removed Interface SecureScoreControlList + - Removed Interface SecureScoreControlScore + - Removed Interface SecureScoresList + - Removed Interface SecurityAssessmentList + - Removed Interface SecurityAssessmentMetadataResponseList + - Removed Interface SecurityConnectorPropertiesOrganizationalData + - Removed Interface SecurityConnectorsList + - Removed Interface SecurityContactList + - Removed Interface SecurityContactsUpdateOptionalParams + - Removed Interface SecuritySolutionList + - Removed Interface SecuritySubAssessmentList + - Removed Interface SecurityTaskList + - Removed Interface ServicePrincipalProperties + - Removed Interface SettingsList + - Removed Interface SoftwareInventories + - Removed Interface SoftwareInventoriesGetOptionalParams + - Removed Interface SoftwareInventoriesListByExtendedResourceOptionalParams + - Removed Interface SoftwareInventoriesListBySubscriptionOptionalParams + - Removed Interface SoftwaresList + - Removed Interface TopologyList + - Removed Interface UserRecommendation + - Removed Interface VmRecommendation + - Removed Interface WorkspaceSettingList + - Type of parameter assessedResourceType of interface AdditionalData is changed from "SqlServerVulnerability" | "ContainerRegistryVulnerability" | "ServerVulnerabilityAssessment" to AssessedResourceType + - Type of parameter kind of interface AlertSimulatorRequestProperties is changed from "Bundles" to Kind + - Type of parameter actionType of interface AutomationAction is changed from "LogicApp" | "EventHub" | "Workspace" to ActionType + - Type of parameter offeringType of interface CloudOffering is changed from "CspmMonitorAws" | "DefenderForContainersAws" | "DefenderForServersAws" | "InformationProtectionAws" to OfferingType + - Type of parameter ruleType of interface CustomAlertRule is changed from "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule" | "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange" to string + - Type of parameter source of interface ResourceDetails is changed from "Azure" | "OnPremise" | "OnPremiseSql" to Source + - Type of parameter type of interface ResourceIdentifier is changed from "AzureResource" | "LogAnalytics" to ResourceIdentifierType + - Interface DefenderForServersAwsOfferingArcAutoProvisioning no longer has parameter servicePrincipalSecretMetadata + - Removed Type Alias AadExternalSecuritySolution + - Removed Type Alias AadSolutionProperties + - Removed Type Alias ActiveConnectionsNotInAllowedRange + - Removed Type Alias AdaptiveApplicationControlGroup + - Removed Type Alias AdaptiveApplicationControlIssue + - Removed Type Alias AdaptiveNetworkHardening + - Removed Type Alias AdvancedThreatProtectionSetting + - Removed Type Alias Alert + - Removed Type Alias AlertNotifications + - Removed Type Alias AlertSimulatorBundlesRequestProperties + - Removed Type Alias AlertsSuppressionRule + - Removed Type Alias AlertsToAdmins + - Removed Type Alias AlertSyncSettings + - Removed Type Alias AllowedConnectionsResource + - Removed Type Alias AllowlistCustomAlertRule + - Removed Type Alias AllowlistCustomAlertRuleUnion + - Removed Type Alias AmqpC2DMessagesNotInAllowedRange + - Removed Type Alias AmqpC2DRejectedMessagesNotInAllowedRange + - Removed Type Alias AmqpD2CMessagesNotInAllowedRange + - Removed Type Alias AscLocation + - Removed Type Alias AtaExternalSecuritySolution + - Removed Type Alias AtaSolutionProperties + - Removed Type Alias AuthenticationDetailsPropertiesUnion + - Removed Type Alias AuthenticationProvisioningState + - Removed Type Alias Automation + - Removed Type Alias AutomationActionEventHub + - Removed Type Alias AutomationActionLogicApp + - Removed Type Alias AutomationActionWorkspace + - Removed Type Alias AutoProvisioningSetting + - Removed Type Alias AwAssumeRoleAuthenticationDetailsProperties + - Removed Type Alias AwsCredsAuthenticationDetailsProperties + - Removed Type Alias AzureResourceDetails + - Removed Type Alias AzureResourceIdentifier + - Removed Type Alias CefExternalSecuritySolution + - Removed Type Alias CefSolutionProperties + - Removed Type Alias Compliance + - Removed Type Alias ComplianceResult + - Removed Type Alias ConfigurationStatus + - Removed Type Alias ConnectionFromIpNotAllowed + - Removed Type Alias ConnectionToIpNotAllowed + - Removed Type Alias ConnectionType_2 + - Removed Type Alias ConnectorSetting + - Removed Type Alias ContainerRegistryVulnerabilityProperties + - Removed Type Alias CspmMonitorAwsOffering + - Removed Type Alias CustomAssessmentAutomation + - Removed Type Alias CustomAssessmentAutomationRequest + - Removed Type Alias CustomEntityStoreAssignment + - Removed Type Alias DataExportSettings + - Removed Type Alias DefenderForContainersAwsOffering + - Removed Type Alias DefenderForServersAwsOffering + - Removed Type Alias DenylistCustomAlertRule + - Removed Type Alias DeviceSecurityGroup + - Removed Type Alias Direction + - Removed Type Alias DirectMethodInvokesNotInAllowedRange + - Removed Type Alias DiscoveredSecuritySolution + - Removed Type Alias EndOfSupportStatus + - Removed Type Alias EnforcementMode + - Removed Type Alias EnforcementSupport + - Removed Type Alias ExternalSecuritySolution + - Removed Type Alias FailedLocalLoginsNotInAllowedRange + - Removed Type Alias FileType + - Removed Type Alias FileUploadsNotInAllowedRange + - Removed Type Alias GcpCredentialsDetailsProperties + - Removed Type Alias HttpC2DMessagesNotInAllowedRange + - Removed Type Alias HttpC2DRejectedMessagesNotInAllowedRange + - Removed Type Alias HttpD2CMessagesNotInAllowedRange + - Removed Type Alias HybridComputeProvisioningState + - Removed Type Alias InformationProtectionAwsOffering + - Removed Type Alias InformationProtectionPolicy + - Removed Type Alias IngestionSetting + - Removed Type Alias IoTSecurityAggregatedAlert + - Removed Type Alias IoTSecurityAggregatedRecommendation + - Removed Type Alias IoTSecuritySolutionAnalyticsModel + - Removed Type Alias IoTSecuritySolutionModel + - Removed Type Alias JitNetworkAccessPolicy + - Removed Type Alias ListCustomAlertRule + - Removed Type Alias LocalUserNotAllowed + - Removed Type Alias LogAnalyticsIdentifier + - Removed Type Alias MdeOnboardingData + - Removed Type Alias MqttC2DMessagesNotInAllowedRange + - Removed Type Alias MqttC2DRejectedMessagesNotInAllowedRange + - Removed Type Alias MqttD2CMessagesNotInAllowedRange + - Removed Type Alias OnPremiseResourceDetails + - Removed Type Alias OnPremiseSqlResourceDetails + - Removed Type Alias PermissionProperty + - Removed Type Alias Pricing + - Removed Type Alias ProcessNotAllowed + - Removed Type Alias QueuePurgesNotInAllowedRange + - Removed Type Alias RecommendationAction + - Removed Type Alias RecommendationStatus + - Removed Type Alias RegulatoryComplianceAssessment + - Removed Type Alias RegulatoryComplianceControl + - Removed Type Alias RegulatoryComplianceStandard + - Removed Type Alias RuleResults + - Removed Type Alias Scan + - Removed Type Alias ScanResult + - Removed Type Alias SecureScoreControlDefinitionItem + - Removed Type Alias SecureScoreControlDetails + - Removed Type Alias SecureScoreItem + - Removed Type Alias SecurityAssessment + - Removed Type Alias SecurityAssessmentMetadata + - Removed Type Alias SecurityAssessmentProperties + - Removed Type Alias SecurityConnector + - Removed Type Alias SecurityContact + - Removed Type Alias SecuritySolution + - Removed Type Alias SecuritySolutionsReferenceData + - Removed Type Alias SecuritySubAssessment + - Removed Type Alias SecurityTask + - Removed Type Alias ServerVulnerabilityAssessment + - Removed Type Alias ServerVulnerabilityProperties + - Removed Type Alias Setting + - Removed Type Alias Software + - Removed Type Alias SourceSystem + - Removed Type Alias SqlServerVulnerabilityProperties + - Removed Type Alias Status + - Removed Type Alias SupportedCloudEnum + - Removed Type Alias ThresholdCustomAlertRule + - Removed Type Alias TimeWindowCustomAlertRule + - Removed Type Alias TimeWindowCustomAlertRuleUnion + - Removed Type Alias TopologyResource + - Removed Type Alias TrackedResource + - Removed Type Alias TransportProtocol + - Removed Type Alias TwinUpdatesNotInAllowedRange + - Removed Type Alias UnauthorizedOperationsNotInAllowedRange + - Removed Type Alias UpdateIotSecuritySolutionData + - Removed Type Alias WorkspaceSetting + - Type alias "AdditionalDataUnion" has been changed + - Type alias "AlertSimulatorRequestPropertiesUnion" has been changed + - Type alias "AutomationActionUnion" has been changed + - Type alias "CloudOfferingUnion" has been changed + - Type alias "CustomAlertRuleUnion" has been changed + - Type alias "ListCustomAlertRuleUnion" has been changed + - Type alias "OnPremiseResourceDetailsUnion" has been changed + - Type alias "ResourceDetailsUnion" has been changed + - Type alias "ResourceIdentifierUnion" has been changed + - Type alias "ThresholdCustomAlertRuleUnion" has been changed + - Removed Enum KnownAdaptiveApplicationControlIssue + - Removed Enum KnownAlertNotifications + - Removed Enum KnownAlertsToAdmins + - Removed Enum KnownAuthenticationProvisioningState + - Removed Enum KnownConfigurationStatus + - Removed Enum KnownDirection + - Removed Enum KnownEndOfSupportStatus + - Removed Enum KnownEnforcementMode + - Removed Enum KnownEnforcementSupport + - Removed Enum KnownFileType + - Removed Enum KnownHybridComputeProvisioningState + - Removed Enum KnownPermissionProperty + - Removed Enum KnownRecommendationAction + - Removed Enum KnownRecommendationStatus + - Removed Enum KnownSourceSystem + - Removed Enum KnownSupportedCloudEnum + - Removed Enum KnownTransportProtocol + - Enum KnownAuthenticationType no longer has value AwsAssumeRole + - Enum KnownAuthenticationType no longer has value AwsCreds + - Enum KnownAuthenticationType no longer has value GcpCredentials + - Enum KnownOfferingType no longer has value InformationProtectionAws -### Bugs Fixed - -### Other Changes - -## 6.0.0-beta.6 (2025-08-22) - -### Other Changes - - - Other fixes - + ## 6.0.0-beta.5 (2024-05-16) Compared with version 5.0.0 diff --git a/sdk/security/arm-security/LICENSE b/sdk/security/arm-security/LICENSE index b2f52a2bad4e..63447fd8bbbf 100644 --- a/sdk/security/arm-security/LICENSE +++ b/sdk/security/arm-security/LICENSE @@ -18,4 +18,4 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. +SOFTWARE. \ No newline at end of file diff --git a/sdk/security/arm-security/README.md b/sdk/security/arm-security/README.md index d1dd6e6557a4..618367dc0a2b 100644 --- a/sdk/security/arm-security/README.md +++ b/sdk/security/arm-security/README.md @@ -2,12 +2,13 @@ This package contains an isomorphic SDK (runs both in Node.js and in browsers) for Azure SecurityCenter client. -API spec for Microsoft.Security (Azure Security Center) resource provider +API spec for Microsoft.Security (Azure Security Center) alerts resource provider -[Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security) | -[Package (NPM)](https://www.npmjs.com/package/@azure/arm-security) | -[API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-security?view=azure-node-preview) | -[Samples](https://github.com/Azure-Samples/azure-samples-js-management) +Key links: + +- [Source code](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security) +- [Package (NPM)](https://www.npmjs.com/package/@azure/arm-security) +- [API reference documentation](https://learn.microsoft.com/javascript/api/@azure/arm-security) ## Getting started @@ -35,7 +36,7 @@ npm install @azure/arm-security To create a client object to access the Azure SecurityCenter API, you will need the `endpoint` of your Azure SecurityCenter resource and a `credential`. The Azure SecurityCenter client can use Azure Active Directory credentials to authenticate. You can find the endpoint for your Azure SecurityCenter resource in the [Azure Portal][azure_portal]. -You can authenticate with Azure Active Directory using a credential from the [@azure/identity][azure_identity] library or [an existing AAD Token](https://github.com/Azure/azure-sdk-for-js/blob/master/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token). +You can authenticate with Azure Active Directory using a credential from the [@azure/identity][azure_identity] library or [an existing AAD Token](https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/identity/identity/samples/AzureIdentityExamples.md#authenticating-with-a-pre-fetched-access-token). To use the [DefaultAzureCredential][defaultazurecredential] provider shown below, or other credential providers provided with the Azure SDK, please install the `@azure/identity` package: @@ -44,7 +45,6 @@ npm install @azure/identity ``` You will also need to **register a new AAD application and grant access to Azure SecurityCenter** by assigning the suitable role to your service principal (note: roles such as `"Owner"` will not grant the necessary permissions). -Set the values of the client ID, tenant ID, and client secret of the AAD application as environment variables: `AZURE_CLIENT_ID`, `AZURE_TENANT_ID`, `AZURE_CLIENT_SECRET`. For more information about how to create an Azure AD Application check out [this guide](https://learn.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal). @@ -64,16 +64,16 @@ For browser environments, use the `InteractiveBrowserCredential` from the `@azur import { InteractiveBrowserCredential } from "@azure/identity"; import { SecurityCenter } from "@azure/arm-security"; -const subscriptionId = "00000000-0000-0000-0000-000000000000"; const credential = new InteractiveBrowserCredential({ tenantId: "", clientId: "", }); +const subscriptionId = "00000000-0000-0000-0000-000000000000"; const client = new SecurityCenter(credential, subscriptionId); ``` -### JavaScript Bundle +### JavaScript Bundle To use this client library in the browser, first you need to use a bundler. For details on how to do this, please refer to our [bundling documentation](https://aka.ms/AzureSDKBundling). ## Key concepts @@ -96,9 +96,6 @@ setLogLevel("info"); For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger). -## Next steps - -Please take a look at the [samples](https://github.com/Azure-Samples/azure-samples-js-management) directory for detailed examples on how to use this library. ## Contributing @@ -108,10 +105,6 @@ If you'd like to contribute to this library, please read the [contributing guide - [Microsoft Azure SDK for JavaScript](https://github.com/Azure/azure-sdk-for-js) - - -[azure_cli]: https://learn.microsoft.com/cli/azure -[azure_sub]: https://azure.microsoft.com/free/ [azure_sub]: https://azure.microsoft.com/free/ [azure_portal]: https://portal.azure.com [azure_identity]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity diff --git a/sdk/security/arm-security/_meta.json b/sdk/security/arm-security/_meta.json deleted file mode 100644 index 922a39a7437f..000000000000 --- a/sdk/security/arm-security/_meta.json +++ /dev/null @@ -1,8 +0,0 @@ -{ - "commit": "c43d0d41a6edc75a2cf452e33ea9344863db3c9e", - "readme": "specification/security/resource-manager/readme.md", - "autorest_command": "autorest --version=3.9.7 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=D:\\Git\\azure-sdk-for-js ..\\azure-rest-api-specs\\specification\\security\\resource-manager\\readme.md --use=@autorest/typescript@6.0.18 --generate-sample=true", - "repository_url": "https://github.com/Azure/azure-rest-api-specs.git", - "release_tool": "@azure-tools/js-sdk-release-tools@2.7.4", - "use": "@autorest/typescript@6.0.18" -} \ No newline at end of file diff --git a/sdk/security/arm-security/api-extractor.json b/sdk/security/arm-security/api-extractor.json index 16d81e2eb512..870d6d399477 100644 --- a/sdk/security/arm-security/api-extractor.json +++ b/sdk/security/arm-security/api-extractor.json @@ -1,3 +1 @@ -{ - "extends": "../../../api-extractor-base.json" -} +{ "extends": "../../../api-extractor-base.json" } diff --git a/sdk/security/arm-security/eslint.config.mjs b/sdk/security/arm-security/eslint.config.mjs new file mode 100644 index 000000000000..6d2f8a5914c3 --- /dev/null +++ b/sdk/security/arm-security/eslint.config.mjs @@ -0,0 +1,14 @@ +import azsdkEslint from "@azure/eslint-plugin-azure-sdk"; + +export default azsdkEslint.config([ + { + rules: { + "@azure/azure-sdk/ts-modules-only-named": "warn", + "@azure/azure-sdk/ts-package-json-types": "warn", + "@azure/azure-sdk/ts-package-json-engine-is-present": "warn", + "@azure/azure-sdk/ts-package-json-files-required": "off", + "@azure/azure-sdk/ts-package-json-main-is-cjs": "off", + "tsdoc/syntax": "warn", + }, + }, +]); diff --git a/sdk/security/arm-security/metadata.json b/sdk/security/arm-security/metadata.json new file mode 100644 index 000000000000..10a5a3c6617d --- /dev/null +++ b/sdk/security/arm-security/metadata.json @@ -0,0 +1,904 @@ +{ + "apiVersions": { + "AlertsAPI": "2022-01-01", + "AlertsSuppressionRulesAPI": "2019-01-01-preview", + "ApiCollectionsAPI": "2023-11-15", + "ApplicationsAPI": "2022-07-01-preview", + "AssessmentAPI": "2025-05-04", + "ATPSettingsAPI": "2019-01-01", + "AutomationsAPI": "2023-12-01-preview", + "ComplianceResultsAPI": "2017-08-01", + "DefenderForStorageAPI": "2025-09-01-preview", + "GovernanceAPI": "2022-01-01-preview", + "HealthReportsAPI": "2023-05-01-preview", + "IoTSecurityAPI": "2019-08-01", + "LegacySettingsAPI": "2017-08-01-preview", + "LocationsAPI": "2015-06-01-preview", + "MdeOnboardingAPI": "2021-10-01-preview", + "OperationsAPI": "2025-10-01-preview", + "PricingsAPI": "2024-01-01", + "PrivateLinksAPI": "2026-01-01", + "RegulatoryComplianceAPI": "2019-01-01-preview", + "SecureScoreAPI": "2020-01-01", + "SecurityConnectorsAPI": "2024-08-01-preview", + "SecurityConnectorsDevOpsAPI": "2025-11-01-preview", + "SecurityOperatorsAPI": "2023-01-01-preview", + "SecuritySolutionsAPI": "2020-01-01", + "SecurityStandardsAPI": "2024-08-01", + "SensitivitySettingsAPI": "2023-02-15-preview", + "ServerVulnerabilityAssessmentsSettingsAPI": "2023-05-01", + "SettingsAPI": "2022-05-01", + "SqlVulnerabilityAssessmentsAPI": "2026-04-01-preview", + "StandardsAPI": "2021-08-01-preview", + "SubAssessmentsAPI": "2019-01-01-preview", + "TasksAPI": "2015-06-01-preview" + }, + "emitterVersion": "0.52.3", + "crossLanguageDefinitions": { + "CrossLanguagePackageId": "AlertsAPI", + "CrossLanguageDefinitionId": { + "@azure/arm-security!Alert:interface": "AlertsAPI.Alert", + "@azure/arm-security!AlertProperties:interface": "AlertsAPI.AlertProperties", + "@azure/arm-security!ResourceIdentifier:interface": "AlertsAPI.ResourceIdentifier", + "@azure/arm-security!AzureResourceIdentifier:interface": "AlertsAPI.AzureResourceIdentifier", + "@azure/arm-security!LogAnalyticsIdentifier:interface": "AlertsAPI.LogAnalyticsIdentifier", + "@azure/arm-security!AlertEntity:interface": "AlertsAPI.AlertEntity", + "@azure/arm-security!AlertPropertiesSupportingEvidence:interface": "AlertsAPI.AlertPropertiesSupportingEvidence", + "@azure/arm-security!ProxyResource:interface": "Azure.ResourceManager.CommonTypes.ProxyResource", + "@azure/arm-security!Resource:interface": "Azure.ResourceManager.CommonTypes.Resource", + "@azure/arm-security!SystemData:interface": "Azure.ResourceManager.CommonTypes.SystemData", + "@azure/arm-security!CloudError:interface": "Common.CloudError", + "@azure/arm-security!CloudErrorBody:interface": "Common.CloudErrorBody", + "@azure/arm-security!ErrorAdditionalInfo:interface": "Azure.ResourceManager.CommonTypes.ErrorAdditionalInfo", + "@azure/arm-security!AlertList:interface": "AlertsAPI.AlertList", + "@azure/arm-security!ErrorResponse:interface": "Azure.ResourceManager.CommonTypes.ErrorResponse", + "@azure/arm-security!ErrorDetail:interface": "Azure.ResourceManager.CommonTypes.ErrorDetail", + "@azure/arm-security!AlertSimulatorRequestBody:interface": "AlertsAPI.AlertSimulatorRequestBody", + "@azure/arm-security!AlertSimulatorRequestProperties:interface": "AlertsAPI.AlertSimulatorRequestProperties", + "@azure/arm-security!AlertSimulatorBundlesRequestProperties:interface": "AlertsAPI.AlertSimulatorBundlesRequestProperties", + "@azure/arm-security!ArmOperationStatusResourceProvisioningState:interface": "Azure.ResourceManager.ArmOperationStatus", + "@azure/arm-security!AlertsSuppressionRule:interface": "AlertsSuppressionRulesAPI.AlertsSuppressionRule", + "@azure/arm-security!AlertsSuppressionRuleProperties:interface": "AlertsSuppressionRulesAPI.AlertsSuppressionRuleProperties", + "@azure/arm-security!SuppressionAlertsScope:interface": "AlertsSuppressionRulesAPI.SuppressionAlertsScope", + "@azure/arm-security!ScopeElement:interface": "AlertsSuppressionRulesAPI.ScopeElement", + "@azure/arm-security!AlertsSuppressionRulesList:interface": "AlertsSuppressionRulesAPI.AlertsSuppressionRulesList", + "@azure/arm-security!ApplicationsList:interface": "ApplicationsAPI.ApplicationsList", + "@azure/arm-security!Application:interface": "ApplicationsAPI.Application", + "@azure/arm-security!ApplicationProperties:interface": "ApplicationsAPI.ApplicationProperties", + "@azure/arm-security!SecurityAssessmentMetadataResponse:interface": "AssessmentAPI.SecurityAssessmentMetadataResponse", + "@azure/arm-security!SecurityAssessmentMetadataPropertiesResponse:interface": "AssessmentAPI.SecurityAssessmentMetadataPropertiesResponse", + "@azure/arm-security!SecurityAssessmentMetadataPropertiesResponsePublishDates:interface": "AssessmentAPI.SecurityAssessmentMetadataPropertiesResponsePublishDates", + "@azure/arm-security!SecurityAssessmentMetadataProperties:interface": "AssessmentAPI.SecurityAssessmentMetadataProperties", + "@azure/arm-security!SecurityAssessmentMetadataPartnerData:interface": "AssessmentAPI.SecurityAssessmentMetadataPartnerData", + "@azure/arm-security!SecurityAssessmentMetadataResponseList:interface": "AssessmentAPI.SecurityAssessmentMetadataResponseList", + "@azure/arm-security!Automation:interface": "AutomationsAPI.Automation", + "@azure/arm-security!AutomationProperties:interface": "AutomationsAPI.AutomationProperties", + "@azure/arm-security!AutomationScope:interface": "AutomationsAPI.AutomationScope", + "@azure/arm-security!AutomationSource:interface": "AutomationsAPI.AutomationSource", + "@azure/arm-security!AutomationRuleSet:interface": "AutomationsAPI.AutomationRuleSet", + "@azure/arm-security!AutomationTriggeringRule:interface": "AutomationsAPI.AutomationTriggeringRule", + "@azure/arm-security!AutomationAction:interface": "AutomationsAPI.AutomationAction", + "@azure/arm-security!AutomationActionLogicApp:interface": "AutomationsAPI.AutomationActionLogicApp", + "@azure/arm-security!AutomationActionEventHub:interface": "AutomationsAPI.AutomationActionEventHub", + "@azure/arm-security!AutomationActionWorkspace:interface": "AutomationsAPI.AutomationActionWorkspace", + "@azure/arm-security!AutomationUpdateModel:interface": "AutomationsAPI.AutomationUpdateModel", + "@azure/arm-security!Tags:interface": "Common.Tags", + "@azure/arm-security!AutomationList:interface": "AutomationsAPI.AutomationList", + "@azure/arm-security!AutomationValidationStatus:interface": "AutomationsAPI.AutomationValidationStatus", + "@azure/arm-security!SecurityContact:interface": "AutomationsAPI.SecurityContact", + "@azure/arm-security!SecurityContactProperties:interface": "AutomationsAPI.SecurityContactProperties", + "@azure/arm-security!NotificationsSource:interface": "AutomationsAPI.NotificationsSource", + "@azure/arm-security!NotificationsSourceAlert:interface": "AutomationsAPI.NotificationsSourceAlert", + "@azure/arm-security!NotificationsSourceAttackPath:interface": "AutomationsAPI.NotificationsSourceAttackPath", + "@azure/arm-security!SecurityContactPropertiesNotificationsByRole:interface": "AutomationsAPI.SecurityContactPropertiesNotificationsByRole", + "@azure/arm-security!SecurityContactList:interface": "AutomationsAPI.SecurityContactList", + "@azure/arm-security!ComplianceResult:interface": "ComplianceResultsAPI.ComplianceResult", + "@azure/arm-security!ComplianceResultProperties:interface": "ComplianceResultsAPI.ComplianceResultProperties", + "@azure/arm-security!ExtensionResource:interface": "Azure.ResourceManager.CommonTypes.ExtensionResource", + "@azure/arm-security!ComplianceResultList:interface": "ComplianceResultsAPI.ComplianceResultList", + "@azure/arm-security!GovernanceAssignment:interface": "GovernanceAPI.GovernanceAssignment", + "@azure/arm-security!GovernanceAssignmentProperties:interface": "GovernanceAPI.GovernanceAssignmentProperties", + "@azure/arm-security!RemediationEta:interface": "GovernanceAPI.RemediationEta", + "@azure/arm-security!GovernanceEmailNotification:interface": "GovernanceAPI.GovernanceEmailNotification", + "@azure/arm-security!GovernanceAssignmentAdditionalData:interface": "GovernanceAPI.GovernanceAssignmentAdditionalData", + "@azure/arm-security!GovernanceAssignmentsList:interface": "GovernanceAPI.GovernanceAssignmentsList", + "@azure/arm-security!GovernanceRule:interface": "GovernanceAPI.GovernanceRule", + "@azure/arm-security!GovernanceRuleProperties:interface": "GovernanceAPI.GovernanceRuleProperties", + "@azure/arm-security!GovernanceRuleOwnerSource:interface": "GovernanceAPI.GovernanceRuleOwnerSource", + "@azure/arm-security!GovernanceRuleEmailNotification:interface": "GovernanceAPI.GovernanceRuleEmailNotification", + "@azure/arm-security!GovernanceRuleMetadata:interface": "GovernanceAPI.GovernanceRuleMetadata", + "@azure/arm-security!GovernanceRuleList:interface": "GovernanceAPI.GovernanceRuleList", + "@azure/arm-security!ExecuteGovernanceRuleParams:interface": "GovernanceAPI.ExecuteGovernanceRuleParams", + "@azure/arm-security!OperationResult:interface": "GovernanceAPI.OperationResult", + "@azure/arm-security!HealthReport:interface": "HealthReportsAPI.HealthReport", + "@azure/arm-security!HealthReportProperties:interface": "HealthReportsAPI.HealthReportProperties", + "@azure/arm-security!resourceDetails:interface": "HealthReportsAPI.resourceDetails", + "@azure/arm-security!environmentDetails:interface": "HealthReportsAPI.environmentDetails", + "@azure/arm-security!healthDataClassification:interface": "HealthReportsAPI.healthDataClassification", + "@azure/arm-security!status:interface": "HealthReportsAPI.status", + "@azure/arm-security!issue:interface": "HealthReportsAPI.issue", + "@azure/arm-security!HealthReportsList:interface": "HealthReportsAPI.HealthReportsList", + "@azure/arm-security!DeviceSecurityGroup:interface": "IoTSecurityAPI.DeviceSecurityGroup", + "@azure/arm-security!DeviceSecurityGroupProperties:interface": "IoTSecurityAPI.DeviceSecurityGroupProperties", + "@azure/arm-security!ThresholdCustomAlertRule:interface": "IoTSecurityAPI.ThresholdCustomAlertRule", + "@azure/arm-security!CustomAlertRule:interface": "IoTSecurityAPI.CustomAlertRule", + "@azure/arm-security!TimeWindowCustomAlertRule:interface": "IoTSecurityAPI.TimeWindowCustomAlertRule", + "@azure/arm-security!AllowlistCustomAlertRule:interface": "IoTSecurityAPI.AllowlistCustomAlertRule", + "@azure/arm-security!ListCustomAlertRule:interface": "IoTSecurityAPI.ListCustomAlertRule", + "@azure/arm-security!DenylistCustomAlertRule:interface": "IoTSecurityAPI.DenylistCustomAlertRule", + "@azure/arm-security!DeviceSecurityGroupList:interface": "IoTSecurityAPI.DeviceSecurityGroupList", + "@azure/arm-security!AutoProvisioningSetting:interface": "LegacySettingsAPI.AutoProvisioningSetting", + "@azure/arm-security!AutoProvisioningSettingProperties:interface": "LegacySettingsAPI.AutoProvisioningSettingProperties", + "@azure/arm-security!AutoProvisioningSettingList:interface": "LegacySettingsAPI.AutoProvisioningSettingList", + "@azure/arm-security!Compliance:interface": "LegacySettingsAPI.Compliance", + "@azure/arm-security!ComplianceProperties:interface": "LegacySettingsAPI.ComplianceProperties", + "@azure/arm-security!ComplianceSegment:interface": "LegacySettingsAPI.ComplianceSegment", + "@azure/arm-security!ComplianceList:interface": "LegacySettingsAPI.ComplianceList", + "@azure/arm-security!InformationProtectionPolicy:interface": "LegacySettingsAPI.InformationProtectionPolicy", + "@azure/arm-security!InformationProtectionPolicyProperties:interface": "LegacySettingsAPI.InformationProtectionPolicyProperties", + "@azure/arm-security!SensitivityLabel:interface": "LegacySettingsAPI.SensitivityLabel", + "@azure/arm-security!InformationType:interface": "LegacySettingsAPI.InformationType", + "@azure/arm-security!InformationProtectionKeyword:interface": "LegacySettingsAPI.InformationProtectionKeyword", + "@azure/arm-security!InformationProtectionPolicyList:interface": "LegacySettingsAPI.InformationProtectionPolicyList", + "@azure/arm-security!WorkspaceSetting:interface": "LegacySettingsAPI.WorkspaceSetting", + "@azure/arm-security!WorkspaceSettingProperties:interface": "LegacySettingsAPI.WorkspaceSettingProperties", + "@azure/arm-security!WorkspaceSettingList:interface": "LegacySettingsAPI.WorkspaceSettingList", + "@azure/arm-security!MdeOnboardingData:interface": "MdeOnboardingAPI.MdeOnboardingData", + "@azure/arm-security!MdeOnboardingDataProperties:interface": "MdeOnboardingAPI.MdeOnboardingDataProperties", + "@azure/arm-security!MdeOnboardingDataList:interface": "MdeOnboardingAPI.MdeOnboardingDataList", + "@azure/arm-security!OperationListResult:interface": "Azure.ResourceManager.CommonTypes.OperationListResult", + "@azure/arm-security!Operation:interface": "Azure.ResourceManager.CommonTypes.Operation", + "@azure/arm-security!OperationDisplay:interface": "Azure.ResourceManager.CommonTypes.OperationDisplay", + "@azure/arm-security!Pricing:interface": "PricingsAPI.Pricing", + "@azure/arm-security!PricingProperties:interface": "PricingsAPI.PricingProperties", + "@azure/arm-security!Extension:interface": "PricingsAPI.Extension", + "@azure/arm-security!OperationStatus:interface": "Common.OperationStatus", + "@azure/arm-security!PricingList:interface": "PricingsAPI.PricingList", + "@azure/arm-security!private-link-parameters:interface": "SecurityManagementClient.private-link-parameters", + "@azure/arm-security!PrivateLinkGroupResource:interface": "PrivateLinksAPI.PrivateLinkGroupResource", + "@azure/arm-security!PrivateLinkResourceProperties:interface": "Azure.ResourceManager.CommonTypes.PrivateLinkResourceProperties", + "@azure/arm-security!PrivateLinkGroupResourceListResult:interface": "Azure.ResourceManager.ResourceListResult", + "@azure/arm-security!PrivateEndpointConnection:interface": "PrivateLinksAPI.PrivateEndpointConnection", + "@azure/arm-security!PrivateEndpointConnectionProperties:interface": "Azure.ResourceManager.CommonTypes.PrivateEndpointConnectionProperties", + "@azure/arm-security!PrivateEndpoint:interface": "Azure.ResourceManager.CommonTypes.PrivateEndpoint", + "@azure/arm-security!PrivateLinkServiceConnectionState:interface": "Azure.ResourceManager.CommonTypes.PrivateLinkServiceConnectionState", + "@azure/arm-security!ArmPrivateEndpointConnection:interface": "Azure.ResourceManager.CommonTypes.PrivateEndpointConnection", + "@azure/arm-security!PrivateEndpointConnectionListResult:interface": "Azure.ResourceManager.ResourceListResult", + "@azure/arm-security!RegulatoryComplianceStandard:interface": "RegulatoryComplianceAPI.RegulatoryComplianceStandard", + "@azure/arm-security!RegulatoryComplianceStandardProperties:interface": "RegulatoryComplianceAPI.RegulatoryComplianceStandardProperties", + "@azure/arm-security!RegulatoryComplianceStandardList:interface": "RegulatoryComplianceAPI.RegulatoryComplianceStandardList", + "@azure/arm-security!RegulatoryComplianceControl:interface": "RegulatoryComplianceAPI.RegulatoryComplianceControl", + "@azure/arm-security!RegulatoryComplianceControlProperties:interface": "RegulatoryComplianceAPI.RegulatoryComplianceControlProperties", + "@azure/arm-security!RegulatoryComplianceControlList:interface": "RegulatoryComplianceAPI.RegulatoryComplianceControlList", + "@azure/arm-security!RegulatoryComplianceAssessment:interface": "RegulatoryComplianceAPI.RegulatoryComplianceAssessment", + "@azure/arm-security!RegulatoryComplianceAssessmentProperties:interface": "RegulatoryComplianceAPI.RegulatoryComplianceAssessmentProperties", + "@azure/arm-security!RegulatoryComplianceAssessmentList:interface": "RegulatoryComplianceAPI.RegulatoryComplianceAssessmentList", + "@azure/arm-security!SecurityConnector:interface": "SecurityConnectorsAPI.SecurityConnector", + "@azure/arm-security!SecurityConnectorProperties:interface": "SecurityConnectorsAPI.SecurityConnectorProperties", + "@azure/arm-security!cloudOffering:interface": "SecurityConnectorsAPI.cloudOffering", + "@azure/arm-security!cspmMonitorAwsOffering:interface": "SecurityConnectorsAPI.cspmMonitorAwsOffering", + "@azure/arm-security!CspmMonitorAwsOfferingNativeCloudConnection:interface": "SecurityConnectorsAPI.CspmMonitorAwsOfferingNativeCloudConnection", + "@azure/arm-security!defenderForContainersAwsOffering:interface": "SecurityConnectorsAPI.defenderForContainersAwsOffering", + "@azure/arm-security!DefenderForContainersAwsOfferingKubernetesService:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKubernetesService", + "@azure/arm-security!DefenderForContainersAwsOfferingKubernetesDataCollection:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKubernetesDataCollection", + "@azure/arm-security!DefenderForContainersAwsOfferingCloudWatchToKinesis:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingCloudWatchToKinesis", + "@azure/arm-security!DefenderForContainersAwsOfferingKinesisToS3:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingKinesisToS3", + "@azure/arm-security!DefenderForContainersAwsOfferingMdcContainersImageAssessment:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingMdcContainersImageAssessment", + "@azure/arm-security!DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S:interface": "SecurityConnectorsAPI.DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S", + "@azure/arm-security!defenderForContainersAwsOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderForContainersAwsOfferingVmScanners", + "@azure/arm-security!vmScannersAws:interface": "SecurityConnectorsAPI.vmScannersAws", + "@azure/arm-security!vmScannersBase:interface": "SecurityConnectorsAPI.vmScannersBase", + "@azure/arm-security!VmScannersBaseConfiguration:interface": "SecurityConnectorsAPI.VmScannersBaseConfiguration", + "@azure/arm-security!defenderForServersAwsOffering:interface": "SecurityConnectorsAPI.defenderForServersAwsOffering", + "@azure/arm-security!DefenderForServersAwsOfferingDefenderForServers:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingDefenderForServers", + "@azure/arm-security!DefenderForServersAwsOfferingArcAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingArcAutoProvisioning", + "@azure/arm-security!arcAutoProvisioningAws:interface": "SecurityConnectorsAPI.arcAutoProvisioningAws", + "@azure/arm-security!arcAutoProvisioning:interface": "SecurityConnectorsAPI.arcAutoProvisioning", + "@azure/arm-security!ArcAutoProvisioningConfiguration:interface": "SecurityConnectorsAPI.ArcAutoProvisioningConfiguration", + "@azure/arm-security!DefenderForServersAwsOfferingVaAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingVaAutoProvisioning", + "@azure/arm-security!DefenderForServersAwsOfferingVaAutoProvisioningConfiguration:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingVaAutoProvisioningConfiguration", + "@azure/arm-security!DefenderForServersAwsOfferingMdeAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingMdeAutoProvisioning", + "@azure/arm-security!DefenderForServersAwsOfferingSubPlan:interface": "SecurityConnectorsAPI.DefenderForServersAwsOfferingSubPlan", + "@azure/arm-security!defenderForServersAwsOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderForServersAwsOfferingVmScanners", + "@azure/arm-security!defenderFoDatabasesAwsOffering:interface": "SecurityConnectorsAPI.defenderFoDatabasesAwsOffering", + "@azure/arm-security!DefenderFoDatabasesAwsOfferingArcAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingArcAutoProvisioning", + "@azure/arm-security!DefenderFoDatabasesAwsOfferingRds:interface": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingRds", + "@azure/arm-security!DefenderFoDatabasesAwsOfferingDatabasesDspm:interface": "SecurityConnectorsAPI.DefenderFoDatabasesAwsOfferingDatabasesDspm", + "@azure/arm-security!cspmMonitorGcpOffering:interface": "SecurityConnectorsAPI.cspmMonitorGcpOffering", + "@azure/arm-security!CspmMonitorGcpOfferingNativeCloudConnection:interface": "SecurityConnectorsAPI.CspmMonitorGcpOfferingNativeCloudConnection", + "@azure/arm-security!defenderForServersGcpOffering:interface": "SecurityConnectorsAPI.defenderForServersGcpOffering", + "@azure/arm-security!DefenderForServersGcpOfferingDefenderForServers:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingDefenderForServers", + "@azure/arm-security!DefenderForServersGcpOfferingArcAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingArcAutoProvisioning", + "@azure/arm-security!arcAutoProvisioningGcp:interface": "SecurityConnectorsAPI.arcAutoProvisioningGcp", + "@azure/arm-security!DefenderForServersGcpOfferingVaAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingVaAutoProvisioning", + "@azure/arm-security!DefenderForServersGcpOfferingVaAutoProvisioningConfiguration:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", + "@azure/arm-security!DefenderForServersGcpOfferingMdeAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingMdeAutoProvisioning", + "@azure/arm-security!DefenderForServersGcpOfferingSubPlan:interface": "SecurityConnectorsAPI.DefenderForServersGcpOfferingSubPlan", + "@azure/arm-security!defenderForServersGcpOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderForServersGcpOfferingVmScanners", + "@azure/arm-security!vmScannersGcp:interface": "SecurityConnectorsAPI.vmScannersGcp", + "@azure/arm-security!defenderForDatabasesGcpOffering:interface": "SecurityConnectorsAPI.defenderForDatabasesGcpOffering", + "@azure/arm-security!DefenderForDatabasesGcpOfferingArcAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForDatabasesGcpOfferingArcAutoProvisioning", + "@azure/arm-security!DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning:interface": "SecurityConnectorsAPI.DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning", + "@azure/arm-security!defenderForContainersGcpOffering:interface": "SecurityConnectorsAPI.defenderForContainersGcpOffering", + "@azure/arm-security!DefenderForContainersGcpOfferingNativeCloudConnection:interface": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingNativeCloudConnection", + "@azure/arm-security!DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection:interface": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection", + "@azure/arm-security!DefenderForContainersGcpOfferingMdcContainersImageAssessment:interface": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingMdcContainersImageAssessment", + "@azure/arm-security!DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S:interface": "SecurityConnectorsAPI.DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S", + "@azure/arm-security!defenderForContainersGcpOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderForContainersGcpOfferingVmScanners", + "@azure/arm-security!cspmMonitorGithubOffering:interface": "SecurityConnectorsAPI.cspmMonitorGithubOffering", + "@azure/arm-security!cspmMonitorAzureDevOpsOffering:interface": "SecurityConnectorsAPI.cspmMonitorAzureDevOpsOffering", + "@azure/arm-security!defenderCspmAwsOffering:interface": "SecurityConnectorsAPI.defenderCspmAwsOffering", + "@azure/arm-security!defenderCspmAwsOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderCspmAwsOfferingVmScanners", + "@azure/arm-security!DefenderCspmAwsOfferingDataSensitivityDiscovery:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingDataSensitivityDiscovery", + "@azure/arm-security!DefenderCspmAwsOfferingDatabasesDspm:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingDatabasesDspm", + "@azure/arm-security!DefenderCspmAwsOfferingCiem:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiem", + "@azure/arm-security!DefenderCspmAwsOfferingCiemDiscovery:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiemCiemDiscovery", + "@azure/arm-security!DefenderCspmAwsOfferingCiemOidc:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingCiemCiemOidc", + "@azure/arm-security!DefenderCspmAwsOfferingMdcContainersImageAssessment:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingMdcContainersImageAssessment", + "@azure/arm-security!DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S:interface": "SecurityConnectorsAPI.DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", + "@azure/arm-security!defenderCspmGcpOffering:interface": "SecurityConnectorsAPI.defenderCspmGcpOffering", + "@azure/arm-security!DefenderCspmGcpOfferingCiemDiscovery:interface": "SecurityConnectorsAPI.DefenderCspmGcpOfferingCiemDiscovery", + "@azure/arm-security!defenderCspmGcpOfferingVmScanners:interface": "SecurityConnectorsAPI.defenderCspmGcpOfferingVmScanners", + "@azure/arm-security!DefenderCspmGcpOfferingDataSensitivityDiscovery:interface": "SecurityConnectorsAPI.DefenderCspmGcpOfferingDataSensitivityDiscovery", + "@azure/arm-security!DefenderCspmGcpOfferingMdcContainersImageAssessment:interface": "SecurityConnectorsAPI.DefenderCspmGcpOfferingMdcContainersImageAssessment", + "@azure/arm-security!DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S:interface": "SecurityConnectorsAPI.DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S", + "@azure/arm-security!cspmMonitorGitLabOffering:interface": "SecurityConnectorsAPI.cspmMonitorGitLabOffering", + "@azure/arm-security!cspmMonitorDockerHubOffering:interface": "SecurityConnectorsAPI.cspmMonitorDockerHubOffering", + "@azure/arm-security!defenderForContainersDockerHubOffering:interface": "SecurityConnectorsAPI.defenderForContainersDockerHubOffering", + "@azure/arm-security!defenderCspmDockerHubOffering:interface": "SecurityConnectorsAPI.defenderCspmDockerHubOffering", + "@azure/arm-security!cspmMonitorJFrogOffering:interface": "SecurityConnectorsAPI.cspmMonitorJFrogOffering", + "@azure/arm-security!defenderForContainersJFrogOffering:interface": "SecurityConnectorsAPI.defenderForContainersJFrogOffering", + "@azure/arm-security!defenderCspmJFrogOffering:interface": "SecurityConnectorsAPI.defenderCspmJFrogOffering", + "@azure/arm-security!DefenderCspmJFrogOfferingMdcContainersImageAssessment:interface": "SecurityConnectorsAPI.DefenderCspmJFrogOfferingMdcContainersImageAssessment", + "@azure/arm-security!EnvironmentData:interface": "SecurityConnectorsAPI.EnvironmentData", + "@azure/arm-security!AwsEnvironmentData:interface": "SecurityConnectorsAPI.AwsEnvironmentData", + "@azure/arm-security!AwsOrganizationalData:interface": "SecurityConnectorsAPI.AwsOrganizationalData", + "@azure/arm-security!AwsOrganizationalDataMaster:interface": "SecurityConnectorsAPI.AwsOrganizationalDataMaster", + "@azure/arm-security!AwsOrganizationalDataMember:interface": "SecurityConnectorsAPI.AwsOrganizationalDataMember", + "@azure/arm-security!GcpProjectEnvironmentData:interface": "SecurityConnectorsAPI.GcpProjectEnvironmentData", + "@azure/arm-security!GcpOrganizationalData:interface": "SecurityConnectorsAPI.GcpOrganizationalData", + "@azure/arm-security!GcpOrganizationalDataOrganization:interface": "SecurityConnectorsAPI.GcpOrganizationalDataOrganization", + "@azure/arm-security!GcpOrganizationalDataMember:interface": "SecurityConnectorsAPI.GcpOrganizationalDataMember", + "@azure/arm-security!GcpProjectDetails:interface": "SecurityConnectorsAPI.GcpProjectDetails", + "@azure/arm-security!GithubScopeEnvironmentData:interface": "SecurityConnectorsAPI.GithubScopeEnvironmentData", + "@azure/arm-security!AzureDevOpsScopeEnvironmentData:interface": "SecurityConnectorsAPI.AzureDevOpsScopeEnvironmentData", + "@azure/arm-security!GitlabScopeEnvironmentData:interface": "SecurityConnectorsAPI.GitlabScopeEnvironmentData", + "@azure/arm-security!DockerHubEnvironmentData:interface": "SecurityConnectorsAPI.DockerHubEnvironmentData", + "@azure/arm-security!Authentication:interface": "SecurityConnectorsAPI.Authentication", + "@azure/arm-security!AccessTokenAuthentication:interface": "SecurityConnectorsAPI.AccessTokenAuthentication", + "@azure/arm-security!JFrogEnvironmentData:interface": "SecurityConnectorsAPI.JFrogEnvironmentData", + "@azure/arm-security!SecurityConnectorsList:interface": "SecurityConnectorsAPI.SecurityConnectorsList", + "@azure/arm-security!AzureDevOpsOrg:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrg", + "@azure/arm-security!AzureDevOpsOrgProperties:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgProperties", + "@azure/arm-security!ActionableRemediation:interface": "SecurityConnectorsDevOpsAPI.ActionableRemediation", + "@azure/arm-security!CategoryConfiguration:interface": "SecurityConnectorsDevOpsAPI.CategoryConfiguration", + "@azure/arm-security!TargetBranchConfiguration:interface": "SecurityConnectorsDevOpsAPI.TargetBranchConfiguration", + "@azure/arm-security!AzureDevOpsOrgListResponse:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgListResponse", + "@azure/arm-security!GitHubOwner:interface": "SecurityConnectorsDevOpsAPI.GitHubOwner", + "@azure/arm-security!GitHubOwnerProperties:interface": "SecurityConnectorsDevOpsAPI.GitHubOwnerProperties", + "@azure/arm-security!GitHubOwnerListResponse:interface": "SecurityConnectorsDevOpsAPI.GitHubOwnerListResponse", + "@azure/arm-security!GitLabGroup:interface": "SecurityConnectorsDevOpsAPI.GitLabGroup", + "@azure/arm-security!GitLabGroupProperties:interface": "SecurityConnectorsDevOpsAPI.GitLabGroupProperties", + "@azure/arm-security!GitLabGroupListResponse:interface": "SecurityConnectorsDevOpsAPI.GitLabGroupListResponse", + "@azure/arm-security!DevOpsConfiguration:interface": "SecurityConnectorsDevOpsAPI.DevOpsConfiguration", + "@azure/arm-security!DevOpsConfigurationProperties:interface": "SecurityConnectorsDevOpsAPI.DevOpsConfigurationProperties", + "@azure/arm-security!Authorization:interface": "SecurityConnectorsDevOpsAPI.Authorization", + "@azure/arm-security!DevOpsCapability:interface": "SecurityConnectorsDevOpsAPI.DevOpsCapability", + "@azure/arm-security!AgentlessConfiguration:interface": "SecurityConnectorsDevOpsAPI.AgentlessConfiguration", + "@azure/arm-security!InventoryList:interface": "SecurityConnectorsDevOpsAPI.InventoryList", + "@azure/arm-security!DevOpsConfigurationListResponse:interface": "SecurityConnectorsDevOpsAPI.DevOpsConfigurationListResponse", + "@azure/arm-security!AzureDevOpsProject:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsProject", + "@azure/arm-security!AzureDevOpsProjectProperties:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjectProperties", + "@azure/arm-security!AzureDevOpsProjectListResponse:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjectListResponse", + "@azure/arm-security!GitLabProject:interface": "SecurityConnectorsDevOpsAPI.GitLabProject", + "@azure/arm-security!GitLabProjectProperties:interface": "SecurityConnectorsDevOpsAPI.GitLabProjectProperties", + "@azure/arm-security!GitLabProjectListResponse:interface": "SecurityConnectorsDevOpsAPI.GitLabProjectListResponse", + "@azure/arm-security!SecurityOperator:interface": "SecurityOperatorsAPI.SecurityOperator", + "@azure/arm-security!Identity:interface": "Azure.ResourceManager.CommonTypes.Identity", + "@azure/arm-security!SecurityOperatorList:interface": "SecurityOperatorsAPI.SecurityOperatorList", + "@azure/arm-security!DiscoveredSecuritySolution:interface": "SecuritySolutionsAPI.DiscoveredSecuritySolution", + "@azure/arm-security!DiscoveredSecuritySolutionProperties:interface": "SecuritySolutionsAPI.DiscoveredSecuritySolutionProperties", + "@azure/arm-security!DiscoveredSecuritySolutionList:interface": "SecuritySolutionsAPI.DiscoveredSecuritySolutionList", + "@azure/arm-security!ExternalSecuritySolution:interface": "SecuritySolutionsAPI.ExternalSecuritySolution", + "@azure/arm-security!CefExternalSecuritySolution:interface": "SecuritySolutionsAPI.CefExternalSecuritySolution", + "@azure/arm-security!CefSolutionProperties:interface": "SecuritySolutionsAPI.CefSolutionProperties", + "@azure/arm-security!ExternalSecuritySolutionProperties:interface": "SecuritySolutionsAPI.ExternalSecuritySolutionProperties", + "@azure/arm-security!ConnectedWorkspace:interface": "SecuritySolutionsAPI.ConnectedWorkspace", + "@azure/arm-security!AtaExternalSecuritySolution:interface": "SecuritySolutionsAPI.AtaExternalSecuritySolution", + "@azure/arm-security!AtaSolutionProperties:interface": "SecuritySolutionsAPI.AtaSolutionProperties", + "@azure/arm-security!AadExternalSecuritySolution:interface": "SecuritySolutionsAPI.AadExternalSecuritySolution", + "@azure/arm-security!AadSolutionProperties:interface": "SecuritySolutionsAPI.AadSolutionProperties", + "@azure/arm-security!ExternalSecuritySolutionList:interface": "SecuritySolutionsAPI.ExternalSecuritySolutionList", + "@azure/arm-security!JitNetworkAccessPolicy:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicy", + "@azure/arm-security!JitNetworkAccessPolicyProperties:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicyProperties", + "@azure/arm-security!JitNetworkAccessPolicyVirtualMachine:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicyVirtualMachine", + "@azure/arm-security!JitNetworkAccessPortRule:interface": "SecuritySolutionsAPI.JitNetworkAccessPortRule", + "@azure/arm-security!JitNetworkAccessRequest:interface": "SecuritySolutionsAPI.JitNetworkAccessRequest", + "@azure/arm-security!JitNetworkAccessRequestVirtualMachine:interface": "SecuritySolutionsAPI.JitNetworkAccessRequestVirtualMachine", + "@azure/arm-security!JitNetworkAccessRequestPort:interface": "SecuritySolutionsAPI.JitNetworkAccessRequestPort", + "@azure/arm-security!JitNetworkAccessPoliciesList:interface": "SecuritySolutionsAPI.JitNetworkAccessPoliciesList", + "@azure/arm-security!JitNetworkAccessPolicyInitiateRequest:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiateRequest", + "@azure/arm-security!JitNetworkAccessPolicyInitiateVirtualMachine:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiateVirtualMachine", + "@azure/arm-security!JitNetworkAccessPolicyInitiatePort:interface": "SecuritySolutionsAPI.JitNetworkAccessPolicyInitiatePort", + "@azure/arm-security!SecuritySolution:interface": "SecuritySolutionsAPI.SecuritySolution", + "@azure/arm-security!SecuritySolutionProperties:interface": "SecuritySolutionsAPI.SecuritySolutionProperties", + "@azure/arm-security!SecuritySolutionList:interface": "SecuritySolutionsAPI.SecuritySolutionList", + "@azure/arm-security!SecurityStandard:interface": "SecurityStandardsAPI.SecurityStandard", + "@azure/arm-security!SecurityStandardProperties:interface": "SecurityStandardsAPI.SecurityStandardProperties", + "@azure/arm-security!PartialAssessmentProperties:interface": "SecurityStandardsAPI.PartialAssessmentProperties", + "@azure/arm-security!StandardMetadata:interface": "SecurityStandardsAPI.StandardMetadata", + "@azure/arm-security!SecurityStandardList:interface": "SecurityStandardsAPI.SecurityStandardList", + "@azure/arm-security!StandardAssignment:interface": "SecurityStandardsAPI.StandardAssignment", + "@azure/arm-security!StandardAssignmentProperties:interface": "SecurityStandardsAPI.StandardAssignmentProperties", + "@azure/arm-security!AssignedStandardItem:interface": "Common.AssignedStandardItem", + "@azure/arm-security!StandardAssignmentPropertiesExemptionData:interface": "SecurityStandardsAPI.StandardAssignmentPropertiesExemptionData", + "@azure/arm-security!AssignedAssessmentItem:interface": "SecurityStandardsAPI.AssignedAssessmentItem", + "@azure/arm-security!StandardAssignmentPropertiesAttestationData:interface": "SecurityStandardsAPI.StandardAssignmentPropertiesAttestationData", + "@azure/arm-security!AttestationEvidence:interface": "SecurityStandardsAPI.AttestationEvidence", + "@azure/arm-security!StandardAssignmentMetadata:interface": "SecurityStandardsAPI.StandardAssignmentMetadata", + "@azure/arm-security!StandardAssignmentsList:interface": "SecurityStandardsAPI.StandardAssignmentsList", + "@azure/arm-security!CustomRecommendation:interface": "SecurityStandardsAPI.CustomRecommendation", + "@azure/arm-security!CustomRecommendationProperties:interface": "SecurityStandardsAPI.CustomRecommendationProperties", + "@azure/arm-security!CustomRecommendationsList:interface": "SecurityStandardsAPI.CustomRecommendationsList", + "@azure/arm-security!ServerVulnerabilityAssessmentsSetting:interface": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSetting", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingProperties:interface": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSetting.properties.anonymous", + "@azure/arm-security!AzureServersSetting:interface": "ServerVulnerabilityAssessmentsSettingsAPI.AzureServersSetting", + "@azure/arm-security!ServerVulnerabilityAssessmentsAzureSettingProperties:interface": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsAzureSettingProperties", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingsList:interface": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettingsList", + "@azure/arm-security!Setting:interface": "SettingsAPI.Setting", + "@azure/arm-security!SettingProperties:interface": "SettingsAPI.Setting.properties.anonymous", + "@azure/arm-security!DataExportSettings:interface": "SettingsAPI.DataExportSettings", + "@azure/arm-security!DataExportSettingProperties:interface": "SettingsAPI.DataExportSettingProperties", + "@azure/arm-security!AlertSyncSettings:interface": "SettingsAPI.AlertSyncSettings", + "@azure/arm-security!AlertSyncSettingProperties:interface": "SettingsAPI.AlertSyncSettingProperties", + "@azure/arm-security!SettingsList:interface": "SettingsAPI.SettingsList", + "@azure/arm-security!RuleResults:interface": "SqlVulnerabilityAssessmentsAPI.RuleResults", + "@azure/arm-security!RuleResultsProperties:interface": "SqlVulnerabilityAssessmentsAPI.RuleResultsProperties", + "@azure/arm-security!RuleResultsInput:interface": "SqlVulnerabilityAssessmentsAPI.RuleResultsInput", + "@azure/arm-security!RulesResults:interface": "SqlVulnerabilityAssessmentsAPI.RulesResults", + "@azure/arm-security!RulesResultsInput:interface": "SqlVulnerabilityAssessmentsAPI.RulesResultsInput", + "@azure/arm-security!ScanResult:interface": "SqlVulnerabilityAssessmentsAPI.ScanResult", + "@azure/arm-security!ScanResultProperties:interface": "SqlVulnerabilityAssessmentsAPI.ScanResultProperties", + "@azure/arm-security!Remediation:interface": "SqlVulnerabilityAssessmentsAPI.Remediation", + "@azure/arm-security!BaselineAdjustedResult:interface": "SqlVulnerabilityAssessmentsAPI.BaselineAdjustedResult", + "@azure/arm-security!Baseline:interface": "SqlVulnerabilityAssessmentsAPI.Baseline", + "@azure/arm-security!VaRule:interface": "SqlVulnerabilityAssessmentsAPI.VaRule", + "@azure/arm-security!QueryCheck:interface": "SqlVulnerabilityAssessmentsAPI.QueryCheck", + "@azure/arm-security!BenchmarkReference:interface": "SqlVulnerabilityAssessmentsAPI.BenchmarkReference", + "@azure/arm-security!ScanResults:interface": "SqlVulnerabilityAssessmentsAPI.ScanResults", + "@azure/arm-security!Standard:interface": "StandardsAPI.Standard", + "@azure/arm-security!StandardProperties:interface": "StandardsAPI.StandardProperties", + "@azure/arm-security!StandardComponentProperties:interface": "StandardsAPI.StandardComponentProperties", + "@azure/arm-security!StandardList:interface": "StandardsAPI.StandardList", + "@azure/arm-security!Assignment:interface": "StandardsAPI.Assignment", + "@azure/arm-security!AssignmentProperties:interface": "StandardsAPI.AssignmentProperties", + "@azure/arm-security!AssignedComponentItem:interface": "StandardsAPI.AssignedComponentItem", + "@azure/arm-security!AssignmentPropertiesAdditionalData:interface": "StandardsAPI.AssignmentPropertiesAdditionalData", + "@azure/arm-security!AssignmentList:interface": "StandardsAPI.AssignmentList", + "@azure/arm-security!SecurityTask:interface": "TasksAPI.SecurityTask", + "@azure/arm-security!SecurityTaskProperties:interface": "TasksAPI.SecurityTaskProperties", + "@azure/arm-security!SecurityTaskParameters:interface": "TasksAPI.SecurityTaskParameters", + "@azure/arm-security!SecurityTaskList:interface": "TasksAPI.SecurityTaskList", + "@azure/arm-security!ApiCollection:interface": "ApiCollectionsAPI.ApiCollection", + "@azure/arm-security!ApiCollectionProperties:interface": "ApiCollectionsAPI.ApiCollectionProperties", + "@azure/arm-security!ApiCollectionList:interface": "ApiCollectionsAPI.ApiCollectionList", + "@azure/arm-security!SecurityAssessmentResponse:interface": "AssessmentAPI.SecurityAssessmentResponse", + "@azure/arm-security!SecurityAssessmentPropertiesResponse:interface": "AssessmentAPI.SecurityAssessmentPropertiesResponse", + "@azure/arm-security!AssessmentStatusResponse:interface": "AssessmentAPI.AssessmentStatusResponse", + "@azure/arm-security!AssessmentStatus:interface": "AssessmentAPI.AssessmentStatus", + "@azure/arm-security!SecurityAssessmentPropertiesBase:interface": "AssessmentAPI.SecurityAssessmentPropertiesBase", + "@azure/arm-security!SecurityAssessmentPropertiesBaseRisk:interface": "AssessmentAPI.SecurityAssessmentPropertiesBaseRisk", + "@azure/arm-security!SecurityAssessmentPropertiesBaseRiskPathsItem:interface": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItem", + "@azure/arm-security!SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem:interface": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem", + "@azure/arm-security!SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem:interface": "AssessmentAPI.SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem", + "@azure/arm-security!ResourceDetails:interface": "Common.ResourceDetails", + "@azure/arm-security!AzureResourceDetails:interface": "AssessmentAPI.AzureResourceDetails", + "@azure/arm-security!OnPremiseResourceDetails:interface": "AssessmentAPI.OnPremiseResourceDetails", + "@azure/arm-security!OnPremiseSqlResourceDetails:interface": "AssessmentAPI.OnPremiseSqlResourceDetails", + "@azure/arm-security!AssessmentLinks:interface": "AssessmentAPI.AssessmentLinks", + "@azure/arm-security!SecurityAssessmentPartnerData:interface": "AssessmentAPI.SecurityAssessmentPartnerData", + "@azure/arm-security!SecurityAssessment:interface": "AssessmentAPI.SecurityAssessment", + "@azure/arm-security!SecurityAssessmentProperties:interface": "AssessmentAPI.SecurityAssessmentProperties", + "@azure/arm-security!SecurityAssessmentList:interface": "AssessmentAPI.SecurityAssessmentList", + "@azure/arm-security!AdvancedThreatProtectionSetting:interface": "ATPSettingsAPI.AdvancedThreatProtectionSetting", + "@azure/arm-security!AdvancedThreatProtectionProperties:interface": "ATPSettingsAPI.AdvancedThreatProtectionProperties", + "@azure/arm-security!DefenderForStorageSetting:interface": "DefenderForStorageAPI.DefenderForStorageSetting", + "@azure/arm-security!DefenderForStorageSettingProperties:interface": "DefenderForStorageAPI.DefenderForStorageSettingProperties", + "@azure/arm-security!MalwareScanningProperties:interface": "DefenderForStorageAPI.MalwareScanningProperties", + "@azure/arm-security!OnUploadProperties:interface": "DefenderForStorageAPI.OnUploadProperties", + "@azure/arm-security!OnUploadFilters:interface": "DefenderForStorageAPI.OnUploadFilters", + "@azure/arm-security!SensitiveDataDiscoveryProperties:interface": "DefenderForStorageAPI.SensitiveDataDiscoveryProperties", + "@azure/arm-security!DefenderForStorageSettingList:interface": "DefenderForStorageAPI.DefenderForStorageSettingList", + "@azure/arm-security!MalwareScan:interface": "DefenderForStorageAPI.MalwareScan", + "@azure/arm-security!MalwareScanProperties:interface": "DefenderForStorageAPI.MalwareScanProperties", + "@azure/arm-security!ScanSummary:interface": "DefenderForStorageAPI.ScanSummary", + "@azure/arm-security!BlobsScanSummary:interface": "DefenderForStorageAPI.BlobsScanSummary", + "@azure/arm-security!FilesScanSummary:interface": "DefenderForStorageAPI.FilesScanSummary", + "@azure/arm-security!IoTSecuritySolutionAnalyticsModel:interface": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModel", + "@azure/arm-security!IoTSecuritySolutionAnalyticsModelProperties:interface": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelProperties", + "@azure/arm-security!IoTSeverityMetrics:interface": "IoTSecurityAPI.IoTSeverityMetrics", + "@azure/arm-security!IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem:interface": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem", + "@azure/arm-security!IoTSecurityAlertedDevice:interface": "IoTSecurityAPI.IoTSecurityAlertedDevice", + "@azure/arm-security!IoTSecurityDeviceAlert:interface": "IoTSecurityAPI.IoTSecurityDeviceAlert", + "@azure/arm-security!IoTSecurityDeviceRecommendation:interface": "IoTSecurityAPI.IoTSecurityDeviceRecommendation", + "@azure/arm-security!IoTSecuritySolutionAnalyticsModelList:interface": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModelList", + "@azure/arm-security!IoTSecuritySolutionModel:interface": "IoTSecurityAPI.IoTSecuritySolutionModel", + "@azure/arm-security!IoTSecuritySolutionProperties:interface": "IoTSecurityAPI.IoTSecuritySolutionProperties", + "@azure/arm-security!UserDefinedResourcesProperties:interface": "IoTSecurityAPI.UserDefinedResourcesProperties", + "@azure/arm-security!RecommendationConfigurationProperties:interface": "IoTSecurityAPI.RecommendationConfigurationProperties", + "@azure/arm-security!AdditionalWorkspacesProperties:interface": "IoTSecurityAPI.AdditionalWorkspacesProperties", + "@azure/arm-security!UpdateIotSecuritySolutionData:interface": "IoTSecurityAPI.UpdateIotSecuritySolutionData", + "@azure/arm-security!UpdateIoTSecuritySolutionProperties:interface": "IoTSecurityAPI.UpdateIoTSecuritySolutionProperties", + "@azure/arm-security!TagsResource:interface": "IoTSecurityAPI.TagsResource", + "@azure/arm-security!IoTSecuritySolutionsList:interface": "IoTSecurityAPI.IoTSecuritySolutionsList", + "@azure/arm-security!IoTSecurityAggregatedAlert:interface": "IoTSecurityAPI.IoTSecurityAggregatedAlert", + "@azure/arm-security!IoTSecurityAggregatedAlertProperties:interface": "IoTSecurityAPI.IoTSecurityAggregatedAlertProperties", + "@azure/arm-security!IoTSecurityAggregatedAlertPropertiesTopDevicesListItem:interface": "IoTSecurityAPI.IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", + "@azure/arm-security!IoTSecurityAggregatedAlertList:interface": "IoTSecurityAPI.IoTSecurityAggregatedAlertList", + "@azure/arm-security!IoTSecurityAggregatedRecommendation:interface": "IoTSecurityAPI.IoTSecurityAggregatedRecommendation", + "@azure/arm-security!IoTSecurityAggregatedRecommendationProperties:interface": "IoTSecurityAPI.IoTSecurityAggregatedRecommendationProperties", + "@azure/arm-security!IoTSecurityAggregatedRecommendationList:interface": "IoTSecurityAPI.IoTSecurityAggregatedRecommendationList", + "@azure/arm-security!AscLocation:interface": "LocationsAPI.AscLocation", + "@azure/arm-security!AscLocationList:interface": "LocationsAPI.AscLocationList", + "@azure/arm-security!OperationStatusResult:interface": "Azure.ResourceManager.CommonTypes.OperationStatusResult", + "@azure/arm-security!PrivateLinkResource:interface": "PrivateLinksAPI.PrivateLinkResource", + "@azure/arm-security!PrivateLinkProperties:interface": "PrivateLinksAPI.PrivateLinkProperties", + "@azure/arm-security!TrackedResource:interface": "Azure.ResourceManager.CommonTypes.TrackedResource", + "@azure/arm-security!PrivateLinkUpdate:interface": "PrivateLinksAPI.PrivateLinkUpdate", + "@azure/arm-security!PrivateLinksList:interface": "PrivateLinksAPI.PrivateLinksList", + "@azure/arm-security!SecureScoreItem:interface": "SecureScoreAPI.SecureScoreItem", + "@azure/arm-security!SecureScoreItemProperties:interface": "SecureScoreAPI.SecureScoreItemProperties", + "@azure/arm-security!ScoreDetails:interface": "SecureScoreAPI.ScoreDetails", + "@azure/arm-security!SecureScoresList:interface": "SecureScoreAPI.SecureScoresList", + "@azure/arm-security!SecureScoreControlList:interface": "SecureScoreAPI.SecureScoreControlList", + "@azure/arm-security!SecureScoreControlDetails:interface": "SecureScoreAPI.SecureScoreControlDetails", + "@azure/arm-security!SecureScoreControlScoreDetails:interface": "SecureScoreAPI.SecureScoreControlScoreDetails", + "@azure/arm-security!SecureScoreControlDefinitionItem:interface": "SecureScoreAPI.SecureScoreControlDefinitionItem", + "@azure/arm-security!SecureScoreControlDefinitionItemProperties:interface": "SecureScoreAPI.SecureScoreControlDefinitionItemProperties", + "@azure/arm-security!SecureScoreControlDefinitionSource:interface": "SecureScoreAPI.SecureScoreControlDefinitionSource", + "@azure/arm-security!AzureResourceLink:interface": "SecureScoreAPI.AzureResourceLink", + "@azure/arm-security!secureScoreControlDefinitionList:interface": "SecureScoreAPI.secureScoreControlDefinitionList", + "@azure/arm-security!AzureDevOpsRepository:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepository", + "@azure/arm-security!AzureDevOpsRepositoryProperties:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositoryProperties", + "@azure/arm-security!AzureDevOpsRepositoryListResponse:interface": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositoryListResponse", + "@azure/arm-security!GitHubRepository:interface": "SecurityConnectorsDevOpsAPI.GitHubRepository", + "@azure/arm-security!GitHubRepositoryProperties:interface": "SecurityConnectorsDevOpsAPI.GitHubRepositoryProperties", + "@azure/arm-security!GitHubRepositoryListResponse:interface": "SecurityConnectorsDevOpsAPI.GitHubRepositoryListResponse", + "@azure/arm-security!IssueCreationRequest:interface": "SecurityConnectorsDevOpsAPI.IssueCreationRequest", + "@azure/arm-security!AllowedConnectionsResource:interface": "SecuritySolutionsAPI.AllowedConnectionsResource", + "@azure/arm-security!AllowedConnectionsResourceProperties:interface": "SecuritySolutionsAPI.AllowedConnectionsResourceProperties", + "@azure/arm-security!ConnectableResource:interface": "SecuritySolutionsAPI.ConnectableResource", + "@azure/arm-security!ConnectedResource:interface": "SecuritySolutionsAPI.ConnectedResource", + "@azure/arm-security!AllowedConnectionsList:interface": "SecuritySolutionsAPI.AllowedConnectionsList", + "@azure/arm-security!ServerVulnerabilityAssessment:interface": "SecuritySolutionsAPI.ServerVulnerabilityAssessment", + "@azure/arm-security!ServerVulnerabilityAssessmentProperties:interface": "SecuritySolutionsAPI.ServerVulnerabilityAssessmentProperties", + "@azure/arm-security!ServerVulnerabilityAssessmentsList:interface": "SecuritySolutionsAPI.ServerVulnerabilityAssessmentsList", + "@azure/arm-security!TopologyResource:interface": "SecuritySolutionsAPI.TopologyResource", + "@azure/arm-security!TopologyResourceProperties:interface": "SecuritySolutionsAPI.TopologyResourceProperties", + "@azure/arm-security!TopologySingleResource:interface": "SecuritySolutionsAPI.TopologySingleResource", + "@azure/arm-security!TopologySingleResourceParent:interface": "SecuritySolutionsAPI.TopologySingleResourceParent", + "@azure/arm-security!TopologySingleResourceChild:interface": "SecuritySolutionsAPI.TopologySingleResourceChild", + "@azure/arm-security!TopologyList:interface": "SecuritySolutionsAPI.TopologyList", + "@azure/arm-security!securitySolutionsReferenceDataList:interface": "SecuritySolutionsAPI.securitySolutionsReferenceDataList", + "@azure/arm-security!securitySolutionsReferenceData:interface": "SecuritySolutionsAPI.securitySolutionsReferenceData", + "@azure/arm-security!securitySolutionsReferenceDataProperties:interface": "SecuritySolutionsAPI.securitySolutionsReferenceDataProperties", + "@azure/arm-security!GetSensitivitySettingsResponse:interface": "SensitivitySettingsAPI.GetSensitivitySettingsResponse", + "@azure/arm-security!GetSensitivitySettingsResponseProperties:interface": "SensitivitySettingsAPI.GetSensitivitySettingsResponseProperties", + "@azure/arm-security!GetSensitivitySettingsResponsePropertiesMipInformation:interface": "SensitivitySettingsAPI.GetSensitivitySettingsResponsePropertiesMipInformation", + "@azure/arm-security!Label:interface": "SensitivitySettingsAPI.Label", + "@azure/arm-security!InfoType:interface": "SensitivitySettingsAPI.InfoType", + "@azure/arm-security!BuiltInInfoType:interface": "SensitivitySettingsAPI.BuiltInInfoType", + "@azure/arm-security!UpdateSensitivitySettingsRequest:interface": "SensitivitySettingsAPI.UpdateSensitivitySettingsRequest", + "@azure/arm-security!GetSensitivitySettingsListResponse:interface": "SensitivitySettingsAPI.GetSensitivitySettingsListResponse", + "@azure/arm-security!SqlVulnerabilityAssessmentSettings:interface": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettings", + "@azure/arm-security!SqlVulnerabilityAssessmentSettingsProperties:interface": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsProperties", + "@azure/arm-security!SqlVulnerabilityAssessmentScanOperationResult:interface": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanOperationResult", + "@azure/arm-security!SqlVulnerabilityAssessmentScanOperationResultProperties:interface": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanOperationResultProperties", + "@azure/arm-security!ScanV2:interface": "SqlVulnerabilityAssessmentsAPI.ScanV2", + "@azure/arm-security!ScanPropertiesV2:interface": "SqlVulnerabilityAssessmentsAPI.ScanPropertiesV2", + "@azure/arm-security!ScansV2:interface": "SqlVulnerabilityAssessmentsAPI.ScansV2", + "@azure/arm-security!SecuritySubAssessment:interface": "SubAssessmentsAPI.SecuritySubAssessment", + "@azure/arm-security!SecuritySubAssessmentProperties:interface": "SubAssessmentsAPI.SecuritySubAssessmentProperties", + "@azure/arm-security!SubAssessmentStatus:interface": "SubAssessmentsAPI.SubAssessmentStatus", + "@azure/arm-security!AdditionalData:interface": "SubAssessmentsAPI.AdditionalData", + "@azure/arm-security!SqlServerVulnerabilityProperties:interface": "SubAssessmentsAPI.SqlServerVulnerabilityProperties", + "@azure/arm-security!ContainerRegistryVulnerabilityProperties:interface": "SubAssessmentsAPI.ContainerRegistryVulnerabilityProperties", + "@azure/arm-security!CVSS:interface": "SubAssessmentsAPI.CVSS", + "@azure/arm-security!Cve:interface": "SubAssessmentsAPI.CVE", + "@azure/arm-security!VendorReference:interface": "SubAssessmentsAPI.VendorReference", + "@azure/arm-security!ServerVulnerabilityProperties:interface": "SubAssessmentsAPI.ServerVulnerabilityProperties", + "@azure/arm-security!SecuritySubAssessmentList:interface": "SubAssessmentsAPI.SecuritySubAssessmentList", + "@azure/arm-security!KnownAlertSeverity:enum": "AlertsAPI.AlertSeverity", + "@azure/arm-security!KnownIntent:enum": "AlertsAPI.Intent", + "@azure/arm-security!KnownResourceIdentifierType:enum": "AlertsAPI.ResourceIdentifierType", + "@azure/arm-security!KnownAlertStatus:enum": "AlertsAPI.AlertStatus", + "@azure/arm-security!KnowncreatedByType:enum": "Azure.ResourceManager.CommonTypes.createdByType", + "@azure/arm-security!KnownKind:enum": "AlertsAPI.Kind", + "@azure/arm-security!KnownBundleType:enum": "AlertsAPI.BundleType", + "@azure/arm-security!KnownResourceProvisioningState:enum": "Azure.ResourceManager.ResourceProvisioningState", + "@azure/arm-security!KnownRuleState:enum": "AlertsSuppressionRulesAPI.RuleState", + "@azure/arm-security!KnownApplicationSourceResourceType:enum": "ApplicationsAPI.ApplicationSourceResourceType", + "@azure/arm-security!KnownTactics:enum": "AssessmentAPI.Tactics", + "@azure/arm-security!KnownTechniques:enum": "AssessmentAPI.Techniques", + "@azure/arm-security!KnownCategories:enum": "AssessmentAPI.Categories", + "@azure/arm-security!KnownSeverity:enum": "Common.Severity", + "@azure/arm-security!KnownUserImpact:enum": "AssessmentAPI.UserImpact", + "@azure/arm-security!KnownImplementationEffort:enum": "AssessmentAPI.ImplementationEffort", + "@azure/arm-security!KnownThreats:enum": "AssessmentAPI.Threats", + "@azure/arm-security!KnownAssessmentType:enum": "AssessmentAPI.AssessmentType", + "@azure/arm-security!KnownEventSource:enum": "AutomationsAPI.EventSource", + "@azure/arm-security!KnownPropertyType:enum": "AutomationsAPI.PropertyType", + "@azure/arm-security!KnownOperator:enum": "AutomationsAPI.Operator", + "@azure/arm-security!KnownActionType:enum": "Common.ActionType", + "@azure/arm-security!KnownSecurityContactName:enum": "AutomationsAPI.SecurityContactName", + "@azure/arm-security!KnownSourceType:enum": "AutomationsAPI.SourceType", + "@azure/arm-security!KnownMinimalSeverity:enum": "AutomationsAPI.MinimalSeverity", + "@azure/arm-security!KnownMinimalRiskLevel:enum": "AutomationsAPI.MinimalRiskLevel", + "@azure/arm-security!KnownState:enum": "Common.State", + "@azure/arm-security!KnownSecurityContactRole:enum": "AutomationsAPI.SecurityContactRole", + "@azure/arm-security!KnownResourceStatus:enum": "ComplianceResultsAPI.ResourceStatus", + "@azure/arm-security!KnownGovernanceRuleType:enum": "GovernanceAPI.GovernanceRuleType", + "@azure/arm-security!KnownGovernanceRuleSourceResourceType:enum": "GovernanceAPI.GovernanceRuleSourceResourceType", + "@azure/arm-security!KnownGovernanceRuleOwnerSourceType:enum": "GovernanceAPI.GovernanceRuleOwnerSourceType", + "@azure/arm-security!KnownOperationResultStatus:enum": "GovernanceAPI.OperationResultStatus", + "@azure/arm-security!KnownSource:enum": "Common.Source", + "@azure/arm-security!KnownStatusName:enum": "HealthReportsAPI.StatusName", + "@azure/arm-security!KnownValueType:enum": "IoTSecurityAPI.ValueType", + "@azure/arm-security!KnownAutoProvision:enum": "LegacySettingsAPI.AutoProvision", + "@azure/arm-security!KnownInformationProtectionPolicyName:enum": "LegacySettingsAPI.InformationProtectionPolicyName", + "@azure/arm-security!KnownRank:enum": "LegacySettingsAPI.Rank", + "@azure/arm-security!KnownOrigin:enum": "Azure.ResourceManager.CommonTypes.Origin", + "@azure/arm-security!KnownArmActionType:enum": "Azure.ResourceManager.CommonTypes.ActionType", + "@azure/arm-security!KnownPricingTier:enum": "PricingsAPI.PricingTier", + "@azure/arm-security!KnownEnforce:enum": "PricingsAPI.Enforce", + "@azure/arm-security!KnownInherited:enum": "PricingsAPI.Inherited", + "@azure/arm-security!KnownResourcesCoverageStatus:enum": "PricingsAPI.ResourcesCoverageStatus", + "@azure/arm-security!KnownIsEnabled:enum": "PricingsAPI.IsEnabled", + "@azure/arm-security!KnownPrivateEndpointServiceConnectionStatus:enum": "Azure.ResourceManager.CommonTypes.PrivateEndpointServiceConnectionStatus", + "@azure/arm-security!KnownPrivateEndpointConnectionProvisioningState:enum": "Azure.ResourceManager.CommonTypes.PrivateEndpointConnectionProvisioningState", + "@azure/arm-security!KnownCloudName:enum": "SecurityConnectorsAPI.CloudName", + "@azure/arm-security!KnownOfferingType:enum": "SecurityConnectorsAPI.OfferingType", + "@azure/arm-security!KnownScanningMode:enum": "SecurityConnectorsAPI.ScanningMode", + "@azure/arm-security!KnownType:enum": "SecurityConnectorsAPI.Type", + "@azure/arm-security!KnownSubPlan:enum": "SecurityConnectorsAPI.SubPlan", + "@azure/arm-security!KnownEnvironmentType:enum": "SecurityConnectorsAPI.EnvironmentType", + "@azure/arm-security!KnownOrganizationMembershipType:enum": "SecurityConnectorsAPI.OrganizationMembershipType", + "@azure/arm-security!KnownAuthenticationType:enum": "SecurityConnectorsAPI.AuthenticationType", + "@azure/arm-security!KnownDevOpsProvisioningState:enum": "SecurityConnectorsDevOpsAPI.DevOpsProvisioningState", + "@azure/arm-security!KnownOnboardingState:enum": "SecurityConnectorsDevOpsAPI.OnboardingState", + "@azure/arm-security!KnownActionableRemediationState:enum": "SecurityConnectorsDevOpsAPI.ActionableRemediationState", + "@azure/arm-security!KnownRuleCategory:enum": "SecurityConnectorsDevOpsAPI.RuleCategory", + "@azure/arm-security!KnownAnnotateDefaultBranchState:enum": "SecurityConnectorsDevOpsAPI.AnnotateDefaultBranchState", + "@azure/arm-security!KnownInheritFromParentState:enum": "SecurityConnectorsDevOpsAPI.InheritFromParentState", + "@azure/arm-security!KnownAutoDiscovery:enum": "SecurityConnectorsDevOpsAPI.AutoDiscovery", + "@azure/arm-security!KnownAgentlessEnablement:enum": "SecurityConnectorsDevOpsAPI.AgentlessEnablement", + "@azure/arm-security!KnownInventoryListKind:enum": "SecurityConnectorsDevOpsAPI.InventoryListKind", + "@azure/arm-security!KnownInventoryKind:enum": "SecurityConnectorsDevOpsAPI.InventoryKind", + "@azure/arm-security!KnownResourceIdentityType:enum": "Azure.ResourceManager.CommonTypes.ResourceIdentityType", + "@azure/arm-security!KnownSecurityFamily:enum": "SecuritySolutionsAPI.SecurityFamily", + "@azure/arm-security!KnownExternalSecuritySolutionKind:enum": "SecuritySolutionsAPI.ExternalSecuritySolutionKind", + "@azure/arm-security!KnownAadConnectivityState:enum": "SecuritySolutionsAPI.AadConnectivityState", + "@azure/arm-security!KnownProtocol:enum": "SecuritySolutionsAPI.Protocol", + "@azure/arm-security!KnownStatus:enum": "SecuritySolutionsAPI.Status", + "@azure/arm-security!KnownStatusReason:enum": "SecuritySolutionsAPI.StatusReason", + "@azure/arm-security!KnownProvisioningState:enum": "Common.ProvisioningState", + "@azure/arm-security!KnownStandardType:enum": "SecurityStandardsAPI.StandardType", + "@azure/arm-security!KnownStandardSupportedCloud:enum": "SecurityStandardsAPI.StandardSupportedCloud", + "@azure/arm-security!KnownEffect:enum": "SecurityStandardsAPI.Effect", + "@azure/arm-security!KnownExemptionCategory:enum": "SecurityStandardsAPI.ExemptionCategory", + "@azure/arm-security!KnownattestationComplianceState:enum": "SecurityStandardsAPI.attestationComplianceState", + "@azure/arm-security!KnownRecommendationSupportedClouds:enum": "SecurityStandardsAPI.RecommendationSupportedClouds", + "@azure/arm-security!KnownSeverityEnum:enum": "SecurityStandardsAPI.SeverityEnum", + "@azure/arm-security!KnownSecurityIssue:enum": "SecurityStandardsAPI.SecurityIssue", + "@azure/arm-security!KnownServerVulnerabilityAssessmentsSettingKindName:enum": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettingKindName", + "@azure/arm-security!KnownServerVulnerabilityAssessmentsSettingKind:enum": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettingKind", + "@azure/arm-security!KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider:enum": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsAzureSettingSelectedProvider", + "@azure/arm-security!KnownSettingName:enum": "Common.SettingName", + "@azure/arm-security!KnownSettingKind:enum": "SettingsAPI.SettingKind", + "@azure/arm-security!KnownRuleStatus:enum": "SqlVulnerabilityAssessmentsAPI.RuleStatus", + "@azure/arm-security!KnownRuleSeverity:enum": "SqlVulnerabilityAssessmentsAPI.RuleSeverity", + "@azure/arm-security!KnownRuleType:enum": "SqlVulnerabilityAssessmentsAPI.RuleType", + "@azure/arm-security!KnownStandardSupportedClouds:enum": "StandardsAPI.StandardSupportedClouds", + "@azure/arm-security!KnownTaskUpdateActionType:enum": "TasksAPI.TaskUpdateActionType", + "@azure/arm-security!KnownExpandEnum:enum": "AssessmentAPI.ExpandEnum", + "@azure/arm-security!KnownAssessmentStatusCode:enum": "AssessmentAPI.AssessmentStatusCode", + "@azure/arm-security!KnownRiskLevel:enum": "AssessmentAPI.RiskLevel", + "@azure/arm-security!KnownBlobScanResultsOptions:enum": "DefenderForStorageAPI.BlobScanResultsOptions", + "@azure/arm-security!KnownAutomatedResponseType:enum": "DefenderForStorageAPI.AutomatedResponseType", + "@azure/arm-security!KnownReportedSeverity:enum": "IoTSecurityAPI.ReportedSeverity", + "@azure/arm-security!KnownSecuritySolutionStatus:enum": "IoTSecurityAPI.SecuritySolutionStatus", + "@azure/arm-security!KnownExportData:enum": "IoTSecurityAPI.ExportData", + "@azure/arm-security!KnownDataSource:enum": "IoTSecurityAPI.DataSource", + "@azure/arm-security!KnownRecommendationType:enum": "IoTSecurityAPI.RecommendationType", + "@azure/arm-security!KnownRecommendationConfigStatus:enum": "IoTSecurityAPI.RecommendationConfigStatus", + "@azure/arm-security!KnownUnmaskedIpLoggingStatus:enum": "IoTSecurityAPI.UnmaskedIpLoggingStatus", + "@azure/arm-security!KnownAdditionalWorkspaceType:enum": "IoTSecurityAPI.AdditionalWorkspaceType", + "@azure/arm-security!KnownAdditionalWorkspaceDataType:enum": "IoTSecurityAPI.AdditionalWorkspaceDataType", + "@azure/arm-security!KnownPublicNetworkAccess:enum": "PrivateLinksAPI.PublicNetworkAccess", + "@azure/arm-security!KnownExpandControlsEnum:enum": "SecureScoreAPI.ExpandControlsEnum", + "@azure/arm-security!KnownControlType:enum": "SecureScoreAPI.ControlType", + "@azure/arm-security!KnownConnectionType:enum": "SecuritySolutionsAPI.ConnectionType", + "@azure/arm-security!KnownServerVulnerabilityAssessmentPropertiesProvisioningState:enum": "SecuritySolutionsAPI.ServerVulnerabilityAssessmentPropertiesProvisioningState", + "@azure/arm-security!KnownMipIntegrationStatus:enum": "SensitivitySettingsAPI.MipIntegrationStatus", + "@azure/arm-security!KnownSqlVulnerabilityAssessmentState:enum": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentState", + "@azure/arm-security!KnownScanOperationStatus:enum": "SqlVulnerabilityAssessmentsAPI.ScanOperationStatus", + "@azure/arm-security!KnownScanTriggerType:enum": "SqlVulnerabilityAssessmentsAPI.ScanTriggerType", + "@azure/arm-security!KnownScanState:enum": "SqlVulnerabilityAssessmentsAPI.ScanState", + "@azure/arm-security!KnownSubAssessmentStatusCode:enum": "SubAssessmentsAPI.SubAssessmentStatusCode", + "@azure/arm-security!KnownAssessedResourceType:enum": "SubAssessmentsAPI.AssessedResourceType", + "@azure/arm-security!OnUploadPropertiesFilters:type": "DefenderForStorageAPI.OnUploadProperties.filters.anonymous", + "@azure/arm-security!OnUploadPropertiesFiltersExcludeBlobsWithPrefix:type": "DefenderForStorageAPI.OnUploadProperties.filters.excludeBlobsWithPrefix.anonymous", + "@azure/arm-security!OnUploadPropertiesFiltersExcludeBlobsWithSuffix:type": "DefenderForStorageAPI.OnUploadProperties.filters.excludeBlobsWithSuffix.anonymous", + "@azure/arm-security!OnUploadPropertiesFiltersExcludeBlobsLargerThan:type": "DefenderForStorageAPI.OnUploadProperties.filters.excludeBlobsLargerThan.anonymous", + "@azure/arm-security!UserDefinedResourcesPropertiesQuery:type": "IoTSecurityAPI.UserDefinedResourcesProperties.query.anonymous", + "@azure/arm-security!UserDefinedResourcesPropertiesQuerySubscriptions:type": "IoTSecurityAPI.UserDefinedResourcesProperties.querySubscriptions.anonymous", + "@azure/arm-security!SubAssessmentsOperations#listAll:member": "SubAssessmentsAPI.SubAssessmentsOperationGroup.listAll", + "@azure/arm-security!SubAssessmentsOperations#list:member": "SubAssessmentsAPI.SecuritySubAssessments.list", + "@azure/arm-security!SubAssessmentsOperations#get:member": "SubAssessmentsAPI.SecuritySubAssessments.get", + "@azure/arm-security!SqlVulnerabilityAssessmentScansOperations#list:member": "SqlVulnerabilityAssessmentsAPI.ScanV2s.list", + "@azure/arm-security!SqlVulnerabilityAssessmentScansOperations#get:member": "SqlVulnerabilityAssessmentsAPI.ScanV2s.get", + "@azure/arm-security!SqlVulnerabilityAssessmentScansOperations#getScanOperationResult:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.getScanOperationResult", + "@azure/arm-security!SqlVulnerabilityAssessmentScansOperations#initiateScan:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.initiateScan", + "@azure/arm-security!SqlVulnerabilityAssessmentSettingsOperations#delete:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.delete", + "@azure/arm-security!SqlVulnerabilityAssessmentSettingsOperations#createOrUpdate:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.createOrUpdate", + "@azure/arm-security!SqlVulnerabilityAssessmentSettingsOperations#get:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentSettingsOperationGroup.get", + "@azure/arm-security!SensitivitySettingsOperations#list:member": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.list", + "@azure/arm-security!SensitivitySettingsOperations#createOrUpdate:member": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.createOrUpdate", + "@azure/arm-security!SensitivitySettingsOperations#get:member": "SensitivitySettingsAPI.GetSensitivitySettingsResponses.get", + "@azure/arm-security!SecuritySolutionsReferenceDataOperations#listByHomeRegion:member": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.listByHomeRegion", + "@azure/arm-security!SecuritySolutionsReferenceDataOperations#list:member": "SecuritySolutionsAPI.SecuritySolutionsReferenceDataOperationGroup.list", + "@azure/arm-security!TopologyOperations#list:member": "SecuritySolutionsAPI.TopologyOperationGroup.list", + "@azure/arm-security!TopologyOperations#listByHomeRegion:member": "SecuritySolutionsAPI.TopologyResources.listByHomeRegion", + "@azure/arm-security!TopologyOperations#get:member": "SecuritySolutionsAPI.TopologyResources.get", + "@azure/arm-security!ServerVulnerabilityAssessmentOperations#listByExtendedResource:member": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.listByExtendedResource", + "@azure/arm-security!ServerVulnerabilityAssessmentOperations#delete:member": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.delete", + "@azure/arm-security!ServerVulnerabilityAssessmentOperations#createOrUpdate:member": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.createOrUpdate", + "@azure/arm-security!ServerVulnerabilityAssessmentOperations#get:member": "SecuritySolutionsAPI.ServerVulnerabilityAssessments.get", + "@azure/arm-security!AllowedConnectionsOperations#list:member": "SecuritySolutionsAPI.AllowedConnectionsOperationGroup.list", + "@azure/arm-security!AllowedConnectionsOperations#listByHomeRegion:member": "SecuritySolutionsAPI.AllowedConnectionsResources.listByHomeRegion", + "@azure/arm-security!AllowedConnectionsOperations#get:member": "SecuritySolutionsAPI.AllowedConnectionsResources.get", + "@azure/arm-security!GitHubIssuesOperations#create:member": "SecurityConnectorsDevOpsAPI.GitHubRepositories.create", + "@azure/arm-security!GitHubReposOperations#list:member": "SecurityConnectorsDevOpsAPI.GitHubRepositories.list", + "@azure/arm-security!GitHubReposOperations#get:member": "SecurityConnectorsDevOpsAPI.GitHubRepositories.get", + "@azure/arm-security!AzureDevOpsReposOperations#list:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.list", + "@azure/arm-security!AzureDevOpsReposOperations#update:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.update", + "@azure/arm-security!AzureDevOpsReposOperations#createOrUpdate:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.createOrUpdate", + "@azure/arm-security!AzureDevOpsReposOperations#get:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsRepositories.get", + "@azure/arm-security!DevOpsOperationResultsOperations#Get:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.devOpsOperationResultsGet", + "@azure/arm-security!GitLabSubgroupsOperations#List:member": "SecurityConnectorsDevOpsAPI.GitLabGroups.gitLabSubgroupsList", + "@azure/arm-security!SecureScoreControlDefinitionsOperations#listBySubscription:member": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.listBySubscription", + "@azure/arm-security!SecureScoreControlDefinitionsOperations#list:member": "SecureScoreAPI.SecureScoreControlDefinitionsOperationGroup.list", + "@azure/arm-security!SecureScoreControlsOperations#list:member": "SecureScoreAPI.SecureScoreControlsOperationGroup.list", + "@azure/arm-security!SecureScoreControlsOperations#listBySecureScore:member": "SecureScoreAPI.SecureScoreItems.listBySecureScore", + "@azure/arm-security!SecureScoresOperations#list:member": "SecureScoreAPI.SecureScoreItems.list", + "@azure/arm-security!SecureScoresOperations#get:member": "SecureScoreAPI.SecureScoreItems.get", + "@azure/arm-security!PrivateLinksOperations#listBySubscription:member": "PrivateLinksAPI.PrivateLinkResources.listBySubscription", + "@azure/arm-security!PrivateLinksOperations#list:member": "PrivateLinksAPI.PrivateLinkResources.list", + "@azure/arm-security!PrivateLinksOperations#delete:member": "PrivateLinksAPI.PrivateLinkResources.delete", + "@azure/arm-security!PrivateLinksOperations#update:member": "PrivateLinksAPI.PrivateLinkResources.update", + "@azure/arm-security!PrivateLinksOperations#create:member": "PrivateLinksAPI.PrivateLinkResources.create", + "@azure/arm-security!PrivateLinksOperations#head:member": "PrivateLinksAPI.PrivateLinkResources.head", + "@azure/arm-security!PrivateLinksOperations#get:member": "PrivateLinksAPI.PrivateLinkResources.get", + "@azure/arm-security!OperationStatusesOperations#get:member": "OperationsAPI.OperationStatusesOperationGroup.get", + "@azure/arm-security!OperationResultsOperations#get:member": "OperationsAPI.OperationResultsOperationGroup.get", + "@azure/arm-security!LocationsOperations#list:member": "LocationsAPI.AscLocations.list", + "@azure/arm-security!LocationsOperations#get:member": "LocationsAPI.AscLocations.get", + "@azure/arm-security!IotSecuritySolutionsAnalyticsRecommendationOperations#list:member": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.list", + "@azure/arm-security!IotSecuritySolutionsAnalyticsRecommendationOperations#get:member": "IoTSecurityAPI.IoTSecurityAggregatedRecommendations.get", + "@azure/arm-security!IotSecuritySolutionsAnalyticsAggregatedAlertOperations#dismiss:member": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.dismiss", + "@azure/arm-security!IotSecuritySolutionsAnalyticsAggregatedAlertOperations#list:member": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.list", + "@azure/arm-security!IotSecuritySolutionsAnalyticsAggregatedAlertOperations#get:member": "IoTSecurityAPI.IoTSecurityAggregatedAlerts.get", + "@azure/arm-security!IotSecuritySolutionOperations#listBySubscription:member": "IoTSecurityAPI.IoTSecuritySolutionModels.listBySubscription", + "@azure/arm-security!IotSecuritySolutionOperations#listByResourceGroup:member": "IoTSecurityAPI.IoTSecuritySolutionModels.listByResourceGroup", + "@azure/arm-security!IotSecuritySolutionOperations#delete:member": "IoTSecurityAPI.IoTSecuritySolutionModels.delete", + "@azure/arm-security!IotSecuritySolutionOperations#update:member": "IoTSecurityAPI.IoTSecuritySolutionModels.update", + "@azure/arm-security!IotSecuritySolutionOperations#createOrUpdate:member": "IoTSecurityAPI.IoTSecuritySolutionModels.createOrUpdate", + "@azure/arm-security!IotSecuritySolutionOperations#get:member": "IoTSecurityAPI.IoTSecuritySolutionModels.get", + "@azure/arm-security!IotSecuritySolutionAnalyticsOperations#list:member": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.list", + "@azure/arm-security!IotSecuritySolutionAnalyticsOperations#get:member": "IoTSecurityAPI.IoTSecuritySolutionAnalyticsModels.get", + "@azure/arm-security!DefenderForStorageOperations#getMalwareScan:member": "DefenderForStorageAPI.DefenderForStorageSettings.getMalwareScan", + "@azure/arm-security!DefenderForStorageOperations#cancelMalwareScan:member": "DefenderForStorageAPI.DefenderForStorageSettings.cancelMalwareScan", + "@azure/arm-security!DefenderForStorageOperations#startMalwareScan:member": "DefenderForStorageAPI.DefenderForStorageSettings.startMalwareScan", + "@azure/arm-security!DefenderForStorageOperations#list:member": "DefenderForStorageAPI.DefenderForStorageSettings.list", + "@azure/arm-security!DefenderForStorageOperations#create:member": "DefenderForStorageAPI.DefenderForStorageSettings.create", + "@azure/arm-security!DefenderForStorageOperations#get:member": "DefenderForStorageAPI.DefenderForStorageSettings.get", + "@azure/arm-security!AdvancedThreatProtectionOperations#create:member": "ATPSettingsAPI.AdvancedThreatProtectionSettings.create", + "@azure/arm-security!AdvancedThreatProtectionOperations#get:member": "ATPSettingsAPI.AdvancedThreatProtectionSettings.get", + "@azure/arm-security!AssessmentsOperations#list:member": "AssessmentAPI.SecurityAssessmentResponses.list", + "@azure/arm-security!AssessmentsOperations#delete:member": "AssessmentAPI.SecurityAssessmentResponses.delete", + "@azure/arm-security!AssessmentsOperations#createOrUpdate:member": "AssessmentAPI.SecurityAssessmentResponses.createOrUpdate", + "@azure/arm-security!AssessmentsOperations#get:member": "AssessmentAPI.SecurityAssessmentResponses.get", + "@azure/arm-security!SecurityConnectorApplicationsOperations#list:member": "ApplicationsAPI.SecurityConnectorApplication.list", + "@azure/arm-security!ApplicationOperations#delete:member": "ApplicationsAPI.Applications.delete", + "@azure/arm-security!ApplicationOperations#createOrUpdate:member": "ApplicationsAPI.Applications.createOrUpdate", + "@azure/arm-security!ApplicationOperations#get:member": "ApplicationsAPI.Applications.get", + "@azure/arm-security!APICollectionsOperations#listByResourceGroup:member": "ApiCollectionsAPI.ApiCollectionsOperationGroup.listByResourceGroup", + "@azure/arm-security!APICollectionsOperations#listBySubscription:member": "ApiCollectionsAPI.ApiCollections.listBySubscription", + "@azure/arm-security!APICollectionsOperations#listByAzureApiManagementService:member": "ApiCollectionsAPI.ApiCollections.listByAzureApiManagementService", + "@azure/arm-security!APICollectionsOperations#offboardAzureApiManagementApi:member": "ApiCollectionsAPI.ApiCollections.offboardAzureApiManagementApi", + "@azure/arm-security!APICollectionsOperations#onboardAzureApiManagementApi:member": "ApiCollectionsAPI.ApiCollections.onboardAzureApiManagementApi", + "@azure/arm-security!APICollectionsOperations#getByAzureApiManagementService:member": "ApiCollectionsAPI.ApiCollections.getByAzureApiManagementService", + "@azure/arm-security!TasksOperations#list:member": "TasksAPI.TasksOperationGroup.list", + "@azure/arm-security!TasksOperations#updateSubscriptionLevelTaskState:member": "TasksAPI.SecurityTasks.updateSubscriptionLevelTaskState", + "@azure/arm-security!TasksOperations#listByHomeRegion:member": "TasksAPI.SecurityTasks.listByHomeRegion", + "@azure/arm-security!TasksOperations#getSubscriptionLevelTask:member": "TasksAPI.SecurityTasks.getSubscriptionLevelTask", + "@azure/arm-security!TasksOperations#updateResourceGroupLevelTaskState:member": "TasksAPI.Tasks.updateResourceGroupLevelTaskState", + "@azure/arm-security!TasksOperations#listByResourceGroup:member": "TasksAPI.Tasks.listByResourceGroup", + "@azure/arm-security!TasksOperations#getResourceGroupLevelTask:member": "TasksAPI.Tasks.getResourceGroupLevelTask", + "@azure/arm-security!AssignmentsOperations#listBySubscription:member": "StandardsAPI.Assignments.listBySubscription", + "@azure/arm-security!AssignmentsOperations#list:member": "StandardsAPI.Assignments.list", + "@azure/arm-security!AssignmentsOperations#delete:member": "StandardsAPI.Assignments.delete", + "@azure/arm-security!AssignmentsOperations#createOrUpdate:member": "StandardsAPI.Assignments.createOrUpdate", + "@azure/arm-security!AssignmentsOperations#get:member": "StandardsAPI.Assignments.get", + "@azure/arm-security!StandardsOperations#listBySubscription:member": "StandardsAPI.Standards.listBySubscription", + "@azure/arm-security!StandardsOperations#list:member": "StandardsAPI.Standards.list", + "@azure/arm-security!StandardsOperations#delete:member": "StandardsAPI.Standards.delete", + "@azure/arm-security!StandardsOperations#createOrUpdate:member": "StandardsAPI.Standards.createOrUpdate", + "@azure/arm-security!StandardsOperations#get:member": "StandardsAPI.Standards.get", + "@azure/arm-security!SqlVulnerabilityAssessmentScanResultsOperations#list:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.list", + "@azure/arm-security!SqlVulnerabilityAssessmentScanResultsOperations#get:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentScanResults.get", + "@azure/arm-security!SqlVulnerabilityAssessmentBaselineRulesOperations#add:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.add", + "@azure/arm-security!SqlVulnerabilityAssessmentBaselineRulesOperations#list:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.list", + "@azure/arm-security!SqlVulnerabilityAssessmentBaselineRulesOperations#delete:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.delete", + "@azure/arm-security!SqlVulnerabilityAssessmentBaselineRulesOperations#createOrUpdate:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.createOrUpdate", + "@azure/arm-security!SqlVulnerabilityAssessmentBaselineRulesOperations#get:member": "SqlVulnerabilityAssessmentsAPI.SqlVulnerabilityAssessmentBaselineRules.get", + "@azure/arm-security!SettingsOperations#list:member": "SettingsAPI.Settings.list", + "@azure/arm-security!SettingsOperations#update:member": "SettingsAPI.Settings.update", + "@azure/arm-security!SettingsOperations#get:member": "SettingsAPI.Settings.get", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingsOperations#listBySubscription:member": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.listBySubscription", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingsOperations#delete:member": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.delete", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingsOperations#createOrUpdate:member": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.createOrUpdate", + "@azure/arm-security!ServerVulnerabilityAssessmentsSettingsOperations#get:member": "ServerVulnerabilityAssessmentsSettingsAPI.ServerVulnerabilityAssessmentsSettings.get", + "@azure/arm-security!CustomRecommendationsOperations#list:member": "SecurityStandardsAPI.CustomRecommendations.list", + "@azure/arm-security!CustomRecommendationsOperations#delete:member": "SecurityStandardsAPI.CustomRecommendations.delete", + "@azure/arm-security!CustomRecommendationsOperations#createOrUpdate:member": "SecurityStandardsAPI.CustomRecommendations.createOrUpdate", + "@azure/arm-security!CustomRecommendationsOperations#get:member": "SecurityStandardsAPI.CustomRecommendations.get", + "@azure/arm-security!StandardAssignmentsOperations#list:member": "SecurityStandardsAPI.StandardAssignments.list", + "@azure/arm-security!StandardAssignmentsOperations#delete:member": "SecurityStandardsAPI.StandardAssignments.delete", + "@azure/arm-security!StandardAssignmentsOperations#create:member": "SecurityStandardsAPI.StandardAssignments.create", + "@azure/arm-security!StandardAssignmentsOperations#get:member": "SecurityStandardsAPI.StandardAssignments.get", + "@azure/arm-security!SecurityStandardsOperations#list:member": "SecurityStandardsAPI.SecurityStandards.list", + "@azure/arm-security!SecurityStandardsOperations#delete:member": "SecurityStandardsAPI.SecurityStandards.delete", + "@azure/arm-security!SecurityStandardsOperations#createOrUpdate:member": "SecurityStandardsAPI.SecurityStandards.createOrUpdate", + "@azure/arm-security!SecurityStandardsOperations#get:member": "SecurityStandardsAPI.SecurityStandards.get", + "@azure/arm-security!SecuritySolutionsOperations#list:member": "SecuritySolutionsAPI.SecuritySolutionsOperationGroup.list", + "@azure/arm-security!SecuritySolutionsOperations#get:member": "SecuritySolutionsAPI.SecuritySolutions.get", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#listByResourceGroup:member": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.listByResourceGroup", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#list:member": "SecuritySolutionsAPI.JitNetworkAccessPoliciesOperationGroup.list", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#initiate:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.initiate", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#listByRegion:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByRegion", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#listByResourceGroupAndRegion:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.listByResourceGroupAndRegion", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#delete:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.delete", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#createOrUpdate:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.createOrUpdate", + "@azure/arm-security!JitNetworkAccessPoliciesOperations#get:member": "SecuritySolutionsAPI.JitNetworkAccessPolicies.get", + "@azure/arm-security!ExternalSecuritySolutionsOperations#list:member": "SecuritySolutionsAPI.ExternalSecuritySolutionsOperationGroup.list", + "@azure/arm-security!ExternalSecuritySolutionsOperations#listByHomeRegion:member": "SecuritySolutionsAPI.ExternalSecuritySolutions.listByHomeRegion", + "@azure/arm-security!ExternalSecuritySolutionsOperations#get:member": "SecuritySolutionsAPI.ExternalSecuritySolutions.get", + "@azure/arm-security!DiscoveredSecuritySolutionsOperations#list:member": "SecuritySolutionsAPI.DiscoveredSecuritySolutionsOperationGroup.list", + "@azure/arm-security!DiscoveredSecuritySolutionsOperations#listByHomeRegion:member": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.listByHomeRegion", + "@azure/arm-security!DiscoveredSecuritySolutionsOperations#get:member": "SecuritySolutionsAPI.DiscoveredSecuritySolutions.get", + "@azure/arm-security!SecurityOperatorsOperations#list:member": "SecurityOperatorsAPI.SecurityOperators.list", + "@azure/arm-security!SecurityOperatorsOperations#delete:member": "SecurityOperatorsAPI.SecurityOperators.delete", + "@azure/arm-security!SecurityOperatorsOperations#createOrUpdate:member": "SecurityOperatorsAPI.SecurityOperators.createOrUpdate", + "@azure/arm-security!SecurityOperatorsOperations#get:member": "SecurityOperatorsAPI.SecurityOperators.get", + "@azure/arm-security!GitLabProjectsOperations#list:member": "SecurityConnectorsDevOpsAPI.GitLabProjects.list", + "@azure/arm-security!GitLabProjectsOperations#get:member": "SecurityConnectorsDevOpsAPI.GitLabProjects.get", + "@azure/arm-security!AzureDevOpsProjectsOperations#list:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.list", + "@azure/arm-security!AzureDevOpsProjectsOperations#update:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.update", + "@azure/arm-security!AzureDevOpsProjectsOperations#createOrUpdate:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.createOrUpdate", + "@azure/arm-security!AzureDevOpsProjectsOperations#get:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsProjects.get", + "@azure/arm-security!DevOpsConfigurationsOperations#list:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.list", + "@azure/arm-security!DevOpsConfigurationsOperations#delete:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.delete", + "@azure/arm-security!DevOpsConfigurationsOperations#update:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.update", + "@azure/arm-security!DevOpsConfigurationsOperations#createOrUpdate:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.createOrUpdate", + "@azure/arm-security!DevOpsConfigurationsOperations#get:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.get", + "@azure/arm-security!GitLabGroupsOperations#ListAvailable:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitLabGroupsListAvailable", + "@azure/arm-security!GitLabGroupsOperations#list:member": "SecurityConnectorsDevOpsAPI.GitLabGroups.list", + "@azure/arm-security!GitLabGroupsOperations#get:member": "SecurityConnectorsDevOpsAPI.GitLabGroups.get", + "@azure/arm-security!GitHubOwnersOperations#ListAvailable:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.gitHubOwnersListAvailable", + "@azure/arm-security!GitHubOwnersOperations#list:member": "SecurityConnectorsDevOpsAPI.GitHubOwners.list", + "@azure/arm-security!GitHubOwnersOperations#get:member": "SecurityConnectorsDevOpsAPI.GitHubOwners.get", + "@azure/arm-security!AzureDevOpsOrgsOperations#listAvailable:member": "SecurityConnectorsDevOpsAPI.DevOpsConfigurations.listAvailable", + "@azure/arm-security!AzureDevOpsOrgsOperations#list:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.list", + "@azure/arm-security!AzureDevOpsOrgsOperations#update:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.update", + "@azure/arm-security!AzureDevOpsOrgsOperations#createOrUpdate:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.createOrUpdate", + "@azure/arm-security!AzureDevOpsOrgsOperations#get:member": "SecurityConnectorsDevOpsAPI.AzureDevOpsOrgs.get", + "@azure/arm-security!SecurityConnectorsOperations#list:member": "SecurityConnectorsAPI.SecurityConnectors.list", + "@azure/arm-security!SecurityConnectorsOperations#listByResourceGroup:member": "SecurityConnectorsAPI.SecurityConnectors.listByResourceGroup", + "@azure/arm-security!SecurityConnectorsOperations#delete:member": "SecurityConnectorsAPI.SecurityConnectors.delete", + "@azure/arm-security!SecurityConnectorsOperations#update:member": "SecurityConnectorsAPI.SecurityConnectors.update", + "@azure/arm-security!SecurityConnectorsOperations#createOrUpdate:member": "SecurityConnectorsAPI.SecurityConnectors.createOrUpdate", + "@azure/arm-security!SecurityConnectorsOperations#get:member": "SecurityConnectorsAPI.SecurityConnectors.get", + "@azure/arm-security!RegulatoryComplianceAssessmentsOperations#list:member": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.list", + "@azure/arm-security!RegulatoryComplianceAssessmentsOperations#get:member": "RegulatoryComplianceAPI.RegulatoryComplianceAssessments.get", + "@azure/arm-security!RegulatoryComplianceControlsOperations#list:member": "RegulatoryComplianceAPI.RegulatoryComplianceControls.list", + "@azure/arm-security!RegulatoryComplianceControlsOperations#get:member": "RegulatoryComplianceAPI.RegulatoryComplianceControls.get", + "@azure/arm-security!RegulatoryComplianceStandardsOperations#list:member": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.list", + "@azure/arm-security!RegulatoryComplianceStandardsOperations#get:member": "RegulatoryComplianceAPI.RegulatoryComplianceStandards.get", + "@azure/arm-security!PrivateEndpointConnectionsOperations#list:member": "PrivateLinksAPI.PrivateEndpointConnections.list", + "@azure/arm-security!PrivateEndpointConnectionsOperations#delete:member": "PrivateLinksAPI.PrivateEndpointConnections.delete", + "@azure/arm-security!PrivateEndpointConnectionsOperations#createOrUpdate:member": "PrivateLinksAPI.PrivateEndpointConnections.createOrUpdate", + "@azure/arm-security!PrivateEndpointConnectionsOperations#get:member": "PrivateLinksAPI.PrivateEndpointConnections.get", + "@azure/arm-security!PrivateLinkResourcesOperations#list:member": "PrivateLinksAPI.PrivateLinkGroupResources.list", + "@azure/arm-security!PrivateLinkResourcesOperations#get:member": "PrivateLinksAPI.PrivateLinkGroupResources.get", + "@azure/arm-security!PricingsOperations#list:member": "PricingsAPI.Pricings.list", + "@azure/arm-security!PricingsOperations#delete:member": "PricingsAPI.Pricings.delete", + "@azure/arm-security!PricingsOperations#update:member": "PricingsAPI.Pricings.update", + "@azure/arm-security!PricingsOperations#get:member": "PricingsAPI.Pricings.get", + "@azure/arm-security!OperationsOperations#list:member": "Azure.ResourceManager.Operations.list", + "@azure/arm-security!MdeOnboardingsOperations#list:member": "MdeOnboardingAPI.MdeOnboardings.list", + "@azure/arm-security!MdeOnboardingsOperations#get:member": "MdeOnboardingAPI.MdeOnboardings.get", + "@azure/arm-security!WorkspaceSettingsOperations#list:member": "LegacySettingsAPI.WorkspaceSettings.list", + "@azure/arm-security!WorkspaceSettingsOperations#delete:member": "LegacySettingsAPI.WorkspaceSettings.delete", + "@azure/arm-security!WorkspaceSettingsOperations#update:member": "LegacySettingsAPI.WorkspaceSettings.update", + "@azure/arm-security!WorkspaceSettingsOperations#create:member": "LegacySettingsAPI.WorkspaceSettings.create", + "@azure/arm-security!WorkspaceSettingsOperations#get:member": "LegacySettingsAPI.WorkspaceSettings.get", + "@azure/arm-security!InformationProtectionPoliciesOperations#list:member": "LegacySettingsAPI.InformationProtectionPolicies.list", + "@azure/arm-security!InformationProtectionPoliciesOperations#createOrUpdate:member": "LegacySettingsAPI.InformationProtectionPolicies.createOrUpdate", + "@azure/arm-security!InformationProtectionPoliciesOperations#get:member": "LegacySettingsAPI.InformationProtectionPolicies.get", + "@azure/arm-security!CompliancesOperations#list:member": "LegacySettingsAPI.Compliances.list", + "@azure/arm-security!CompliancesOperations#get:member": "LegacySettingsAPI.Compliances.get", + "@azure/arm-security!AutoProvisioningSettingsOperations#list:member": "LegacySettingsAPI.AutoProvisioningSettings.list", + "@azure/arm-security!AutoProvisioningSettingsOperations#create:member": "LegacySettingsAPI.AutoProvisioningSettings.create", + "@azure/arm-security!AutoProvisioningSettingsOperations#get:member": "LegacySettingsAPI.AutoProvisioningSettings.get", + "@azure/arm-security!DeviceSecurityGroupsOperations#list:member": "IoTSecurityAPI.DeviceSecurityGroups.list", + "@azure/arm-security!DeviceSecurityGroupsOperations#delete:member": "IoTSecurityAPI.DeviceSecurityGroups.delete", + "@azure/arm-security!DeviceSecurityGroupsOperations#createOrUpdate:member": "IoTSecurityAPI.DeviceSecurityGroups.createOrUpdate", + "@azure/arm-security!DeviceSecurityGroupsOperations#get:member": "IoTSecurityAPI.DeviceSecurityGroups.get", + "@azure/arm-security!HealthReportsOperations#list:member": "HealthReportsAPI.HealthReports.list", + "@azure/arm-security!HealthReportsOperations#get:member": "HealthReportsAPI.HealthReports.get", + "@azure/arm-security!GovernanceRulesOperations#operationResults:member": "GovernanceAPI.GovernanceRules.operationResults", + "@azure/arm-security!GovernanceRulesOperations#execute:member": "GovernanceAPI.GovernanceRules.execute", + "@azure/arm-security!GovernanceRulesOperations#list:member": "GovernanceAPI.GovernanceRules.list", + "@azure/arm-security!GovernanceRulesOperations#delete:member": "GovernanceAPI.GovernanceRules.delete", + "@azure/arm-security!GovernanceRulesOperations#createOrUpdate:member": "GovernanceAPI.GovernanceRules.createOrUpdate", + "@azure/arm-security!GovernanceRulesOperations#get:member": "GovernanceAPI.GovernanceRules.get", + "@azure/arm-security!GovernanceAssignmentsOperations#list:member": "GovernanceAPI.GovernanceAssignments.list", + "@azure/arm-security!GovernanceAssignmentsOperations#delete:member": "GovernanceAPI.GovernanceAssignments.delete", + "@azure/arm-security!GovernanceAssignmentsOperations#createOrUpdate:member": "GovernanceAPI.GovernanceAssignments.createOrUpdate", + "@azure/arm-security!GovernanceAssignmentsOperations#get:member": "GovernanceAPI.GovernanceAssignments.get", + "@azure/arm-security!ComplianceResultsOperations#list:member": "ComplianceResultsAPI.ComplianceResults.list", + "@azure/arm-security!ComplianceResultsOperations#get:member": "ComplianceResultsAPI.ComplianceResults.get", + "@azure/arm-security!SecurityContactsOperations#list:member": "AutomationsAPI.SecurityContacts.list", + "@azure/arm-security!SecurityContactsOperations#delete:member": "AutomationsAPI.SecurityContacts.delete", + "@azure/arm-security!SecurityContactsOperations#create:member": "AutomationsAPI.SecurityContacts.create", + "@azure/arm-security!SecurityContactsOperations#get:member": "AutomationsAPI.SecurityContacts.get", + "@azure/arm-security!AutomationsOperations#validate:member": "AutomationsAPI.Automations.validate", + "@azure/arm-security!AutomationsOperations#list:member": "AutomationsAPI.Automations.list", + "@azure/arm-security!AutomationsOperations#listByResourceGroup:member": "AutomationsAPI.Automations.listByResourceGroup", + "@azure/arm-security!AutomationsOperations#delete:member": "AutomationsAPI.Automations.delete", + "@azure/arm-security!AutomationsOperations#update:member": "AutomationsAPI.Automations.update", + "@azure/arm-security!AutomationsOperations#createOrUpdate:member": "AutomationsAPI.Automations.createOrUpdate", + "@azure/arm-security!AutomationsOperations#get:member": "AutomationsAPI.Automations.get", + "@azure/arm-security!AssessmentsMetadataOperations#list:member": "AssessmentAPI.SecurityAssessmentMetadataResponses.list", + "@azure/arm-security!AssessmentsMetadataOperations#get:member": "AssessmentAPI.SecurityAssessmentMetadataResponses.get", + "@azure/arm-security!AssessmentsMetadataOperations#listBySubscription:member": "AssessmentAPI.AssessmentsMetadata.listBySubscription", + "@azure/arm-security!AssessmentsMetadataOperations#deleteInSubscription:member": "AssessmentAPI.AssessmentsMetadata.deleteInSubscription", + "@azure/arm-security!AssessmentsMetadataOperations#createInSubscription:member": "AssessmentAPI.AssessmentsMetadata.createInSubscription", + "@azure/arm-security!AssessmentsMetadataOperations#getInSubscription:member": "AssessmentAPI.AssessmentsMetadata.getInSubscription", + "@azure/arm-security!SecurityConnectorApplicationOperations#delete:member": "ApplicationsAPI.SecurityConnectorApplication.delete", + "@azure/arm-security!SecurityConnectorApplicationOperations#createOrUpdate:member": "ApplicationsAPI.SecurityConnectorApplication.createOrUpdate", + "@azure/arm-security!SecurityConnectorApplicationOperations#get:member": "ApplicationsAPI.SecurityConnectorApplication.get", + "@azure/arm-security!ApplicationsOperations#list:member": "ApplicationsAPI.Applications.list", + "@azure/arm-security!AlertsSuppressionRulesOperations#list:member": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.list", + "@azure/arm-security!AlertsSuppressionRulesOperations#delete:member": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.delete", + "@azure/arm-security!AlertsSuppressionRulesOperations#update:member": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.update", + "@azure/arm-security!AlertsSuppressionRulesOperations#get:member": "AlertsSuppressionRulesAPI.AlertsSuppressionRules.get", + "@azure/arm-security!AlertsOperations#simulate:member": "AlertsAPI.AlertsOperationGroup.simulate", + "@azure/arm-security!AlertsOperations#listByResourceGroup:member": "AlertsAPI.AlertsOperationGroup.listByResourceGroup", + "@azure/arm-security!AlertsOperations#list:member": "AlertsAPI.AlertsOperationGroup.list", + "@azure/arm-security!AlertsOperations#updateResourceGroupLevelStateToInProgress:member": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToInProgress", + "@azure/arm-security!AlertsOperations#updateResourceGroupLevelStateToActivate:member": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToActivate", + "@azure/arm-security!AlertsOperations#updateResourceGroupLevelStateToDismiss:member": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToDismiss", + "@azure/arm-security!AlertsOperations#updateResourceGroupLevelStateToResolve:member": "AlertsAPI.AlertOperationGroup.updateResourceGroupLevelStateToResolve", + "@azure/arm-security!AlertsOperations#listResourceGroupLevelByRegion:member": "AlertsAPI.AlertOperationGroup.listResourceGroupLevelByRegion", + "@azure/arm-security!AlertsOperations#getResourceGroupLevel:member": "AlertsAPI.AlertOperationGroup.getResourceGroupLevel", + "@azure/arm-security!AlertsOperations#updateSubscriptionLevelStateToInProgress:member": "AlertsAPI.Alerts.updateSubscriptionLevelStateToInProgress", + "@azure/arm-security!AlertsOperations#updateSubscriptionLevelStateToActivate:member": "AlertsAPI.Alerts.updateSubscriptionLevelStateToActivate", + "@azure/arm-security!AlertsOperations#updateSubscriptionLevelStateToResolve:member": "AlertsAPI.Alerts.updateSubscriptionLevelStateToResolve", + "@azure/arm-security!AlertsOperations#updateSubscriptionLevelStateToDismiss:member": "AlertsAPI.Alerts.updateSubscriptionLevelStateToDismiss", + "@azure/arm-security!AlertsOperations#listSubscriptionLevelByRegion:member": "AlertsAPI.Alerts.listSubscriptionLevelByRegion", + "@azure/arm-security!AlertsOperations#getSubscriptionLevel:member": "AlertsAPI.Alerts.getSubscriptionLevel" + } + } +} diff --git a/sdk/security/arm-security/package.json b/sdk/security/arm-security/package.json index 5c1e22c8206c..7eda42073c7f 100644 --- a/sdk/security/arm-security/package.json +++ b/sdk/security/arm-security/package.json @@ -1,127 +1,745 @@ { "name": "@azure/arm-security", - "sdk-type": "mgmt", - "author": "Microsoft Corporation", - "description": "A generated SDK for SecurityCenter.", "version": "6.0.0-beta.7", + "description": "A generated SDK for SecurityCenter.", "engines": { "node": ">=20.0.0" }, - "dependencies": { - "@azure/abort-controller": "^2.1.2", - "@azure/core-auth": "^1.9.0", - "@azure/core-client": "^1.9.2", - "@azure/core-lro": "^2.5.4", - "@azure/core-paging": "^1.6.2", - "@azure/core-rest-pipeline": "^1.19.0", - "tslib": "^2.8.1" + "sideEffects": false, + "autoPublish": false, + "type": "module", + "main": "./dist/commonjs/index.js", + "module": "./dist/esm/index.js", + "types": "./dist/commonjs/index.d.ts", + "browser": "./dist/browser/index.js", + "react-native": "./dist/react-native/index.js", + "exports": { + "./package.json": "./package.json", + ".": { + "browser": { + "types": "./dist/browser/index.d.ts", + "default": "./dist/browser/index.js" + }, + "react-native": { + "types": "./dist/react-native/index.d.ts", + "default": "./dist/react-native/index.js" + }, + "import": { + "types": "./dist/esm/index.d.ts", + "default": "./dist/esm/index.js" + }, + "require": { + "types": "./dist/commonjs/index.d.ts", + "default": "./dist/commonjs/index.js" + } + }, + "./api": { + "browser": { + "types": "./dist/browser/api/index.d.ts", + "default": "./dist/browser/api/index.js" + }, + "react-native": { + "types": "./dist/react-native/api/index.d.ts", + "default": "./dist/react-native/api/index.js" + }, + "import": { + "types": "./dist/esm/api/index.d.ts", + "default": "./dist/esm/api/index.js" + }, + "require": { + "types": "./dist/commonjs/api/index.d.ts", + "default": "./dist/commonjs/api/index.js" + } + }, + "./models": { + "browser": { + "types": "./dist/browser/models/index.d.ts", + "default": "./dist/browser/models/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/index.d.ts", + "default": "./dist/react-native/models/index.js" + }, + "import": { + "types": "./dist/esm/models/index.d.ts", + "default": "./dist/esm/models/index.js" + }, + "require": { + "types": "./dist/commonjs/models/index.d.ts", + "default": "./dist/commonjs/models/index.js" + } + }, + "./models/alertsAPI": { + "browser": { + "types": "./dist/browser/models/alertsAPI/index.d.ts", + "default": "./dist/browser/models/alertsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/alertsAPI/index.d.ts", + "default": "./dist/react-native/models/alertsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/alertsAPI/index.d.ts", + "default": "./dist/esm/models/alertsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/alertsAPI/index.d.ts", + "default": "./dist/commonjs/models/alertsAPI/index.js" + } + }, + "./models/alertsSuppressionRulesAPI": { + "browser": { + "types": "./dist/browser/models/alertsSuppressionRulesAPI/index.d.ts", + "default": "./dist/browser/models/alertsSuppressionRulesAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/alertsSuppressionRulesAPI/index.d.ts", + "default": "./dist/react-native/models/alertsSuppressionRulesAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/alertsSuppressionRulesAPI/index.d.ts", + "default": "./dist/esm/models/alertsSuppressionRulesAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/alertsSuppressionRulesAPI/index.d.ts", + "default": "./dist/commonjs/models/alertsSuppressionRulesAPI/index.js" + } + }, + "./models/apiCollectionsAPI": { + "browser": { + "types": "./dist/browser/models/apiCollectionsAPI/index.d.ts", + "default": "./dist/browser/models/apiCollectionsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/apiCollectionsAPI/index.d.ts", + "default": "./dist/react-native/models/apiCollectionsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/apiCollectionsAPI/index.d.ts", + "default": "./dist/esm/models/apiCollectionsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/apiCollectionsAPI/index.d.ts", + "default": "./dist/commonjs/models/apiCollectionsAPI/index.js" + } + }, + "./models/applicationsAPI": { + "browser": { + "types": "./dist/browser/models/applicationsAPI/index.d.ts", + "default": "./dist/browser/models/applicationsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/applicationsAPI/index.d.ts", + "default": "./dist/react-native/models/applicationsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/applicationsAPI/index.d.ts", + "default": "./dist/esm/models/applicationsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/applicationsAPI/index.d.ts", + "default": "./dist/commonjs/models/applicationsAPI/index.js" + } + }, + "./models/assessmentAPI": { + "browser": { + "types": "./dist/browser/models/assessmentAPI/index.d.ts", + "default": "./dist/browser/models/assessmentAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/assessmentAPI/index.d.ts", + "default": "./dist/react-native/models/assessmentAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/assessmentAPI/index.d.ts", + "default": "./dist/esm/models/assessmentAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/assessmentAPI/index.d.ts", + "default": "./dist/commonjs/models/assessmentAPI/index.js" + } + }, + "./models/atpSettingsAPI": { + "browser": { + "types": "./dist/browser/models/atpSettingsAPI/index.d.ts", + "default": "./dist/browser/models/atpSettingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/atpSettingsAPI/index.d.ts", + "default": "./dist/react-native/models/atpSettingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/atpSettingsAPI/index.d.ts", + "default": "./dist/esm/models/atpSettingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/atpSettingsAPI/index.d.ts", + "default": "./dist/commonjs/models/atpSettingsAPI/index.js" + } + }, + "./models/automationsAPI": { + "browser": { + "types": "./dist/browser/models/automationsAPI/index.d.ts", + "default": "./dist/browser/models/automationsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/automationsAPI/index.d.ts", + "default": "./dist/react-native/models/automationsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/automationsAPI/index.d.ts", + "default": "./dist/esm/models/automationsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/automationsAPI/index.d.ts", + "default": "./dist/commonjs/models/automationsAPI/index.js" + } + }, + "./models/common": { + "browser": { + "types": "./dist/browser/models/common/index.d.ts", + "default": "./dist/browser/models/common/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/common/index.d.ts", + "default": "./dist/react-native/models/common/index.js" + }, + "import": { + "types": "./dist/esm/models/common/index.d.ts", + "default": "./dist/esm/models/common/index.js" + }, + "require": { + "types": "./dist/commonjs/models/common/index.d.ts", + "default": "./dist/commonjs/models/common/index.js" + } + }, + "./models/complianceResultsAPI": { + "browser": { + "types": "./dist/browser/models/complianceResultsAPI/index.d.ts", + "default": "./dist/browser/models/complianceResultsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/complianceResultsAPI/index.d.ts", + "default": "./dist/react-native/models/complianceResultsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/complianceResultsAPI/index.d.ts", + "default": "./dist/esm/models/complianceResultsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/complianceResultsAPI/index.d.ts", + "default": "./dist/commonjs/models/complianceResultsAPI/index.js" + } + }, + "./models/defenderForStorageAPI": { + "browser": { + "types": "./dist/browser/models/defenderForStorageAPI/index.d.ts", + "default": "./dist/browser/models/defenderForStorageAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/defenderForStorageAPI/index.d.ts", + "default": "./dist/react-native/models/defenderForStorageAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/defenderForStorageAPI/index.d.ts", + "default": "./dist/esm/models/defenderForStorageAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/defenderForStorageAPI/index.d.ts", + "default": "./dist/commonjs/models/defenderForStorageAPI/index.js" + } + }, + "./models/governanceAPI": { + "browser": { + "types": "./dist/browser/models/governanceAPI/index.d.ts", + "default": "./dist/browser/models/governanceAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/governanceAPI/index.d.ts", + "default": "./dist/react-native/models/governanceAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/governanceAPI/index.d.ts", + "default": "./dist/esm/models/governanceAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/governanceAPI/index.d.ts", + "default": "./dist/commonjs/models/governanceAPI/index.js" + } + }, + "./models/healthReportsAPI": { + "browser": { + "types": "./dist/browser/models/healthReportsAPI/index.d.ts", + "default": "./dist/browser/models/healthReportsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/healthReportsAPI/index.d.ts", + "default": "./dist/react-native/models/healthReportsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/healthReportsAPI/index.d.ts", + "default": "./dist/esm/models/healthReportsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/healthReportsAPI/index.d.ts", + "default": "./dist/commonjs/models/healthReportsAPI/index.js" + } + }, + "./models/ioTSecurityAPI": { + "browser": { + "types": "./dist/browser/models/ioTSecurityAPI/index.d.ts", + "default": "./dist/browser/models/ioTSecurityAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/ioTSecurityAPI/index.d.ts", + "default": "./dist/react-native/models/ioTSecurityAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/ioTSecurityAPI/index.d.ts", + "default": "./dist/esm/models/ioTSecurityAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/ioTSecurityAPI/index.d.ts", + "default": "./dist/commonjs/models/ioTSecurityAPI/index.js" + } + }, + "./models/legacySettingsAPI": { + "browser": { + "types": "./dist/browser/models/legacySettingsAPI/index.d.ts", + "default": "./dist/browser/models/legacySettingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/legacySettingsAPI/index.d.ts", + "default": "./dist/react-native/models/legacySettingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/legacySettingsAPI/index.d.ts", + "default": "./dist/esm/models/legacySettingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/legacySettingsAPI/index.d.ts", + "default": "./dist/commonjs/models/legacySettingsAPI/index.js" + } + }, + "./models/locationsAPI": { + "browser": { + "types": "./dist/browser/models/locationsAPI/index.d.ts", + "default": "./dist/browser/models/locationsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/locationsAPI/index.d.ts", + "default": "./dist/react-native/models/locationsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/locationsAPI/index.d.ts", + "default": "./dist/esm/models/locationsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/locationsAPI/index.d.ts", + "default": "./dist/commonjs/models/locationsAPI/index.js" + } + }, + "./models/mdeOnboardingAPI": { + "browser": { + "types": "./dist/browser/models/mdeOnboardingAPI/index.d.ts", + "default": "./dist/browser/models/mdeOnboardingAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/mdeOnboardingAPI/index.d.ts", + "default": "./dist/react-native/models/mdeOnboardingAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/mdeOnboardingAPI/index.d.ts", + "default": "./dist/esm/models/mdeOnboardingAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/mdeOnboardingAPI/index.d.ts", + "default": "./dist/commonjs/models/mdeOnboardingAPI/index.js" + } + }, + "./models/pricingsAPI": { + "browser": { + "types": "./dist/browser/models/pricingsAPI/index.d.ts", + "default": "./dist/browser/models/pricingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/pricingsAPI/index.d.ts", + "default": "./dist/react-native/models/pricingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/pricingsAPI/index.d.ts", + "default": "./dist/esm/models/pricingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/pricingsAPI/index.d.ts", + "default": "./dist/commonjs/models/pricingsAPI/index.js" + } + }, + "./models/privateLinksAPI": { + "browser": { + "types": "./dist/browser/models/privateLinksAPI/index.d.ts", + "default": "./dist/browser/models/privateLinksAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/privateLinksAPI/index.d.ts", + "default": "./dist/react-native/models/privateLinksAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/privateLinksAPI/index.d.ts", + "default": "./dist/esm/models/privateLinksAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/privateLinksAPI/index.d.ts", + "default": "./dist/commonjs/models/privateLinksAPI/index.js" + } + }, + "./models/regulatoryComplianceAPI": { + "browser": { + "types": "./dist/browser/models/regulatoryComplianceAPI/index.d.ts", + "default": "./dist/browser/models/regulatoryComplianceAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/regulatoryComplianceAPI/index.d.ts", + "default": "./dist/react-native/models/regulatoryComplianceAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/regulatoryComplianceAPI/index.d.ts", + "default": "./dist/esm/models/regulatoryComplianceAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/regulatoryComplianceAPI/index.d.ts", + "default": "./dist/commonjs/models/regulatoryComplianceAPI/index.js" + } + }, + "./models/secureScoreAPI": { + "browser": { + "types": "./dist/browser/models/secureScoreAPI/index.d.ts", + "default": "./dist/browser/models/secureScoreAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/secureScoreAPI/index.d.ts", + "default": "./dist/react-native/models/secureScoreAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/secureScoreAPI/index.d.ts", + "default": "./dist/esm/models/secureScoreAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/secureScoreAPI/index.d.ts", + "default": "./dist/commonjs/models/secureScoreAPI/index.js" + } + }, + "./models/securityConnectorsAPI": { + "browser": { + "types": "./dist/browser/models/securityConnectorsAPI/index.d.ts", + "default": "./dist/browser/models/securityConnectorsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securityConnectorsAPI/index.d.ts", + "default": "./dist/react-native/models/securityConnectorsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/securityConnectorsAPI/index.d.ts", + "default": "./dist/esm/models/securityConnectorsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securityConnectorsAPI/index.d.ts", + "default": "./dist/commonjs/models/securityConnectorsAPI/index.js" + } + }, + "./models/securityConnectorsDevOpsAPI": { + "browser": { + "types": "./dist/browser/models/securityConnectorsDevOpsAPI/index.d.ts", + "default": "./dist/browser/models/securityConnectorsDevOpsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securityConnectorsDevOpsAPI/index.d.ts", + "default": "./dist/react-native/models/securityConnectorsDevOpsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/securityConnectorsDevOpsAPI/index.d.ts", + "default": "./dist/esm/models/securityConnectorsDevOpsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securityConnectorsDevOpsAPI/index.d.ts", + "default": "./dist/commonjs/models/securityConnectorsDevOpsAPI/index.js" + } + }, + "./models/securityManagementClient": { + "browser": { + "types": "./dist/browser/models/securityManagementClient/index.d.ts", + "default": "./dist/browser/models/securityManagementClient/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securityManagementClient/index.d.ts", + "default": "./dist/react-native/models/securityManagementClient/index.js" + }, + "import": { + "types": "./dist/esm/models/securityManagementClient/index.d.ts", + "default": "./dist/esm/models/securityManagementClient/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securityManagementClient/index.d.ts", + "default": "./dist/commonjs/models/securityManagementClient/index.js" + } + }, + "./models/securityOperatorsAPI": { + "browser": { + "types": "./dist/browser/models/securityOperatorsAPI/index.d.ts", + "default": "./dist/browser/models/securityOperatorsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securityOperatorsAPI/index.d.ts", + "default": "./dist/react-native/models/securityOperatorsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/securityOperatorsAPI/index.d.ts", + "default": "./dist/esm/models/securityOperatorsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securityOperatorsAPI/index.d.ts", + "default": "./dist/commonjs/models/securityOperatorsAPI/index.js" + } + }, + "./models/securitySolutionsAPI": { + "browser": { + "types": "./dist/browser/models/securitySolutionsAPI/index.d.ts", + "default": "./dist/browser/models/securitySolutionsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securitySolutionsAPI/index.d.ts", + "default": "./dist/react-native/models/securitySolutionsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/securitySolutionsAPI/index.d.ts", + "default": "./dist/esm/models/securitySolutionsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securitySolutionsAPI/index.d.ts", + "default": "./dist/commonjs/models/securitySolutionsAPI/index.js" + } + }, + "./models/securityStandardsAPI": { + "browser": { + "types": "./dist/browser/models/securityStandardsAPI/index.d.ts", + "default": "./dist/browser/models/securityStandardsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/securityStandardsAPI/index.d.ts", + "default": "./dist/react-native/models/securityStandardsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/securityStandardsAPI/index.d.ts", + "default": "./dist/esm/models/securityStandardsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/securityStandardsAPI/index.d.ts", + "default": "./dist/commonjs/models/securityStandardsAPI/index.js" + } + }, + "./models/sensitivitySettingsAPI": { + "browser": { + "types": "./dist/browser/models/sensitivitySettingsAPI/index.d.ts", + "default": "./dist/browser/models/sensitivitySettingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/sensitivitySettingsAPI/index.d.ts", + "default": "./dist/react-native/models/sensitivitySettingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/sensitivitySettingsAPI/index.d.ts", + "default": "./dist/esm/models/sensitivitySettingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/sensitivitySettingsAPI/index.d.ts", + "default": "./dist/commonjs/models/sensitivitySettingsAPI/index.js" + } + }, + "./models/serverVulnerabilityAssessmentsSettingsAPI": { + "browser": { + "types": "./dist/browser/models/serverVulnerabilityAssessmentsSettingsAPI/index.d.ts", + "default": "./dist/browser/models/serverVulnerabilityAssessmentsSettingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/serverVulnerabilityAssessmentsSettingsAPI/index.d.ts", + "default": "./dist/react-native/models/serverVulnerabilityAssessmentsSettingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/serverVulnerabilityAssessmentsSettingsAPI/index.d.ts", + "default": "./dist/esm/models/serverVulnerabilityAssessmentsSettingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/serverVulnerabilityAssessmentsSettingsAPI/index.d.ts", + "default": "./dist/commonjs/models/serverVulnerabilityAssessmentsSettingsAPI/index.js" + } + }, + "./models/settingsAPI": { + "browser": { + "types": "./dist/browser/models/settingsAPI/index.d.ts", + "default": "./dist/browser/models/settingsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/settingsAPI/index.d.ts", + "default": "./dist/react-native/models/settingsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/settingsAPI/index.d.ts", + "default": "./dist/esm/models/settingsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/settingsAPI/index.d.ts", + "default": "./dist/commonjs/models/settingsAPI/index.js" + } + }, + "./models/sqlVulnerabilityAssessmentsAPI": { + "browser": { + "types": "./dist/browser/models/sqlVulnerabilityAssessmentsAPI/index.d.ts", + "default": "./dist/browser/models/sqlVulnerabilityAssessmentsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/sqlVulnerabilityAssessmentsAPI/index.d.ts", + "default": "./dist/react-native/models/sqlVulnerabilityAssessmentsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/sqlVulnerabilityAssessmentsAPI/index.d.ts", + "default": "./dist/esm/models/sqlVulnerabilityAssessmentsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/sqlVulnerabilityAssessmentsAPI/index.d.ts", + "default": "./dist/commonjs/models/sqlVulnerabilityAssessmentsAPI/index.js" + } + }, + "./models/standardsAPI": { + "browser": { + "types": "./dist/browser/models/standardsAPI/index.d.ts", + "default": "./dist/browser/models/standardsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/standardsAPI/index.d.ts", + "default": "./dist/react-native/models/standardsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/standardsAPI/index.d.ts", + "default": "./dist/esm/models/standardsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/standardsAPI/index.d.ts", + "default": "./dist/commonjs/models/standardsAPI/index.js" + } + }, + "./models/subAssessmentsAPI": { + "browser": { + "types": "./dist/browser/models/subAssessmentsAPI/index.d.ts", + "default": "./dist/browser/models/subAssessmentsAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/subAssessmentsAPI/index.d.ts", + "default": "./dist/react-native/models/subAssessmentsAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/subAssessmentsAPI/index.d.ts", + "default": "./dist/esm/models/subAssessmentsAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/subAssessmentsAPI/index.d.ts", + "default": "./dist/commonjs/models/subAssessmentsAPI/index.js" + } + }, + "./models/tasksAPI": { + "browser": { + "types": "./dist/browser/models/tasksAPI/index.d.ts", + "default": "./dist/browser/models/tasksAPI/index.js" + }, + "react-native": { + "types": "./dist/react-native/models/tasksAPI/index.d.ts", + "default": "./dist/react-native/models/tasksAPI/index.js" + }, + "import": { + "types": "./dist/esm/models/tasksAPI/index.d.ts", + "default": "./dist/esm/models/tasksAPI/index.js" + }, + "require": { + "types": "./dist/commonjs/models/tasksAPI/index.d.ts", + "default": "./dist/commonjs/models/tasksAPI/index.js" + } + } }, "keywords": [ "node", "azure", + "cloud", "typescript", "browser", "isomorphic" ], + "author": "Microsoft Corporation", "license": "MIT", - "main": "./dist/commonjs/index.js", - "module": "./dist/esm/index.js", - "types": "./dist/commonjs/index.d.ts", + "files": [ + "dist/", + "!dist/**/*.d.*ts.map", + "README.md", + "LICENSE" + ], + "sdk-type": "mgmt", + "repository": "github:Azure/azure-sdk-for-js", + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security/README.md", + "prettier": "@azure/eslint-plugin-azure-sdk/prettier.json", + "//metadata": { + "constantPaths": [ + { + "path": "src/api/securityCenterContext.ts", + "prefix": "userAgentInfo" + } + ] + }, + "dependencies": { + "@azure/core-util": "^1.12.0", + "@azure-rest/core-client": "^2.3.1", + "@azure/abort-controller": "^2.1.2", + "@azure/core-auth": "^1.9.0", + "@azure/core-lro": "^3.1.0", + "@azure/core-rest-pipeline": "^1.20.0", + "@azure/logger": "^1.2.0", + "tslib": "^2.8.1" + }, "devDependencies": { "@azure-tools/test-credential": "workspace:^", "@azure-tools/test-recorder": "workspace:^", "@azure-tools/test-utils-vitest": "workspace:^", "@azure/dev-tool": "workspace:^", + "@azure/eslint-plugin-azure-sdk": "workspace:^", "@azure/identity": "catalog:internal", - "@azure/logger": "^1.1.4", "@types/node": "catalog:", + "cross-env": "catalog:", + "eslint": "catalog:", + "prettier": "catalog:", + "rimraf": "catalog:", "@vitest/browser-playwright": "catalog:testing", "@vitest/coverage-istanbul": "catalog:testing", - "cross-env": "catalog:", "dotenv": "catalog:testing", "playwright": "catalog:testing", - "react-native": "catalog:testing", - "rimraf": "catalog:", "typescript": "catalog:", "vitest": "catalog:testing" }, - "repository": { - "type": "git", - "url": "https://github.com/Azure/azure-sdk-for-js.git" - }, - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "files": [ - "dist/", - "README.md", - "LICENSE", - "review/", - "CHANGELOG.md" - ], "scripts": { - "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api", - "build:samples": "tsc -p tsconfig.samples.json && dev-tool samples publish -f", - "check-format": "echo skipped", "clean": "rimraf --glob dist dist-browser dist-esm test-dist temp types *.tgz *.log", - "execute:samples": "echo skipped", - "extract-api": "dev-tool run extract-api", - "format": "echo skipped", - "lint": "echo skipped", + "extract-api": "rimraf review && dev-tool run extract-api", "pack": "pnpm pack 2>&1", + "lint": "echo skipped", + "lint:fix": "echo skipped", + "build:samples": "echo skipped", + "check-format": "prettier --list-different --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", + "execute:samples": "echo skipped", + "format": "prettier --write --config ../../../.prettierrc.json --ignore-path ../../../.prettierignore \"src/**/*.{ts,cts,mts}\" \"test/**/*.{ts,cts,mts}\" \"*.{js,cjs,mjs,json}\" ", + "generate:client": "echo skipped", + "test:browser": "dev-tool run build-test && dev-tool run test:vitest --browser", + "build": "npm run clean && dev-tool run build-package && dev-tool run extract-api", + "test:node": "dev-tool run test:vitest", + "test:node:esm": "dev-tool run test:vitest --esm", "test": "npm run test:node && npm run test:browser", - "test:browser": "echo skipped", - "test:node": "dev-tool run build-test --no-browser-test && dev-tool run test:vitest", "update-snippets": "dev-tool run update-snippets" - }, - "sideEffects": false, - "//metadata": { - "constantPaths": [ - { - "path": "src/securityCenter.ts", - "prefix": "packageDetails" - } - ] - }, - "autoPublish": true, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security", - "//sampleConfiguration": { - "productName": "", - "productSlugs": [ - "azure" - ], - "disableDocsMs": true, - "apiRefLink": "https://learn.microsoft.com/javascript/api/@azure/arm-security?view=azure-node-preview" - }, - "type": "module", - "browser": "./dist/browser/index.js", - "react-native": "./dist/react-native/index.js", - "exports": { - "./package.json": "./package.json", - ".": { - "browser": { - "types": "./dist/browser/index.d.ts", - "default": "./dist/browser/index.js" - }, - "react-native": { - "types": "./dist/react-native/index.d.ts", - "default": "./dist/react-native/index.js" - }, - "import": { - "types": "./dist/esm/index.d.ts", - "default": "./dist/esm/index.js" - }, - "require": { - "types": "./dist/commonjs/index.d.ts", - "default": "./dist/commonjs/index.js" - } - } - }, - "imports": { - "#platform/*": { - "react-native": "./src/*-react-native.mts", - "browser": "./src/*-browser.mts", - "default": "./src/*.ts" - } } } diff --git a/sdk/security/arm-security/review/arm-security-api-node.api.md b/sdk/security/arm-security/review/arm-security-api-node.api.md new file mode 100644 index 000000000000..045b7dfbcacf --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-api-node.api.md @@ -0,0 +1,26 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +import { Client } from '@azure-rest/core-client'; +import { ClientOptions } from '@azure-rest/core-client'; +import { TokenCredential } from '@azure/core-auth'; + +// @public (undocumented) +export function createSecurityCenter(credential: TokenCredential, subscriptionId: string, options?: SecurityCenterOptionalParams): SecurityCenterContext; + +// @public (undocumented) +export interface SecurityCenterContext extends Client { + subscriptionId: string; +} + +// @public +export interface SecurityCenterOptionalParams extends ClientOptions { + cloudSetting?: AzureSupportedClouds; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-alertsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-alertsAPI-node.api.md new file mode 100644 index 000000000000..c468480feb5c --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-alertsAPI-node.api.md @@ -0,0 +1,204 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface Alert extends ProxyResource { + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly alertUri?: string; + readonly compromisedEntity?: string; + readonly correlationKey?: string; + readonly description?: string; + readonly endTimeUtc?: Date; + readonly entities?: AlertEntity[]; + readonly extendedLinks?: Record[]; + extendedProperties?: Record; + readonly intent?: Intent; + readonly isIncident?: boolean; + readonly processingEndTimeUtc?: Date; + readonly productComponentName?: string; + readonly productName?: string; + readonly remediationSteps?: string[]; + readonly resourceIdentifiers?: ResourceIdentifierUnion[]; + readonly severity?: AlertSeverity; + readonly startTimeUtc?: Date; + readonly status?: AlertStatus; + readonly subTechniques?: string[]; + supportingEvidence?: AlertPropertiesSupportingEvidence; + readonly systemAlertId?: string; + readonly techniques?: string[]; + readonly timeGeneratedUtc?: Date; + readonly vendorName?: string; + readonly version?: string; +} + +// @public +export interface AlertEntity { + additionalProperties?: Record; + readonly type?: string; +} + +// @public +export interface AlertProperties { + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly alertUri?: string; + readonly compromisedEntity?: string; + readonly correlationKey?: string; + readonly description?: string; + readonly endTimeUtc?: Date; + readonly entities?: AlertEntity[]; + readonly extendedLinks?: Record[]; + extendedProperties?: Record; + readonly intent?: Intent; + readonly isIncident?: boolean; + readonly processingEndTimeUtc?: Date; + readonly productComponentName?: string; + readonly productName?: string; + readonly remediationSteps?: string[]; + readonly resourceIdentifiers?: ResourceIdentifierUnion[]; + readonly severity?: AlertSeverity; + readonly startTimeUtc?: Date; + readonly status?: AlertStatus; + readonly subTechniques?: string[]; + supportingEvidence?: AlertPropertiesSupportingEvidence; + readonly systemAlertId?: string; + readonly techniques?: string[]; + readonly timeGeneratedUtc?: Date; + readonly vendorName?: string; + readonly version?: string; +} + +// @public +export interface AlertPropertiesSupportingEvidence { + additionalProperties?: Record; + readonly type?: string; +} + +// @public +export type AlertSeverity = string; + +// @public +export interface AlertSimulatorBundlesRequestProperties extends AlertSimulatorRequestProperties { + bundles?: BundleType[]; + kind: "Bundles"; +} + +// @public +export interface AlertSimulatorRequestBody { + properties?: AlertSimulatorRequestPropertiesUnion; +} + +// @public +export interface AlertSimulatorRequestProperties { + additionalProperties?: Record; + kind: Kind; +} + +// @public +export type AlertSimulatorRequestPropertiesUnion = AlertSimulatorBundlesRequestProperties | AlertSimulatorRequestProperties; + +// @public +export type AlertStatus = string; + +// @public +export interface AzureResourceIdentifier extends ResourceIdentifier { + readonly azureResourceId?: string; + type: "AzureResource"; +} + +// @public +export type BundleType = string; + +// @public +export type Intent = string; + +// @public +export type Kind = string; + +// @public +export enum KnownAlertSeverity { + High = "High", + Informational = "Informational", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownAlertStatus { + Active = "Active", + Dismissed = "Dismissed", + InProgress = "InProgress", + Resolved = "Resolved" +} + +// @public +export enum KnownBundleType { + AppServices = "AppServices", + CosmosDbs = "CosmosDbs", + DNS = "DNS", + KeyVaults = "KeyVaults", + KubernetesService = "KubernetesService", + ResourceManager = "ResourceManager", + SqlServers = "SqlServers", + StorageAccounts = "StorageAccounts", + VirtualMachines = "VirtualMachines" +} + +// @public +export enum KnownIntent { + Collection = "Collection", + CommandAndControl = "CommandAndControl", + CredentialAccess = "CredentialAccess", + DefenseEvasion = "DefenseEvasion", + Discovery = "Discovery", + Execution = "Execution", + Exfiltration = "Exfiltration", + Exploitation = "Exploitation", + Impact = "Impact", + InitialAccess = "InitialAccess", + LateralMovement = "LateralMovement", + Persistence = "Persistence", + PreAttack = "PreAttack", + PrivilegeEscalation = "PrivilegeEscalation", + Probing = "Probing", + Unknown = "Unknown" +} + +// @public +export enum KnownKind { + Bundles = "Bundles" +} + +// @public +export enum KnownResourceIdentifierType { + AzureResource = "AzureResource", + LogAnalytics = "LogAnalytics" +} + +// @public +export interface LogAnalyticsIdentifier extends ResourceIdentifier { + readonly agentId?: string; + type: "LogAnalytics"; + readonly workspaceId?: string; + readonly workspaceResourceGroup?: string; + readonly workspaceSubscriptionId?: string; +} + +// @public +export interface ResourceIdentifier { + type: ResourceIdentifierType; +} + +// @public +export type ResourceIdentifierType = string; + +// @public +export type ResourceIdentifierUnion = AzureResourceIdentifier | LogAnalyticsIdentifier | ResourceIdentifier; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-alertsSuppressionRulesAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-alertsSuppressionRulesAPI-node.api.md new file mode 100644 index 000000000000..8a4fe50d861a --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-alertsSuppressionRulesAPI-node.api.md @@ -0,0 +1,45 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AlertsSuppressionRule extends ProxyResource { + alertType?: string; + comment?: string; + expirationDateUtc?: Date; + readonly lastModifiedUtc?: Date; + reason?: string; + state?: RuleState; + suppressionAlertsScope?: SuppressionAlertsScope; +} + +// @public +export interface AlertsSuppressionRuleProperties { + alertType: string; + comment?: string; + expirationDateUtc?: Date; + readonly lastModifiedUtc?: Date; + reason: string; + state: RuleState; + suppressionAlertsScope?: SuppressionAlertsScope; +} + +// @public +export type RuleState = "Enabled" | "Disabled" | "Expired"; + +// @public +export interface ScopeElement { + additionalProperties?: Record; + field?: string; +} + +// @public +export interface SuppressionAlertsScope { + allOf: ScopeElement[]; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-apiCollectionsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-apiCollectionsAPI-node.api.md new file mode 100644 index 000000000000..291bee447bf0 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-apiCollectionsAPI-node.api.md @@ -0,0 +1,37 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface ApiCollection extends ExtensionResource { + readonly baseUrl?: string; + readonly discoveredVia?: string; + readonly displayName?: string; + readonly numberOfApiEndpoints?: number; + readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; + readonly numberOfExternalApiEndpoints?: number; + readonly numberOfInactiveApiEndpoints?: number; + readonly numberOfUnauthenticatedApiEndpoints?: number; + readonly provisioningState?: ProvisioningState; + readonly sensitivityLabel?: string; +} + +// @public +export interface ApiCollectionProperties { + readonly baseUrl?: string; + readonly discoveredVia?: string; + readonly displayName?: string; + readonly numberOfApiEndpoints?: number; + readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; + readonly numberOfExternalApiEndpoints?: number; + readonly numberOfInactiveApiEndpoints?: number; + readonly numberOfUnauthenticatedApiEndpoints?: number; + readonly provisioningState?: ProvisioningState; + readonly sensitivityLabel?: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-applicationsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-applicationsAPI-node.api.md new file mode 100644 index 000000000000..3a4798e524af --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-applicationsAPI-node.api.md @@ -0,0 +1,33 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface Application extends ProxyResource { + conditionSets?: any[]; + description?: string; + displayName?: string; + sourceResourceType?: ApplicationSourceResourceType; +} + +// @public +export interface ApplicationProperties { + conditionSets: any[]; + description?: string; + displayName?: string; + sourceResourceType: ApplicationSourceResourceType; +} + +// @public +export type ApplicationSourceResourceType = string; + +// @public +export enum KnownApplicationSourceResourceType { + Assessments = "Assessments" +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-assessmentAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-assessmentAPI-node.api.md new file mode 100644 index 000000000000..d4ab86600930 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-assessmentAPI-node.api.md @@ -0,0 +1,436 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AssessmentLinks { + readonly azurePortalUri?: string; +} + +// @public +export interface AssessmentStatus { + cause?: string; + code: AssessmentStatusCode; + description?: string; +} + +// @public +export type AssessmentStatusCode = string; + +// @public +export interface AssessmentStatusResponse extends AssessmentStatus { + readonly firstEvaluationDate?: Date; + readonly statusChangeDate?: Date; +} + +// @public +export type AssessmentType = string; + +// @public +export interface AzureResourceDetails extends ResourceDetails { + readonly id?: string; + source: "Azure"; +} + +// @public +export type Categories = string; + +// @public +export type ExpandEnum = string; + +// @public +export type ImplementationEffort = string; + +// @public +export enum KnownAssessmentStatusCode { + Healthy = "Healthy", + NotApplicable = "NotApplicable", + Unhealthy = "Unhealthy" +} + +// @public +export enum KnownAssessmentType { + BuiltIn = "BuiltIn", + BuiltInPolicy = "BuiltInPolicy", + Custom = "Custom", + CustomerManaged = "CustomerManaged", + CustomPolicy = "CustomPolicy", + DynamicBuiltIn = "DynamicBuiltIn", + ManualBuiltIn = "ManualBuiltIn", + ManualBuiltInPolicy = "ManualBuiltInPolicy", + ManualCustomPolicy = "ManualCustomPolicy", + Unknown = "Unknown", + VerifiedPartner = "VerifiedPartner" +} + +// @public +export enum KnownCategories { + AppServices = "AppServices", + Compute = "Compute", + Container = "Container", + Data = "Data", + IdentityAndAccess = "IdentityAndAccess", + IoT = "IoT", + Networking = "Networking" +} + +// @public +export enum KnownExpandEnum { + Links = "links", + Metadata = "metadata" +} + +// @public +export enum KnownImplementationEffort { + High = "High", + Low = "Low", + Moderate = "Moderate" +} + +// @public +export enum KnownRiskLevel { + Critical = "Critical", + High = "High", + Low = "Low", + Medium = "Medium", + None = "None" +} + +// @public +export enum KnownTactics { + Collection = "Collection", + CommandAndControl = "Command and Control", + CredentialAccess = "Credential Access", + DefenseEvasion = "Defense Evasion", + Discovery = "Discovery", + Execution = "Execution", + Exfiltration = "Exfiltration", + Impact = "Impact", + InitialAccess = "Initial Access", + LateralMovement = "Lateral Movement", + Persistence = "Persistence", + PrivilegeEscalation = "Privilege Escalation", + Reconnaissance = "Reconnaissance", + ResourceDevelopment = "Resource Development" +} + +// @public +export enum KnownTechniques { + AbuseElevationControlMechanism = "Abuse Elevation Control Mechanism", + AccessTokenManipulation = "Access Token Manipulation", + AccountDiscovery = "Account Discovery", + AccountManipulation = "Account Manipulation", + ActiveScanning = "Active Scanning", + ApplicationLayerProtocol = "Application Layer Protocol", + AudioCapture = "Audio Capture", + BootOrLogonAutostartExecution = "Boot or Logon Autostart Execution", + BootOrLogonInitializationScripts = "Boot or Logon Initialization Scripts", + BruteForce = "Brute Force", + CloudInfrastructureDiscovery = "Cloud Infrastructure Discovery", + CloudServiceDashboard = "Cloud Service Dashboard", + CloudServiceDiscovery = "Cloud Service Discovery", + CommandAndScriptingInterpreter = "Command and Scripting Interpreter", + CompromiseClientSoftwareBinary = "Compromise Client Software Binary", + CompromiseInfrastructure = "Compromise Infrastructure", + ContainerAndResourceDiscovery = "Container and Resource Discovery", + CreateAccount = "Create Account", + CreateOrModifySystemProcess = "Create or Modify System Process", + CredentialsFromPasswordStores = "Credentials from Password Stores", + DataDestruction = "Data Destruction", + DataEncryptedForImpact = "Data Encrypted for Impact", + DataFromCloudStorageObject = "Data from Cloud Storage Object", + DataFromConfigurationRepository = "Data from Configuration Repository", + DataFromInformationRepositories = "Data from Information Repositories", + DataFromLocalSystem = "Data from Local System", + DataManipulation = "Data Manipulation", + DataStaged = "Data Staged", + Defacement = "Defacement", + DeobfuscateDecodeFilesOrInformation = "Deobfuscate/Decode Files or Information", + DiskWipe = "Disk Wipe", + DomainTrustDiscovery = "Domain Trust Discovery", + DriveByCompromise = "Drive-by Compromise", + DynamicResolution = "Dynamic Resolution", + EndpointDenialOfService = "Endpoint Denial of Service", + EventTriggeredExecution = "Event Triggered Execution", + ExfiltrationOverAlternativeProtocol = "Exfiltration Over Alternative Protocol", + ExploitationForClientExecution = "Exploitation for Client Execution", + ExploitationForCredentialAccess = "Exploitation for Credential Access", + ExploitationForDefenseEvasion = "Exploitation for Defense Evasion", + ExploitationForPrivilegeEscalation = "Exploitation for Privilege Escalation", + ExploitationOfRemoteServices = "Exploitation of Remote Services", + ExploitPublicFacingApplication = "Exploit Public-Facing Application", + ExternalRemoteServices = "External Remote Services", + FallbackChannels = "Fallback Channels", + FileAndDirectoryDiscovery = "File and Directory Discovery", + FileAndDirectoryPermissionsModification = "File and Directory Permissions Modification", + GatherVictimNetworkInformation = "Gather Victim Network Information", + HideArtifacts = "Hide Artifacts", + HijackExecutionFlow = "Hijack Execution Flow", + ImpairDefenses = "Impair Defenses", + ImplantContainerImage = "Implant Container Image", + IndicatorRemovalOnHost = "Indicator Removal on Host", + IndirectCommandExecution = "Indirect Command Execution", + IngressToolTransfer = "Ingress Tool Transfer", + InputCapture = "Input Capture", + InterProcessCommunication = "Inter-Process Communication", + LateralToolTransfer = "Lateral Tool Transfer", + ManInTheMiddle = "Man-in-the-Middle", + Masquerading = "Masquerading", + ModifyAuthenticationProcess = "Modify Authentication Process", + ModifyRegistry = "Modify Registry", + NetworkDenialOfService = "Network Denial of Service", + NetworkServiceScanning = "Network Service Scanning", + NetworkSniffing = "Network Sniffing", + NonApplicationLayerProtocol = "Non-Application Layer Protocol", + NonStandardPort = "Non-Standard Port", + ObfuscatedFilesOrInformation = "Obfuscated Files or Information", + ObtainCapabilities = "Obtain Capabilities", + OfficeApplicationStartup = "Office Application Startup", + OSCredentialDumping = "OS Credential Dumping", + PermissionGroupsDiscovery = "Permission Groups Discovery", + Phishing = "Phishing", + PreOSBoot = "Pre-OS Boot", + ProcessDiscovery = "Process Discovery", + ProcessInjection = "Process Injection", + ProtocolTunneling = "Protocol Tunneling", + Proxy = "Proxy", + QueryRegistry = "Query Registry", + RemoteAccessSoftware = "Remote Access Software", + RemoteServices = "Remote Services", + RemoteServiceSessionHijacking = "Remote Service Session Hijacking", + RemoteSystemDiscovery = "Remote System Discovery", + ResourceHijacking = "Resource Hijacking", + ScheduledTaskJob = "Scheduled Task/Job", + ScreenCapture = "Screen Capture", + SearchVictimOwnedWebsites = "Search Victim-Owned Websites", + ServerSoftwareComponent = "Server Software Component", + ServiceStop = "Service Stop", + SignedBinaryProxyExecution = "Signed Binary Proxy Execution", + SoftwareDeploymentTools = "Software Deployment Tools", + SQLStoredProcedures = "SQL Stored Procedures", + StealOrForgeKerberosTickets = "Steal or Forge Kerberos Tickets", + SubvertTrustControls = "Subvert Trust Controls", + SupplyChainCompromise = "Supply Chain Compromise", + SystemInformationDiscovery = "System Information Discovery", + TaintSharedContent = "Taint Shared Content", + TrafficSignaling = "Traffic Signaling", + TransferDataToCloudAccount = "Transfer Data to Cloud Account", + TrustedRelationship = "Trusted Relationship", + UnsecuredCredentials = "Unsecured Credentials", + UserExecution = "User Execution", + ValidAccounts = "Valid Accounts", + WindowsManagementInstrumentation = "Windows Management Instrumentation" +} + +// @public +export enum KnownThreats { + AccountBreach = "accountBreach", + DataExfiltration = "dataExfiltration", + DataSpillage = "dataSpillage", + DenialOfService = "denialOfService", + ElevationOfPrivilege = "elevationOfPrivilege", + MaliciousInsider = "maliciousInsider", + MissingCoverage = "missingCoverage", + ThreatResistance = "threatResistance" +} + +// @public +export enum KnownUserImpact { + High = "High", + Low = "Low", + Moderate = "Moderate" +} + +// @public +export interface OnPremiseResourceDetails extends ResourceDetails { + machineName: string; + // (undocumented) + source: "OnPremiseResourceDetails" | "OnPremiseSql"; + sourceComputerId: string; + vmuuid: string; + workspaceId: string; +} + +// @public +export type OnPremiseResourceDetailsUnion = OnPremiseSqlResourceDetails | OnPremiseResourceDetails; + +// @public +export interface OnPremiseSqlResourceDetails extends OnPremiseResourceDetails { + databaseName: string; + serverName: string; + source: "OnPremiseSql"; +} + +// @public +export type RiskLevel = string; + +// @public +export interface SecurityAssessment extends Resource { + additionalData?: Record; + readonly displayName?: string; + readonly links?: AssessmentLinks; + metadata?: SecurityAssessmentMetadataProperties; + partnersData?: SecurityAssessmentPartnerData; + resourceDetails?: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; + status?: AssessmentStatus; +} + +// @public +export interface SecurityAssessmentMetadataPartnerData { + partnerName: string; + productName?: string; + secret: string; +} + +// @public +export interface SecurityAssessmentMetadataProperties { + assessmentType: AssessmentType; + // (undocumented) + categories?: Categories[]; + description?: string; + displayName: string; + implementationEffort?: ImplementationEffort; + partnerData?: SecurityAssessmentMetadataPartnerData; + readonly policyDefinitionId?: string; + preview?: boolean; + remediationDescription?: string; + severity: Severity; + // (undocumented) + threats?: Threats[]; + userImpact?: UserImpact; +} + +// @public +export interface SecurityAssessmentMetadataPropertiesResponse extends SecurityAssessmentMetadataProperties { + // (undocumented) + plannedDeprecationDate?: string; + // (undocumented) + publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; + // (undocumented) + tactics?: Tactics[]; + // (undocumented) + techniques?: Techniques[]; +} + +// @public +export interface SecurityAssessmentMetadataPropertiesResponsePublishDates { + // (undocumented) + ga?: string; + // (undocumented) + public: string; +} + +// @public +export interface SecurityAssessmentMetadataResponse extends ProxyResource { + assessmentType?: AssessmentType; + // (undocumented) + categories?: Categories[]; + description?: string; + displayName?: string; + implementationEffort?: ImplementationEffort; + partnerData?: SecurityAssessmentMetadataPartnerData; + // (undocumented) + plannedDeprecationDate?: string; + readonly policyDefinitionId?: string; + preview?: boolean; + // (undocumented) + publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; + remediationDescription?: string; + severity?: Severity; + // (undocumented) + tactics?: Tactics[]; + // (undocumented) + techniques?: Techniques[]; + // (undocumented) + threats?: Threats[]; + userImpact?: UserImpact; +} + +// @public +export interface SecurityAssessmentPartnerData { + partnerName: string; + secret: string; +} + +// @public +export interface SecurityAssessmentProperties extends SecurityAssessmentPropertiesBase { + status: AssessmentStatus; +} + +// @public +export interface SecurityAssessmentPropertiesBase { + additionalData?: Record; + readonly displayName?: string; + readonly links?: AssessmentLinks; + metadata?: SecurityAssessmentMetadataProperties; + partnersData?: SecurityAssessmentPartnerData; + resourceDetails: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRisk { + attackPathsReferences?: string[]; + isContextualRisk?: boolean; + level?: RiskLevel; + // (undocumented) + paths?: SecurityAssessmentPropertiesBaseRiskPathsItem[]; + riskFactors?: string[]; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItem { + edges?: SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[]; + id?: string; + // (undocumented) + nodes?: SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[]; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem { + id: string; + sourceId: string; + targetId: string; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem { + id?: string; + nodePropertiesLabel?: string[]; +} + +// @public +export interface SecurityAssessmentPropertiesResponse extends SecurityAssessmentPropertiesBase { + status: AssessmentStatusResponse; +} + +// @public +export interface SecurityAssessmentResponse extends ExtensionResource { + additionalData?: Record; + readonly displayName?: string; + readonly links?: AssessmentLinks; + metadata?: SecurityAssessmentMetadataProperties; + partnersData?: SecurityAssessmentPartnerData; + resourceDetails?: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; + status?: AssessmentStatusResponse; +} + +// @public +export type Tactics = string; + +// @public +export type Techniques = string; + +// @public +export type Threats = string; + +// @public +export type UserImpact = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-atpSettingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-atpSettingsAPI-node.api.md new file mode 100644 index 000000000000..67eb5b65401f --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-atpSettingsAPI-node.api.md @@ -0,0 +1,19 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AdvancedThreatProtectionProperties { + isEnabled?: boolean; +} + +// @public +export interface AdvancedThreatProtectionSetting extends ExtensionResource { + isEnabled?: boolean; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-automationsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-automationsAPI-node.api.md new file mode 100644 index 000000000000..7cfa1b2dd63d --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-automationsAPI-node.api.md @@ -0,0 +1,243 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface Automation extends ProxyResource { + actions?: AutomationActionUnion[]; + description?: string; + etag?: string; + isEnabled?: boolean; + kind?: string; + location?: string; + scopes?: AutomationScope[]; + sources?: AutomationSource[]; + tags?: Record; +} + +// @public +export interface AutomationAction { + actionType: ActionType; +} + +// @public +export interface AutomationActionEventHub extends AutomationAction { + actionType: "EventHub"; + connectionString?: string; + eventHubResourceId?: string; + isTrustedServiceEnabled?: boolean; + readonly sasPolicyName?: string; +} + +// @public +export interface AutomationActionLogicApp extends AutomationAction { + actionType: "LogicApp"; + logicAppResourceId?: string; + uri?: string; +} + +// @public +export type AutomationActionUnion = AutomationActionLogicApp | AutomationActionEventHub | AutomationActionWorkspace | AutomationAction; + +// @public +export interface AutomationActionWorkspace extends AutomationAction { + actionType: "Workspace"; + workspaceResourceId?: string; +} + +// @public +export interface AutomationProperties { + actions?: AutomationActionUnion[]; + description?: string; + isEnabled?: boolean; + scopes?: AutomationScope[]; + sources?: AutomationSource[]; +} + +// @public +export interface AutomationRuleSet { + // (undocumented) + rules?: AutomationTriggeringRule[]; +} + +// @public +export interface AutomationScope { + description?: string; + scopePath?: string; +} + +// @public +export interface AutomationSource { + eventSource?: EventSource_2; + ruleSets?: AutomationRuleSet[]; +} + +// @public +export interface AutomationTriggeringRule { + expectedValue?: string; + operator?: Operator; + propertyJPath?: string; + propertyType?: PropertyType; +} + +// @public +export interface AutomationUpdateModel extends Tags { + actions?: AutomationActionUnion[]; + description?: string; + isEnabled?: boolean; + scopes?: AutomationScope[]; + sources?: AutomationSource[]; +} + +// @public +export interface AutomationValidationStatus { + isValid?: boolean; + message?: string; +} + +// @public +type EventSource_2 = string; +export { EventSource_2 as EventSource } + +// @public +export enum KnownEventSource { + Alerts = "Alerts", + Assessments = "Assessments", + AssessmentsSnapshot = "AssessmentsSnapshot", + AttackPaths = "AttackPaths", + AttackPathsSnapshot = "AttackPathsSnapshot", + RegulatoryComplianceAssessment = "RegulatoryComplianceAssessment", + RegulatoryComplianceAssessmentSnapshot = "RegulatoryComplianceAssessmentSnapshot", + SecureScoreControls = "SecureScoreControls", + SecureScoreControlsSnapshot = "SecureScoreControlsSnapshot", + SecureScores = "SecureScores", + SecureScoresSnapshot = "SecureScoresSnapshot", + SubAssessments = "SubAssessments", + SubAssessmentsSnapshot = "SubAssessmentsSnapshot" +} + +// @public +export enum KnownMinimalRiskLevel { + Critical = "Critical", + High = "High", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownMinimalSeverity { + High = "High", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownOperator { + Contains = "Contains", + EndsWith = "EndsWith", + Equals = "Equals", + GreaterThan = "GreaterThan", + GreaterThanOrEqualTo = "GreaterThanOrEqualTo", + LesserThan = "LesserThan", + LesserThanOrEqualTo = "LesserThanOrEqualTo", + NotEquals = "NotEquals", + StartsWith = "StartsWith" +} + +// @public +export enum KnownPropertyType { + Boolean = "Boolean", + Integer = "Integer", + Number = "Number", + String = "String" +} + +// @public +export enum KnownSecurityContactName { + Default = "default" +} + +// @public +export enum KnownSecurityContactRole { + AccountAdmin = "AccountAdmin", + Contributor = "Contributor", + Owner = "Owner", + ServiceAdmin = "ServiceAdmin" +} + +// @public +export enum KnownSourceType { + Alert = "Alert", + AttackPath = "AttackPath" +} + +// @public +export type MinimalRiskLevel = string; + +// @public +export type MinimalSeverity = string; + +// @public +export interface NotificationsSource { + sourceType: SourceType; +} + +// @public +export interface NotificationsSourceAlert extends NotificationsSource { + minimalSeverity?: MinimalSeverity; + sourceType: "Alert"; +} + +// @public +export interface NotificationsSourceAttackPath extends NotificationsSource { + minimalRiskLevel?: MinimalRiskLevel; + sourceType: "AttackPath"; +} + +// @public +export type NotificationsSourceUnion = NotificationsSourceAlert | NotificationsSourceAttackPath | NotificationsSource; + +// @public +export type Operator = string; + +// @public +export type PropertyType = string; + +// @public +export interface SecurityContact extends ProxyResource { + emails?: string; + isEnabled?: boolean; + notificationsByRole?: SecurityContactPropertiesNotificationsByRole; + notificationsSources?: NotificationsSourceUnion[]; + phone?: string; +} + +// @public +export type SecurityContactName = string; + +// @public +export interface SecurityContactProperties { + emails?: string; + isEnabled?: boolean; + notificationsByRole?: SecurityContactPropertiesNotificationsByRole; + notificationsSources?: NotificationsSourceUnion[]; + phone?: string; +} + +// @public +export interface SecurityContactPropertiesNotificationsByRole { + roles?: SecurityContactRole[]; + state?: State; +} + +// @public +export type SecurityContactRole = string; + +// @public +export type SourceType = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-common-node.api.md b/sdk/security/arm-security/review/arm-security-models-common-node.api.md new file mode 100644 index 000000000000..263a9a1d112b --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-common-node.api.md @@ -0,0 +1,126 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type ActionType = string; + +// @public +export interface AssignedStandardItem { + id?: string; +} + +// @public +export interface CloudError { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: CloudErrorBody[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export interface CloudErrorBody { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: CloudErrorBody[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export enum KnownActionType { + EventHub = "EventHub", + Internal = "Internal", + LogicApp = "LogicApp", + Workspace = "Workspace" +} + +// @public +export enum KnownProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + InProgress = "InProgress", + Succeeded = "Succeeded", + Updating = "Updating" +} + +// @public +export enum KnownSettingName { + Current = "current", + Mcas = "MCAS", + Sentinel = "Sentinel", + Wdatp = "WDATP", + WdatpExcludeLinuxPublicPreview = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", + WdatpUnifiedSolution = "WDATP_UNIFIED_SOLUTION" +} + +// @public +export enum KnownSeverity { + Critical = "Critical", + High = "High", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownSource { + Aws = "Aws", + Azure = "Azure", + Gcp = "Gcp", + OnPremise = "OnPremise", + OnPremiseResourceDetails = "OnPremiseResourceDetails", + OnPremiseSql = "OnPremiseSql" +} + +// @public +export enum KnownState { + Failed = "Failed", + Off = "Off", + On = "On", + Passed = "Passed", + Skipped = "Skipped", + Unsupported = "Unsupported" +} + +// @public +export interface OperationStatus { + code?: string; + message?: string; +} + +// @public +export type ProvisioningState = string; + +// @public +export interface ResourceDetails { + source: Source; +} + +// @public +export type ResourceDetailsUnion = AzureResourceDetails | OnPremiseResourceDetailsUnion | ResourceDetails; + +// @public +export type SettingName = string; + +// @public +export type Severity = string; + +// @public +export type Source = string; + +// @public +export type State = string; + +// @public +export interface Tags { + tags?: Record; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-complianceResultsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-complianceResultsAPI-node.api.md new file mode 100644 index 000000000000..068ade90b69d --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-complianceResultsAPI-node.api.md @@ -0,0 +1,30 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface ComplianceResult extends ExtensionResource { + readonly resourceStatus?: ResourceStatus; +} + +// @public +export interface ComplianceResultProperties { + readonly resourceStatus?: ResourceStatus; +} + +// @public +export enum KnownResourceStatus { + Healthy = "Healthy", + NotApplicable = "NotApplicable", + NotHealthy = "NotHealthy", + OffByPolicy = "OffByPolicy" +} + +// @public +export type ResourceStatus = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-defenderForStorageAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-defenderForStorageAPI-node.api.md new file mode 100644 index 000000000000..b57da3e85c43 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-defenderForStorageAPI-node.api.md @@ -0,0 +1,110 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type AutomatedResponseType = string; + +// @public +export type BlobScanResultsOptions = string; + +// @public +export interface BlobsScanSummary { + failedBlobsCount?: number; + maliciousBlobsCount?: number; + scannedBlobsInGB?: number; + skippedBlobsCount?: number; + totalBlobsScanned?: number; +} + +// @public +export interface DefenderForStorageSetting extends ExtensionResource { + properties?: DefenderForStorageSettingProperties; +} + +// @public +export interface DefenderForStorageSettingProperties { + isEnabled?: boolean; + malwareScanning?: MalwareScanningProperties; + overrideSubscriptionLevelSettings?: boolean; + sensitiveDataDiscovery?: SensitiveDataDiscoveryProperties; +} + +// @public +export interface FilesScanSummary { + failedFilesCount?: number; + maliciousFilesCount?: number; + scannedFilesInGB?: number; + skippedFilesCount?: number; + totalFilesScanned?: number; +} + +// @public +export enum KnownAutomatedResponseType { + BlobSoftDelete = "BlobSoftDelete", + None = "None" +} + +// @public +export enum KnownBlobScanResultsOptions { + BlobIndexTags = "BlobIndexTags", + None = "None" +} + +// @public +export interface MalwareScan { + // (undocumented) + properties?: MalwareScanProperties; +} + +// @public +export interface MalwareScanningProperties { + automatedResponse?: AutomatedResponseType; + blobScanResultsOptions?: BlobScanResultsOptions; + onUpload?: OnUploadProperties; + readonly operationStatus?: OperationStatus; + scanResultsEventGridTopicResourceId?: string; +} + +// @public +export interface MalwareScanProperties { + scanEndTime?: string; + scanId?: string; + scanStartTime?: string; + scanStatus?: string; + scanStatusMessage?: string; + scanSummary?: ScanSummary; +} + +// @public +export interface OnUploadFilters { + excludeBlobsLargerThan?: any; + excludeBlobsWithPrefix?: string[]; + excludeBlobsWithSuffix?: string[]; +} + +// @public +export interface OnUploadProperties { + capGBPerMonth?: number; + filters?: OnUploadFilters; + isEnabled?: boolean; +} + +// @public +export interface ScanSummary { + blobs?: BlobsScanSummary; + estimatedScanCostUSD?: number; + files?: FilesScanSummary; +} + +// @public +export interface SensitiveDataDiscoveryProperties { + isEnabled?: boolean; + readonly operationStatus?: OperationStatus; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-governanceAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-governanceAPI-node.api.md new file mode 100644 index 000000000000..78fab3dcfe4f --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-governanceAPI-node.api.md @@ -0,0 +1,152 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface ExecuteGovernanceRuleParams { + override?: boolean; +} + +// @public +export interface GovernanceAssignment extends ExtensionResource { + additionalData?: GovernanceAssignmentAdditionalData; + governanceEmailNotification?: GovernanceEmailNotification; + isGracePeriod?: boolean; + owner?: string; + remediationDueDate?: Date; + remediationEta?: RemediationEta; +} + +// @public +export interface GovernanceAssignmentAdditionalData { + ticketLink?: string; + ticketNumber?: number; + ticketStatus?: string; +} + +// @public +export interface GovernanceAssignmentProperties { + additionalData?: GovernanceAssignmentAdditionalData; + governanceEmailNotification?: GovernanceEmailNotification; + isGracePeriod?: boolean; + owner?: string; + remediationDueDate: Date; + remediationEta?: RemediationEta; +} + +// @public +export interface GovernanceEmailNotification { + disableManagerEmailNotification?: boolean; + disableOwnerEmailNotification?: boolean; +} + +// @public +export interface GovernanceRule extends ExtensionResource { + conditionSets?: any[]; + description?: string; + displayName?: string; + excludedScopes?: string[]; + governanceEmailNotification?: GovernanceRuleEmailNotification; + includeMemberScopes?: boolean; + isDisabled?: boolean; + isGracePeriod?: boolean; + metadata?: GovernanceRuleMetadata; + ownerSource?: GovernanceRuleOwnerSource; + remediationTimeframe?: string; + rulePriority?: number; + ruleType?: GovernanceRuleType; + sourceResourceType?: GovernanceRuleSourceResourceType; + readonly tenantId?: string; +} + +// @public +export interface GovernanceRuleEmailNotification { + disableManagerEmailNotification?: boolean; + disableOwnerEmailNotification?: boolean; +} + +// @public +export interface GovernanceRuleMetadata { + readonly createdBy?: string; + readonly createdOn?: Date; + readonly updatedBy?: string; + readonly updatedOn?: Date; +} + +// @public +export interface GovernanceRuleOwnerSource { + type?: GovernanceRuleOwnerSourceType; + value?: string; +} + +// @public +export type GovernanceRuleOwnerSourceType = string; + +// @public +export interface GovernanceRuleProperties { + conditionSets: any[]; + description?: string; + displayName: string; + excludedScopes?: string[]; + governanceEmailNotification?: GovernanceRuleEmailNotification; + includeMemberScopes?: boolean; + isDisabled?: boolean; + isGracePeriod?: boolean; + metadata?: GovernanceRuleMetadata; + ownerSource: GovernanceRuleOwnerSource; + remediationTimeframe?: string; + rulePriority: number; + ruleType: GovernanceRuleType; + sourceResourceType: GovernanceRuleSourceResourceType; + readonly tenantId?: string; +} + +// @public +export type GovernanceRuleSourceResourceType = string; + +// @public +export type GovernanceRuleType = string; + +// @public +export enum KnownGovernanceRuleOwnerSourceType { + ByTag = "ByTag", + Manually = "Manually" +} + +// @public +export enum KnownGovernanceRuleSourceResourceType { + Assessments = "Assessments" +} + +// @public +export enum KnownGovernanceRuleType { + Integrated = "Integrated", + ServiceNow = "ServiceNow" +} + +// @public +export enum KnownOperationResultStatus { + Canceled = "Canceled", + Failed = "Failed", + Succeeded = "Succeeded" +} + +// @public +export interface OperationResult { + readonly status?: OperationResultStatus; +} + +// @public +export type OperationResultStatus = string; + +// @public +export interface RemediationEta { + eta: Date; + justification: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-healthReportsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-healthReportsAPI-node.api.md new file mode 100644 index 000000000000..88e1f683d2e1 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-healthReportsAPI-node.api.md @@ -0,0 +1,86 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface EnvironmentDetails { + environmentHierarchyId?: string; + nativeResourceId?: string; + organizationalHierarchyId?: string; + subscriptionId?: string; + tenantId?: string; +} + +// @public +export interface HealthDataClassification { + component?: string; + scenario?: string; + scope?: string; +} + +// @public +export interface HealthReport extends ExtensionResource { + affectedDefendersPlans?: string[]; + affectedDefendersSubPlans?: string[]; + environmentDetails?: EnvironmentDetails; + healthDataClassification?: HealthDataClassification; + issues?: Issue[]; + readonly reportAdditionalData?: Record; + resourceDetails?: ResourceDetails; + status?: Status; +} + +// @public +export interface HealthReportProperties { + affectedDefendersPlans?: string[]; + affectedDefendersSubPlans?: string[]; + environmentDetails?: EnvironmentDetails; + healthDataClassification?: HealthDataClassification; + issues?: Issue[]; + readonly reportAdditionalData?: Record; + resourceDetails?: ResourceDetails; + status?: Status; +} + +// @public +export interface Issue { + issueAdditionalData?: Record; + issueDescription?: string; + issueKey: string; + issueName?: string; + remediationScript?: string; + remediationSteps?: string; + securityValues?: string[]; +} + +// @public +export enum KnownStatusName { + Healthy = "Healthy", + NotApplicable = "NotApplicable", + NotHealthy = "NotHealthy" +} + +// @public +export interface ResourceDetails { + readonly connectorId?: string; + readonly id?: string; + source?: Source; +} + +// @public +export interface Status { + code?: StatusName; + readonly firstEvaluationDate?: Date; + readonly lastScannedDate?: Date; + readonly reason?: string; + readonly statusChangeDate?: Date; +} + +// @public +export type StatusName = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-ioTSecurityAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-ioTSecurityAPI-node.api.md new file mode 100644 index 000000000000..a41d74044db2 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-ioTSecurityAPI-node.api.md @@ -0,0 +1,381 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type AdditionalWorkspaceDataType = string; + +// @public +export interface AdditionalWorkspacesProperties { + dataTypes?: AdditionalWorkspaceDataType[]; + type?: AdditionalWorkspaceType; + workspace?: string; +} + +// @public +export type AdditionalWorkspaceType = string; + +// @public +export interface AllowlistCustomAlertRule extends ListCustomAlertRule { + allowlistValues: string[]; + // (undocumented) + ruleType: "AllowlistCustomAlertRule"; +} + +// @public +export interface CustomAlertRule { + readonly description?: string; + readonly displayName?: string; + isEnabled: boolean; + ruleType: string; +} + +// @public +export type CustomAlertRuleUnion = ThresholdCustomAlertRuleUnion | ListCustomAlertRuleUnion | CustomAlertRule; + +// @public +export type DataSource = string; + +// @public +export interface DenylistCustomAlertRule extends ListCustomAlertRule { + denylistValues: string[]; + // (undocumented) + ruleType: "DenylistCustomAlertRule"; +} + +// @public +export interface DeviceSecurityGroup extends ExtensionResource { + allowlistRules?: AllowlistCustomAlertRule[]; + denylistRules?: DenylistCustomAlertRule[]; + thresholdRules?: ThresholdCustomAlertRuleUnion[]; + timeWindowRules?: TimeWindowCustomAlertRule[]; +} + +// @public +export interface DeviceSecurityGroupProperties { + allowlistRules?: AllowlistCustomAlertRule[]; + denylistRules?: DenylistCustomAlertRule[]; + thresholdRules?: ThresholdCustomAlertRuleUnion[]; + timeWindowRules?: TimeWindowCustomAlertRule[]; +} + +// @public +export type ExportData = string; + +// @public +export interface IoTSecurityAggregatedAlert extends ProxyResource { + readonly actionTaken?: string; + readonly aggregatedDateUtc?: Date; + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly count?: number; + readonly description?: string; + readonly effectedResourceType?: string; + readonly logAnalyticsQuery?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + readonly systemSource?: string; + tags?: Record; + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; + readonly vendorName?: string; +} + +// @public +export interface IoTSecurityAggregatedAlertProperties { + readonly actionTaken?: string; + readonly aggregatedDateUtc?: Date; + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly count?: number; + readonly description?: string; + readonly effectedResourceType?: string; + readonly logAnalyticsQuery?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + readonly systemSource?: string; + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; + readonly vendorName?: string; +} + +// @public +export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { + readonly alertsCount?: number; + readonly deviceId?: string; + readonly lastOccurrence?: string; +} + +// @public +export interface IoTSecurityAggregatedRecommendation extends ProxyResource { + readonly description?: string; + readonly detectedBy?: string; + readonly healthyDevices?: number; + readonly logAnalyticsQuery?: string; + readonly recommendationDisplayName?: string; + recommendationName?: string; + readonly recommendationTypeId?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + tags?: Record; + readonly unhealthyDeviceCount?: number; +} + +// @public +export interface IoTSecurityAggregatedRecommendationProperties { + readonly description?: string; + readonly detectedBy?: string; + readonly healthyDevices?: number; + readonly logAnalyticsQuery?: string; + readonly recommendationDisplayName?: string; + recommendationName?: string; + readonly recommendationTypeId?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + readonly unhealthyDeviceCount?: number; +} + +// @public +export interface IoTSecurityAlertedDevice { + readonly alertsCount?: number; + readonly deviceId?: string; +} + +// @public +export interface IoTSecurityDeviceAlert { + readonly alertDisplayName?: string; + readonly alertsCount?: number; + readonly reportedSeverity?: ReportedSeverity; +} + +// @public +export interface IoTSecurityDeviceRecommendation { + readonly devicesCount?: number; + readonly recommendationDisplayName?: string; + readonly reportedSeverity?: ReportedSeverity; +} + +// @public +export interface IoTSecuritySolutionAnalyticsModel extends ProxyResource { + readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[]; + readonly metrics?: IoTSeverityMetrics; + mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[]; + mostPrevalentDeviceRecommendations?: IoTSecurityDeviceRecommendation[]; + topAlertedDevices?: IoTSecurityAlertedDevice[]; + readonly unhealthyDeviceCount?: number; +} + +// @public +export interface IoTSecuritySolutionAnalyticsModelList { + nextLink?: string; + value: IoTSecuritySolutionAnalyticsModel[]; +} + +// @public +export interface IoTSecuritySolutionAnalyticsModelProperties { + readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[]; + readonly metrics?: IoTSeverityMetrics; + mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[]; + mostPrevalentDeviceRecommendations?: IoTSecurityDeviceRecommendation[]; + topAlertedDevices?: IoTSecurityAlertedDevice[]; + readonly unhealthyDeviceCount?: number; +} + +// @public +export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { + date?: Date; + devicesMetrics?: IoTSeverityMetrics; +} + +// @public +export interface IoTSecuritySolutionModel extends ProxyResource { + additionalWorkspaces?: AdditionalWorkspacesProperties[]; + readonly autoDiscoveredResources?: string[]; + disabledDataSources?: DataSource[]; + displayName?: string; + export?: ExportData[]; + iotHubs?: string[]; + location?: string; + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + status?: SecuritySolutionStatus; + tags?: Record; + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; + userDefinedResources?: UserDefinedResourcesProperties; + workspace?: string; +} + +// @public +export interface IoTSecuritySolutionProperties { + additionalWorkspaces?: AdditionalWorkspacesProperties[]; + readonly autoDiscoveredResources?: string[]; + disabledDataSources?: DataSource[]; + displayName: string; + export?: ExportData[]; + iotHubs: string[]; + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + status?: SecuritySolutionStatus; + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; + userDefinedResources?: UserDefinedResourcesProperties; + workspace?: string; +} + +// @public +export interface IoTSeverityMetrics { + high?: number; + low?: number; + medium?: number; +} + +// @public +export enum KnownAdditionalWorkspaceDataType { + Alerts = "Alerts", + RawEvents = "RawEvents" +} + +// @public +export enum KnownAdditionalWorkspaceType { + Sentinel = "Sentinel" +} + +// @public +export enum KnownDataSource { + TwinData = "TwinData" +} + +// @public +export enum KnownExportData { + RawEvents = "RawEvents" +} + +// @public +export enum KnownRecommendationConfigStatus { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownRecommendationType { + IoTAcrauthentication = "IoT_ACRAuthentication", + IoTAgentSendsUnutilizedMessages = "IoT_AgentSendsUnutilizedMessages", + IoTBaseline = "IoT_Baseline", + IoTEdgeHubMemOptimize = "IoT_EdgeHubMemOptimize", + IoTEdgeLoggingOptions = "IoT_EdgeLoggingOptions", + IoTInconsistentModuleSettings = "IoT_InconsistentModuleSettings", + IoTInstallAgent = "IoT_InstallAgent", + IoTIpfilterDenyAll = "IoT_IPFilter_DenyAll", + IoTIpfilterPermissiveRule = "IoT_IPFilter_PermissiveRule", + IoTOpenPorts = "IoT_OpenPorts", + IoTPermissiveFirewallPolicy = "IoT_PermissiveFirewallPolicy", + IoTPermissiveInputFirewallRules = "IoT_PermissiveInputFirewallRules", + IoTPermissiveOutputFirewallRules = "IoT_PermissiveOutputFirewallRules", + IoTPrivilegedDockerOptions = "IoT_PrivilegedDockerOptions", + IoTSharedCredentials = "IoT_SharedCredentials", + IoTVulnerableTLSCipherSuite = "IoT_VulnerableTLSCipherSuite" +} + +// @public +export enum KnownReportedSeverity { + High = "High", + Informational = "Informational", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownSecuritySolutionStatus { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownUnmaskedIpLoggingStatus { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownValueType { + IpCidr = "IpCidr", + String = "String" +} + +// @public +export interface ListCustomAlertRule extends CustomAlertRule { + // (undocumented) + ruleType: "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule"; + readonly valueType?: ValueType; +} + +// @public +export type ListCustomAlertRuleUnion = AllowlistCustomAlertRule | DenylistCustomAlertRule | ListCustomAlertRule; + +// @public +export type RecommendationConfigStatus = string; + +// @public +export interface RecommendationConfigurationProperties { + // (undocumented) + readonly name?: string; + recommendationType: RecommendationType; + status: RecommendationConfigStatus; +} + +// @public +export type RecommendationType = string; + +// @public +export type ReportedSeverity = string; + +// @public +export type SecuritySolutionStatus = string; + +// @public +export interface TagsResource { + tags?: Record; +} + +// @public +export interface ThresholdCustomAlertRule extends CustomAlertRule { + maxThreshold: number; + minThreshold: number; + // (undocumented) + ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule"; +} + +// @public +export type ThresholdCustomAlertRuleUnion = TimeWindowCustomAlertRule | ThresholdCustomAlertRule; + +// @public +export interface TimeWindowCustomAlertRule extends ThresholdCustomAlertRule { + // (undocumented) + ruleType: "TimeWindowCustomAlertRule"; + timeWindowSize: string; +} + +// @public +export type UnmaskedIpLoggingStatus = string; + +// @public +export interface UpdateIotSecuritySolutionData extends TagsResource { + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + userDefinedResources?: UserDefinedResourcesProperties; +} + +// @public +export interface UpdateIoTSecuritySolutionProperties { + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + userDefinedResources?: UserDefinedResourcesProperties; +} + +// @public +export interface UserDefinedResourcesProperties { + query: string | null; + querySubscriptions: string[] | null; +} + +// @public +export type ValueType = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-legacySettingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-legacySettingsAPI-node.api.md new file mode 100644 index 000000000000..9d5ef819d718 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-legacySettingsAPI-node.api.md @@ -0,0 +1,116 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type AutoProvision = string; + +// @public +export interface AutoProvisioningSetting extends ProxyResource { + autoProvision?: AutoProvision; +} + +// @public +export interface AutoProvisioningSettingProperties { + autoProvision: AutoProvision; +} + +// @public +export interface Compliance extends ExtensionResource { + readonly assessmentResult?: ComplianceSegment[]; + readonly assessmentTimestampUtcDate?: Date; + readonly resourceCount?: number; +} + +// @public +export interface ComplianceProperties { + readonly assessmentResult?: ComplianceSegment[]; + readonly assessmentTimestampUtcDate?: Date; + readonly resourceCount?: number; +} + +// @public +export interface ComplianceSegment { + readonly percentage?: number; + readonly segmentType?: string; +} + +// @public +export interface InformationProtectionKeyword { + canBeNumeric?: boolean; + custom?: boolean; + excluded?: boolean; + pattern?: string; +} + +// @public +export interface InformationProtectionPolicy extends ExtensionResource { + informationTypes?: Record; + labels?: Record; + readonly lastModifiedUtc?: Date; + readonly version?: string; +} + +// @public +export type InformationProtectionPolicyName = string; + +// @public +export interface InformationProtectionPolicyProperties { + informationTypes?: Record; + labels?: Record; + readonly lastModifiedUtc?: Date; + readonly version?: string; +} + +// @public +export interface InformationType { + custom?: boolean; + description?: string; + displayName?: string; + enabled?: boolean; + keywords?: InformationProtectionKeyword[]; + order?: number; + recommendedLabelId?: string; +} + +// @public +export enum KnownAutoProvision { + Off = "Off", + On = "On" +} + +// @public +export enum KnownInformationProtectionPolicyName { + Custom = "custom", + Effective = "effective" +} + +// @public +export type Rank = "None" | "Low" | "Medium" | "High" | "Critical"; + +// @public +export interface SensitivityLabel { + description?: string; + displayName?: string; + enabled?: boolean; + order?: number; + rank?: Rank; +} + +// @public +export interface WorkspaceSetting extends ProxyResource { + scope?: string; + workspaceId?: string; +} + +// @public +export interface WorkspaceSettingProperties { + scope: string; + workspaceId: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-locationsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-locationsAPI-node.api.md new file mode 100644 index 000000000000..4da77ce5f9f8 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-locationsAPI-node.api.md @@ -0,0 +1,14 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AscLocation extends ProxyResource { + properties?: any; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-mdeOnboardingAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-mdeOnboardingAPI-node.api.md new file mode 100644 index 000000000000..2b6e74bfa953 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-mdeOnboardingAPI-node.api.md @@ -0,0 +1,26 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface MdeOnboardingData extends ProxyResource { + onboardingPackageLinux?: Uint8Array; + onboardingPackageWindows?: Uint8Array; +} + +// @public +export interface MdeOnboardingDataList { + value?: MdeOnboardingData[]; +} + +// @public +export interface MdeOnboardingDataProperties { + onboardingPackageLinux?: Uint8Array; + onboardingPackageWindows?: Uint8Array; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-node.api.md b/sdk/security/arm-security/review/arm-security-models-node.api.md new file mode 100644 index 000000000000..c04444c9b972 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-node.api.md @@ -0,0 +1,183 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type ArmActionType = string; + +// @public +export interface ArmPrivateEndpointConnection extends Resource { + properties?: PrivateEndpointConnectionProperties; +} + +// @public +export type CreatedByType = string; + +// @public +export interface ErrorAdditionalInfo { + readonly info?: any; + readonly type?: string; +} + +// @public +export interface ErrorDetail { + readonly additionalInfo?: ErrorAdditionalInfo[]; + readonly code?: string; + readonly details?: ErrorDetail[]; + readonly message?: string; + readonly target?: string; +} + +// @public +export interface ErrorResponse { + error?: ErrorDetail; +} + +// @public +export interface ExtensionResource extends Resource { +} + +// @public +export interface Identity { + readonly principalId?: string; + readonly tenantId?: string; + type?: ResourceIdentityType; +} + +// @public +export enum KnownArmActionType { + Internal = "Internal" +} + +// @public +export enum KnownCreatedByType { + Application = "Application", + Key = "Key", + ManagedIdentity = "ManagedIdentity", + User = "User" +} + +// @public +export enum KnownOrigin { + System = "system", + User = "user", + UserSystem = "user,system" +} + +// @public +export enum KnownPrivateEndpointConnectionProvisioningState { + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded" +} + +// @public +export enum KnownPrivateEndpointServiceConnectionStatus { + Approved = "Approved", + Pending = "Pending", + Rejected = "Rejected" +} + +// @public +export interface Operation { + readonly actionType?: ArmActionType; + display?: OperationDisplay; + readonly isDataAction?: boolean; + readonly name?: string; + readonly origin?: Origin; +} + +// @public +export interface OperationDisplay { + readonly description?: string; + readonly operation?: string; + readonly provider?: string; + readonly resource?: string; +} + +// @public +export interface OperationStatusResult { + endTime?: Date; + error?: ErrorDetail; + id?: string; + name?: string; + operations?: OperationStatusResult[]; + percentComplete?: number; + readonly resourceId?: string; + startTime?: Date; + status: string; +} + +// @public +export type Origin = string; + +// @public +export interface PrivateEndpoint { + readonly id?: string; +} + +// @public +export interface PrivateEndpointConnectionProperties { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +} + +// @public +export type PrivateEndpointConnectionProvisioningState = string; + +// @public +export type PrivateEndpointServiceConnectionStatus = string; + +// @public +export interface PrivateLinkResourceProperties { + readonly groupId?: string; + readonly requiredMembers?: string[]; + requiredZoneNames?: string[]; +} + +// @public +export interface PrivateLinkServiceConnectionState { + actionsRequired?: string; + description?: string; + status?: PrivateEndpointServiceConnectionStatus; +} + +// @public +export interface ProxyResource extends Resource { +} + +// @public +export interface Resource { + readonly id?: string; + readonly name?: string; + readonly systemData?: SystemData; + readonly type?: string; +} + +// @public +export type ResourceIdentityType = "SystemAssigned"; + +// @public +export interface SystemData { + createdAt?: Date; + createdBy?: string; + createdByType?: CreatedByType; + lastModifiedAt?: Date; + lastModifiedBy?: string; + lastModifiedByType?: CreatedByType; +} + +// @public +export interface TrackedResource extends Resource { + location: string; + tags?: Record; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-pricingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-pricingsAPI-node.api.md new file mode 100644 index 000000000000..4cc847f189c2 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-pricingsAPI-node.api.md @@ -0,0 +1,98 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type Enforce = string; + +// @public +export interface Extension { + additionalExtensionProperties?: Record; + isEnabled: IsEnabled; + name: string; + readonly operationStatus?: OperationStatus; +} + +// @public +export type Inherited = string; + +// @public +export type IsEnabled = string; + +// @public +export enum KnownEnforce { + False = "False", + True = "True" +} + +// @public +export enum KnownInherited { + False = "False", + True = "True" +} + +// @public +export enum KnownIsEnabled { + False = "False", + True = "True" +} + +// @public +export enum KnownPricingTier { + Free = "Free", + Standard = "Standard" +} + +// @public +export enum KnownResourcesCoverageStatus { + FullyCovered = "FullyCovered", + NotCovered = "NotCovered", + PartiallyCovered = "PartiallyCovered" +} + +// @public +export interface Pricing extends ExtensionResource { + readonly deprecated?: boolean; + readonly enablementTime?: Date; + enforce?: Enforce; + extensions?: Extension[]; + readonly freeTrialRemainingTime?: string; + readonly inherited?: Inherited; + readonly inheritedFrom?: string; + pricingTier?: PricingTier; + readonly replacedBy?: string[]; + readonly resourcesCoverageStatus?: ResourcesCoverageStatus; + subPlan?: string; +} + +// @public +export interface PricingList { + value: Pricing[]; +} + +// @public +export interface PricingProperties { + readonly deprecated?: boolean; + readonly enablementTime?: Date; + enforce?: Enforce; + extensions?: Extension[]; + readonly freeTrialRemainingTime?: string; + readonly inherited?: Inherited; + readonly inheritedFrom?: string; + pricingTier: PricingTier; + readonly replacedBy?: string[]; + readonly resourcesCoverageStatus?: ResourcesCoverageStatus; + subPlan?: string; +} + +// @public +export type PricingTier = string; + +// @public +export type ResourcesCoverageStatus = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-privateLinksAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-privateLinksAPI-node.api.md new file mode 100644 index 000000000000..4e0b5e566644 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-privateLinksAPI-node.api.md @@ -0,0 +1,54 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export enum KnownPublicNetworkAccess { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export interface PrivateEndpointConnection extends Resource { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +} + +// @public +export interface PrivateLinkGroupResource extends ProxyResource { + readonly groupId?: string; + readonly requiredMembers?: string[]; + requiredZoneNames?: string[]; +} + +// @public +export interface PrivateLinkProperties { + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + readonly privateLinkResources?: PrivateLinkGroupResource[]; + readonly provisioningState?: ProvisioningState; + publicNetworkAccess?: PublicNetworkAccess; +} + +// @public +export interface PrivateLinkResource extends TrackedResource { + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + readonly privateLinkResources?: PrivateLinkGroupResource[]; + readonly provisioningState?: ProvisioningState; + publicNetworkAccess?: PublicNetworkAccess; +} + +// @public +export interface PrivateLinkUpdate { + tags?: Record; +} + +// @public +export type PublicNetworkAccess = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-regulatoryComplianceAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-regulatoryComplianceAPI-node.api.md new file mode 100644 index 000000000000..b12cdc758f2f --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-regulatoryComplianceAPI-node.api.md @@ -0,0 +1,69 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface RegulatoryComplianceAssessment extends ProxyResource { + readonly assessmentDetailsLink?: string; + readonly assessmentType?: string; + readonly description?: string; + readonly failedResources?: number; + readonly passedResources?: number; + readonly skippedResources?: number; + state?: State; + readonly unsupportedResources?: number; +} + +// @public +export interface RegulatoryComplianceAssessmentProperties { + readonly assessmentDetailsLink?: string; + readonly assessmentType?: string; + readonly description?: string; + readonly failedResources?: number; + readonly passedResources?: number; + readonly skippedResources?: number; + state?: State; + readonly unsupportedResources?: number; +} + +// @public +export interface RegulatoryComplianceControl extends ProxyResource { + readonly description?: string; + readonly failedAssessments?: number; + readonly passedAssessments?: number; + readonly skippedAssessments?: number; + state?: State; +} + +// @public +export interface RegulatoryComplianceControlProperties { + readonly description?: string; + readonly failedAssessments?: number; + readonly passedAssessments?: number; + readonly skippedAssessments?: number; + state?: State; +} + +// @public +export interface RegulatoryComplianceStandard extends ProxyResource { + readonly failedControls?: number; + readonly passedControls?: number; + readonly skippedControls?: number; + state?: State; + readonly unsupportedControls?: number; +} + +// @public +export interface RegulatoryComplianceStandardProperties { + readonly failedControls?: number; + readonly passedControls?: number; + readonly skippedControls?: number; + state?: State; + readonly unsupportedControls?: number; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-secureScoreAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-secureScoreAPI-node.api.md new file mode 100644 index 000000000000..12f911519989 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-secureScoreAPI-node.api.md @@ -0,0 +1,101 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AzureResourceLink { + readonly id?: string; +} + +// @public +export type ControlType = string; + +// @public +export type ExpandControlsEnum = string; + +// @public +export enum KnownControlType { + BuiltIn = "BuiltIn", + Custom = "Custom" +} + +// @public +export enum KnownExpandControlsEnum { + Definition = "definition" +} + +// @public +export interface ScoreDetails { + readonly current?: number; + readonly max?: number; + readonly percentage?: number; +} + +// @public +export interface SecureScoreControlDefinitionItem extends Resource { + readonly assessmentDefinitions?: AzureResourceLink[]; + readonly description?: string; + readonly displayName?: string; + readonly maxScore?: number; + readonly source?: SecureScoreControlDefinitionSource; +} + +// @public +export interface SecureScoreControlDefinitionItemProperties { + readonly assessmentDefinitions?: AzureResourceLink[]; + readonly description?: string; + readonly displayName?: string; + readonly maxScore?: number; + readonly source?: SecureScoreControlDefinitionSource; +} + +// @public +export interface SecureScoreControlDefinitionSource { + sourceType?: ControlType; +} + +// @public +export interface SecureScoreControlDetails extends Resource { + definition?: SecureScoreControlDefinitionItem; + readonly displayName?: string; + readonly healthyResourceCount?: number; + readonly notApplicableResourceCount?: number; + score?: ScoreDetails; + readonly unhealthyResourceCount?: number; + readonly weight?: number; +} + +// @public +export interface SecureScoreControlScoreDetails { + readonly current?: number; + definition?: SecureScoreControlDefinitionItem; + readonly displayName?: string; + readonly healthyResourceCount?: number; + readonly max?: number; + readonly notApplicableResourceCount?: number; + readonly percentage?: number; + readonly unhealthyResourceCount?: number; + readonly weight?: number; +} + +// @public +export interface SecureScoreItem extends ProxyResource { + readonly displayName?: string; + readonly score?: ScoreDetails; + readonly weight?: number; +} + +// @public +export interface SecureScoreItemProperties { + readonly current?: number; + readonly displayName?: string; + readonly max?: number; + readonly percentage?: number; + readonly weight?: number; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securityConnectorsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-securityConnectorsAPI-node.api.md new file mode 100644 index 000000000000..4487aab3a60e --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securityConnectorsAPI-node.api.md @@ -0,0 +1,703 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AccessTokenAuthentication extends Authentication { + accessToken?: string; + authenticationType: "AccessToken"; + username?: string; +} + +// @public +export interface ArcAutoProvisioning { + configuration?: ArcAutoProvisioningConfiguration; + enabled?: boolean; +} + +// @public +export interface ArcAutoProvisioningAws extends ArcAutoProvisioning { + cloudRoleArn?: string; +} + +// @public +export interface ArcAutoProvisioningConfiguration { + privateLinkScope?: string; + proxy?: string; +} + +// @public +export interface ArcAutoProvisioningGcp extends ArcAutoProvisioning { +} + +// @public +export interface Authentication { + authenticationType: AuthenticationType; +} + +// @public +export type AuthenticationType = string; + +// @public +export type AuthenticationUnion = AccessTokenAuthentication | Authentication; + +// @public +export interface AwsEnvironmentData extends EnvironmentData { + readonly accountName?: string; + environmentType: "AwsAccount"; + organizationalData?: AwsOrganizationalDataUnion; + regions?: string[]; + scanInterval?: number; +} + +// @public +export interface AwsOrganizationalData { + organizationMembershipType: OrganizationMembershipType; +} + +// @public +export interface AwsOrganizationalDataMaster extends AwsOrganizationalData { + excludedAccountIds?: string[]; + organizationMembershipType: "Organization"; + stacksetName?: string; +} + +// @public +export interface AwsOrganizationalDataMember extends AwsOrganizationalData { + organizationMembershipType: "Member"; + parentHierarchyId?: string; +} + +// @public +export type AwsOrganizationalDataUnion = AwsOrganizationalDataMaster | AwsOrganizationalDataMember | AwsOrganizationalData; + +// @public +export interface AzureDevOpsScopeEnvironmentData extends EnvironmentData { + environmentType: "AzureDevOpsScope"; +} + +// @public +export type CloudName = string; + +// @public +export interface CloudOffering { + readonly description?: string; + offeringType: OfferingType; +} + +// @public +export type CloudOfferingUnion = CspmMonitorAwsOffering | DefenderForContainersAwsOffering | DefenderForServersAwsOffering | DefenderFoDatabasesAwsOffering | CspmMonitorGcpOffering | DefenderForServersGcpOffering | DefenderForDatabasesGcpOffering | DefenderForContainersGcpOffering | CspmMonitorGithubOffering | CspmMonitorAzureDevOpsOffering | DefenderCspmAwsOffering | DefenderCspmGcpOffering | CspmMonitorGitLabOffering | CspmMonitorDockerHubOffering | DefenderForContainersDockerHubOffering | DefenderCspmDockerHubOffering | CspmMonitorJFrogOffering | DefenderForContainersJFrogOffering | DefenderCspmJFrogOffering | CloudOffering; + +// @public +export interface CspmMonitorAwsOffering extends CloudOffering { + nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection; + offeringType: "CspmMonitorAws"; +} + +// @public +export interface CspmMonitorAwsOfferingNativeCloudConnection { + cloudRoleArn?: string; +} + +// @public +export interface CspmMonitorAzureDevOpsOffering extends CloudOffering { + offeringType: "CspmMonitorAzureDevOps"; +} + +// @public +export interface CspmMonitorDockerHubOffering extends CloudOffering { + offeringType: "CspmMonitorDockerHub"; +} + +// @public +export interface CspmMonitorGcpOffering extends CloudOffering { + nativeCloudConnection?: CspmMonitorGcpOfferingNativeCloudConnection; + offeringType: "CspmMonitorGcp"; +} + +// @public +export interface CspmMonitorGcpOfferingNativeCloudConnection { + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface CspmMonitorGithubOffering extends CloudOffering { + offeringType: "CspmMonitorGithub"; +} + +// @public +export interface CspmMonitorGitLabOffering extends CloudOffering { + offeringType: "CspmMonitorGitLab"; +} + +// @public +export interface CspmMonitorJFrogOffering extends CloudOffering { + offeringType: "CspmMonitorJFrog"; +} + +// @public +export interface DefenderCspmAwsOffering extends CloudOffering { + ciem?: DefenderCspmAwsOfferingCiem; + databasesDspm?: DefenderCspmAwsOfferingDatabasesDspm; + dataSensitivityDiscovery?: DefenderCspmAwsOfferingDataSensitivityDiscovery; + mdcContainersAgentlessDiscoveryK8S?: DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S; + mdcContainersImageAssessment?: DefenderCspmAwsOfferingMdcContainersImageAssessment; + offeringType: "DefenderCspmAws"; + vmScanners?: DefenderCspmAwsOfferingVmScanners; +} + +// @public +export interface DefenderCspmAwsOfferingCiem { + ciemDiscovery?: DefenderCspmAwsOfferingCiemDiscovery; + ciemOidc?: DefenderCspmAwsOfferingCiemOidc; +} + +// @public +export interface DefenderCspmAwsOfferingCiemDiscovery { + cloudRoleArn?: string; +} + +// @public +export interface DefenderCspmAwsOfferingCiemOidc { + azureActiveDirectoryAppName?: string; + cloudRoleArn?: string; +} + +// @public +export interface DefenderCspmAwsOfferingDatabasesDspm { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderCspmAwsOfferingDataSensitivityDiscovery { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderCspmAwsOfferingMdcContainersImageAssessment { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderCspmAwsOfferingVmScanners extends VmScannersAws { +} + +// @public +export interface DefenderCspmDockerHubOffering extends CloudOffering { + offeringType: "DefenderCspmDockerHub"; +} + +// @public +export interface DefenderCspmGcpOffering extends CloudOffering { + ciemDiscovery?: DefenderCspmGcpOfferingCiemDiscovery; + dataSensitivityDiscovery?: DefenderCspmGcpOfferingDataSensitivityDiscovery; + mdcContainersAgentlessDiscoveryK8S?: DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S; + mdcContainersImageAssessment?: DefenderCspmGcpOfferingMdcContainersImageAssessment; + offeringType: "DefenderCspmGcp"; + vmScanners?: DefenderCspmGcpOfferingVmScanners; +} + +// @public +export interface DefenderCspmGcpOfferingCiemDiscovery { + azureActiveDirectoryAppName?: string; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderCspmGcpOfferingDataSensitivityDiscovery { + enabled?: boolean; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S { + enabled?: boolean; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderCspmGcpOfferingMdcContainersImageAssessment { + enabled?: boolean; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderCspmGcpOfferingVmScanners extends VmScannersGcp { +} + +// @public +export interface DefenderCspmJFrogOffering extends CloudOffering { + mdcContainersImageAssessment?: DefenderCspmJFrogOfferingMdcContainersImageAssessment; + offeringType: "DefenderCspmJFrog"; +} + +// @public +export interface DefenderCspmJFrogOfferingMdcContainersImageAssessment { + enabled?: boolean; +} + +// @public +export interface DefenderFoDatabasesAwsOffering extends CloudOffering { + arcAutoProvisioning?: DefenderFoDatabasesAwsOfferingArcAutoProvisioning; + databasesDspm?: DefenderFoDatabasesAwsOfferingDatabasesDspm; + offeringType: "DefenderForDatabasesAws"; + rds?: DefenderFoDatabasesAwsOfferingRds; +} + +// @public +export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws { +} + +// @public +export interface DefenderFoDatabasesAwsOfferingDatabasesDspm { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderFoDatabasesAwsOfferingRds { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderForContainersAwsOffering extends CloudOffering { + cloudWatchToKinesis?: DefenderForContainersAwsOfferingCloudWatchToKinesis; + dataCollectionExternalId?: string; + enableAuditLogsAutoProvisioning?: boolean; + enableDefenderAgentAutoProvisioning?: boolean; + enablePolicyAgentAutoProvisioning?: boolean; + kinesisToS3?: DefenderForContainersAwsOfferingKinesisToS3; + kubeAuditRetentionTime?: number; + kubernetesDataCollection?: DefenderForContainersAwsOfferingKubernetesDataCollection; + kubernetesService?: DefenderForContainersAwsOfferingKubernetesService; + mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S; + mdcContainersImageAssessment?: DefenderForContainersAwsOfferingMdcContainersImageAssessment; + offeringType: "DefenderForContainersAws"; + vmScanners?: DefenderForContainersAwsOfferingVmScanners; +} + +// @public +export interface DefenderForContainersAwsOfferingCloudWatchToKinesis { + cloudRoleArn?: string; +} + +// @public +export interface DefenderForContainersAwsOfferingKinesisToS3 { + cloudRoleArn?: string; +} + +// @public +export interface DefenderForContainersAwsOfferingKubernetesDataCollection { + cloudRoleArn?: string; +} + +// @public +export interface DefenderForContainersAwsOfferingKubernetesService { + cloudRoleArn?: string; +} + +// @public +export interface DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderForContainersAwsOfferingMdcContainersImageAssessment { + cloudRoleArn?: string; + enabled?: boolean; +} + +// @public +export interface DefenderForContainersAwsOfferingVmScanners extends VmScannersAws { +} + +// @public +export interface DefenderForContainersDockerHubOffering extends CloudOffering { + offeringType: "DefenderForContainersDockerHub"; +} + +// @public +export interface DefenderForContainersGcpOffering extends CloudOffering { + dataPipelineNativeCloudConnection?: DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection; + enableAuditLogsAutoProvisioning?: boolean; + enableDefenderAgentAutoProvisioning?: boolean; + enablePolicyAgentAutoProvisioning?: boolean; + mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S; + mdcContainersImageAssessment?: DefenderForContainersGcpOfferingMdcContainersImageAssessment; + nativeCloudConnection?: DefenderForContainersGcpOfferingNativeCloudConnection; + offeringType: "DefenderForContainersGcp"; + vmScanners?: DefenderForContainersGcpOfferingVmScanners; +} + +// @public +export interface DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection { + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S { + enabled?: boolean; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForContainersGcpOfferingMdcContainersImageAssessment { + enabled?: boolean; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForContainersGcpOfferingNativeCloudConnection { + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForContainersGcpOfferingVmScanners extends VmScannersGcp { +} + +// @public +export interface DefenderForContainersJFrogOffering extends CloudOffering { + offeringType: "DefenderForContainersJFrog"; +} + +// @public +export interface DefenderForDatabasesGcpOffering extends CloudOffering { + arcAutoProvisioning?: DefenderForDatabasesGcpOfferingArcAutoProvisioning; + defenderForDatabasesArcAutoProvisioning?: DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning; + offeringType: "DefenderForDatabasesGcp"; +} + +// @public +export interface DefenderForDatabasesGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp { +} + +// @public +export interface DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning { + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForServersAwsOffering extends CloudOffering { + arcAutoProvisioning?: DefenderForServersAwsOfferingArcAutoProvisioning; + defenderForServers?: DefenderForServersAwsOfferingDefenderForServers; + mdeAutoProvisioning?: DefenderForServersAwsOfferingMdeAutoProvisioning; + offeringType: "DefenderForServersAws"; + subPlan?: DefenderForServersAwsOfferingSubPlan; + vaAutoProvisioning?: DefenderForServersAwsOfferingVaAutoProvisioning; + vmScanners?: DefenderForServersAwsOfferingVmScanners; +} + +// @public +export interface DefenderForServersAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws { +} + +// @public +export interface DefenderForServersAwsOfferingDefenderForServers { + cloudRoleArn?: string; +} + +// @public +export interface DefenderForServersAwsOfferingMdeAutoProvisioning { + configuration?: any; + enabled?: boolean; +} + +// @public +export interface DefenderForServersAwsOfferingSubPlan { + type?: SubPlan; +} + +// @public +export interface DefenderForServersAwsOfferingVaAutoProvisioning { + configuration?: DefenderForServersAwsOfferingVaAutoProvisioningConfiguration; + enabled?: boolean; +} + +// @public +export interface DefenderForServersAwsOfferingVaAutoProvisioningConfiguration { + type?: Type; +} + +// @public +export interface DefenderForServersAwsOfferingVmScanners extends VmScannersAws { +} + +// @public +export interface DefenderForServersGcpOffering extends CloudOffering { + arcAutoProvisioning?: DefenderForServersGcpOfferingArcAutoProvisioning; + defenderForServers?: DefenderForServersGcpOfferingDefenderForServers; + mdeAutoProvisioning?: DefenderForServersGcpOfferingMdeAutoProvisioning; + offeringType: "DefenderForServersGcp"; + subPlan?: DefenderForServersGcpOfferingSubPlan; + vaAutoProvisioning?: DefenderForServersGcpOfferingVaAutoProvisioning; + vmScanners?: DefenderForServersGcpOfferingVmScanners; +} + +// @public +export interface DefenderForServersGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp { +} + +// @public +export interface DefenderForServersGcpOfferingDefenderForServers { + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export interface DefenderForServersGcpOfferingMdeAutoProvisioning { + configuration?: any; + enabled?: boolean; +} + +// @public +export interface DefenderForServersGcpOfferingSubPlan { + type?: SubPlan; +} + +// @public +export interface DefenderForServersGcpOfferingVaAutoProvisioning { + configuration?: DefenderForServersGcpOfferingVaAutoProvisioningConfiguration; + enabled?: boolean; +} + +// @public +export interface DefenderForServersGcpOfferingVaAutoProvisioningConfiguration { + type?: Type; +} + +// @public +export interface DefenderForServersGcpOfferingVmScanners extends VmScannersGcp { +} + +// @public +export interface DockerHubEnvironmentData extends EnvironmentData { + authentication?: AuthenticationUnion; + environmentType: "DockerHubOrganization"; + scanInterval?: number; +} + +// @public +export interface EnvironmentData { + environmentType: EnvironmentType; +} + +// @public +export type EnvironmentDataUnion = AwsEnvironmentData | GcpProjectEnvironmentData | GithubScopeEnvironmentData | AzureDevOpsScopeEnvironmentData | GitlabScopeEnvironmentData | DockerHubEnvironmentData | JFrogEnvironmentData | EnvironmentData; + +// @public +export type EnvironmentType = string; + +// @public +export interface GcpOrganizationalData { + organizationMembershipType: OrganizationMembershipType; +} + +// @public +export interface GcpOrganizationalDataMember extends GcpOrganizationalData { + managementProjectNumber?: string; + organizationMembershipType: "Member"; + parentHierarchyId?: string; +} + +// @public +export interface GcpOrganizationalDataOrganization extends GcpOrganizationalData { + excludedProjectNumbers?: string[]; + organizationMembershipType: "Organization"; + readonly organizationName?: string; + serviceAccountEmailAddress?: string; + workloadIdentityProviderId?: string; +} + +// @public +export type GcpOrganizationalDataUnion = GcpOrganizationalDataOrganization | GcpOrganizationalDataMember | GcpOrganizationalData; + +// @public +export interface GcpProjectDetails { + projectId?: string; + readonly projectName?: string; + projectNumber?: string; + readonly workloadIdentityPoolId?: string; +} + +// @public +export interface GcpProjectEnvironmentData extends EnvironmentData { + environmentType: "GcpProject"; + organizationalData?: GcpOrganizationalDataUnion; + projectDetails?: GcpProjectDetails; + scanInterval?: number; +} + +// @public +export interface GithubScopeEnvironmentData extends EnvironmentData { + environmentType: "GithubScope"; +} + +// @public +export interface GitlabScopeEnvironmentData extends EnvironmentData { + environmentType: "GitlabScope"; +} + +// @public +export interface JFrogEnvironmentData extends EnvironmentData { + environmentType: "JFrogArtifactory"; + scanInterval?: number; +} + +// @public +export enum KnownAuthenticationType { + AccessToken = "AccessToken" +} + +// @public +export enum KnownCloudName { + AWS = "AWS", + Azure = "Azure", + AzureDevOps = "AzureDevOps", + DockerHub = "DockerHub", + GCP = "GCP", + Github = "Github", + GitLab = "GitLab", + JFrog = "JFrog" +} + +// @public +export enum KnownEnvironmentType { + AwsAccount = "AwsAccount", + AzureDevOpsScope = "AzureDevOpsScope", + DockerHubOrganization = "DockerHubOrganization", + GcpProject = "GcpProject", + GithubScope = "GithubScope", + GitlabScope = "GitlabScope", + JFrogArtifactory = "JFrogArtifactory" +} + +// @public +export enum KnownOfferingType { + CspmMonitorAws = "CspmMonitorAws", + CspmMonitorAzureDevOps = "CspmMonitorAzureDevOps", + CspmMonitorDockerHub = "CspmMonitorDockerHub", + CspmMonitorGcp = "CspmMonitorGcp", + CspmMonitorGithub = "CspmMonitorGithub", + CspmMonitorGitLab = "CspmMonitorGitLab", + CspmMonitorJFrog = "CspmMonitorJFrog", + DefenderCspmAws = "DefenderCspmAws", + DefenderCspmDockerHub = "DefenderCspmDockerHub", + DefenderCspmGcp = "DefenderCspmGcp", + DefenderCspmJFrog = "DefenderCspmJFrog", + DefenderForContainersAws = "DefenderForContainersAws", + DefenderForContainersDockerHub = "DefenderForContainersDockerHub", + DefenderForContainersGcp = "DefenderForContainersGcp", + DefenderForContainersJFrog = "DefenderForContainersJFrog", + DefenderForDatabasesAws = "DefenderForDatabasesAws", + DefenderForDatabasesGcp = "DefenderForDatabasesGcp", + DefenderForServersAws = "DefenderForServersAws", + DefenderForServersGcp = "DefenderForServersGcp" +} + +// @public +export enum KnownOrganizationMembershipType { + Member = "Member", + Organization = "Organization" +} + +// @public +export enum KnownScanningMode { + Default = "Default" +} + +// @public +export enum KnownSubPlan { + P1 = "P1", + P2 = "P2" +} + +// @public +export enum KnownType { + Qualys = "Qualys", + TVM = "TVM" +} + +// @public +export type OfferingType = string; + +// @public +export type OrganizationMembershipType = string; + +// @public +export type ScanningMode = string; + +// @public +export interface SecurityConnector extends ProxyResource { + environmentData?: EnvironmentDataUnion; + environmentName?: CloudName; + etag?: string; + hierarchyIdentifier?: string; + readonly hierarchyIdentifierTrialEndDate?: Date; + kind?: string; + location?: string; + offerings?: CloudOfferingUnion[]; + tags?: Record; +} + +// @public +export interface SecurityConnectorProperties { + environmentData?: EnvironmentDataUnion; + environmentName?: CloudName; + hierarchyIdentifier?: string; + readonly hierarchyIdentifierTrialEndDate?: Date; + offerings?: CloudOfferingUnion[]; +} + +// @public +export type SubPlan = string; + +// @public +export type Type = string; + +// @public +export interface VmScannersAws extends VmScannersBase { + cloudRoleArn?: string; +} + +// @public +export interface VmScannersBase { + configuration?: VmScannersBaseConfiguration; + enabled?: boolean; +} + +// @public +export interface VmScannersBaseConfiguration { + exclusionTags?: Record; + scanningMode?: ScanningMode; +} + +// @public +export interface VmScannersGcp extends VmScannersBase { +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securityConnectorsDevOpsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-securityConnectorsDevOpsAPI-node.api.md new file mode 100644 index 000000000000..bf5a07ce4f25 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securityConnectorsDevOpsAPI-node.api.md @@ -0,0 +1,317 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface ActionableRemediation { + branchConfiguration?: TargetBranchConfiguration; + categoryConfigurations?: CategoryConfiguration[]; + inheritFromParentState?: InheritFromParentState; + state?: ActionableRemediationState; +} + +// @public +export type ActionableRemediationState = string; + +// @public +export interface AgentlessConfiguration { + agentlessAutoDiscovery?: AutoDiscovery; + agentlessEnabled?: AgentlessEnablement; + inventoryList?: InventoryList[]; + inventoryListType?: InventoryListKind; + scanners?: string[]; +} + +// @public +export type AgentlessEnablement = string; + +// @public +export type AnnotateDefaultBranchState = string; + +// @public +export interface Authorization { + code?: string; +} + +// @public +export type AutoDiscovery = string; + +// @public +export interface AzureDevOpsOrg extends ProxyResource { + properties?: AzureDevOpsOrgProperties; +} + +// @public +export interface AzureDevOpsOrgListResponse { + nextLink?: string; + value?: AzureDevOpsOrg[]; +} + +// @public +export interface AzureDevOpsOrgProperties { + actionableRemediation?: ActionableRemediation; + onboardingState?: OnboardingState; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; +} + +// @public +export interface AzureDevOpsProject extends ProxyResource { + properties?: AzureDevOpsProjectProperties; +} + +// @public +export interface AzureDevOpsProjectProperties { + actionableRemediation?: ActionableRemediation; + onboardingState?: OnboardingState; + parentOrgName?: string; + readonly projectId?: string; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; +} + +// @public +export interface AzureDevOpsRepository extends ProxyResource { + properties?: AzureDevOpsRepositoryProperties; +} + +// @public +export interface AzureDevOpsRepositoryProperties { + actionableRemediation?: ActionableRemediation; + onboardingState?: OnboardingState; + parentOrgName?: string; + parentProjectName?: string; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; + readonly repoId?: string; + readonly repoUrl?: string; + readonly visibility?: string; +} + +// @public +export interface CategoryConfiguration { + category?: RuleCategory; + minimumSeverityLevel?: string; +} + +// @public +export interface DevOpsCapability { + readonly name?: string; + readonly value?: string; +} + +// @public +export interface DevOpsConfiguration extends ProxyResource { + properties?: DevOpsConfigurationProperties; +} + +// @public +export interface DevOpsConfigurationProperties { + agentlessConfiguration?: AgentlessConfiguration; + authorization?: Authorization; + autoDiscovery?: AutoDiscovery; + readonly capabilities?: DevOpsCapability[]; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; + topLevelInventoryList?: string[]; +} + +// @public +export type DevOpsProvisioningState = string; + +// @public +export interface GitHubOwner extends ProxyResource { + properties?: GitHubOwnerProperties; +} + +// @public +export interface GitHubOwnerListResponse { + nextLink?: string; + value?: GitHubOwner[]; +} + +// @public +export interface GitHubOwnerProperties { + readonly gitHubInternalId?: string; + onboardingState?: OnboardingState; + readonly ownerUrl?: string; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; +} + +// @public +export interface GitHubRepository extends ProxyResource { + properties?: GitHubRepositoryProperties; +} + +// @public +export interface GitHubRepositoryProperties { + onboardingState?: OnboardingState; + parentOwnerName?: string; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; + readonly repoFullName?: string; + readonly repoId?: string; + readonly repoName?: string; + readonly repoUrl?: string; +} + +// @public +export interface GitLabGroup extends ProxyResource { + properties?: GitLabGroupProperties; +} + +// @public +export interface GitLabGroupListResponse { + nextLink?: string; + value?: GitLabGroup[]; +} + +// @public +export interface GitLabGroupProperties { + readonly fullyQualifiedFriendlyName?: string; + readonly fullyQualifiedName?: string; + onboardingState?: OnboardingState; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; + readonly url?: string; +} + +// @public +export interface GitLabProject extends ProxyResource { + properties?: GitLabProjectProperties; +} + +// @public +export interface GitLabProjectProperties { + readonly fullyQualifiedFriendlyName?: string; + readonly fullyQualifiedName?: string; + readonly fullyQualifiedParentGroupName?: string; + onboardingState?: OnboardingState; + readonly provisioningState?: DevOpsProvisioningState; + readonly provisioningStatusMessage?: string; + readonly provisioningStatusUpdateTimeUtc?: Date; + readonly url?: string; +} + +// @public +export type InheritFromParentState = string; + +// @public +export type InventoryKind = string; + +// @public +export interface InventoryList { + inventoryKind?: InventoryKind; + value?: string; +} + +// @public +export type InventoryListKind = string; + +// @public +export interface IssueCreationRequest { + securityAssessmentResourceId?: string; +} + +// @public +export enum KnownActionableRemediationState { + Disabled = "Disabled", + Enabled = "Enabled", + None = "None" +} + +// @public +export enum KnownAgentlessEnablement { + Disabled = "Disabled", + Enabled = "Enabled", + NotApplicable = "NotApplicable" +} + +// @public +export enum KnownAnnotateDefaultBranchState { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownAutoDiscovery { + Disabled = "Disabled", + Enabled = "Enabled", + NotApplicable = "NotApplicable" +} + +// @public +export enum KnownDevOpsProvisioningState { + Canceled = "Canceled", + DeletionFailure = "DeletionFailure", + DeletionSuccess = "DeletionSuccess", + Failed = "Failed", + Pending = "Pending", + PendingDeletion = "PendingDeletion", + Succeeded = "Succeeded" +} + +// @public +export enum KnownInheritFromParentState { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownInventoryKind { + AzureDevOpsOrganization = "AzureDevOpsOrganization", + AzureDevOpsProject = "AzureDevOpsProject", + AzureDevOpsRepository = "AzureDevOpsRepository", + GitHubOwner = "GitHubOwner", + GitHubRepository = "GitHubRepository" +} + +// @public +export enum KnownInventoryListKind { + Exclusion = "Exclusion", + Inclusion = "Inclusion" +} + +// @public +export enum KnownOnboardingState { + NotApplicable = "NotApplicable", + NotOnboarded = "NotOnboarded", + Onboarded = "Onboarded", + OnboardedByOtherConnector = "OnboardedByOtherConnector" +} + +// @public +export enum KnownRuleCategory { + Artifacts = "Artifacts", + Code = "Code", + Containers = "Containers", + Dependencies = "Dependencies", + IaC = "IaC", + Secrets = "Secrets" +} + +// @public +export type OnboardingState = string; + +// @public +export type RuleCategory = string; + +// @public +export interface TargetBranchConfiguration { + annotateDefaultBranch?: AnnotateDefaultBranchState; + branchNames?: string[]; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securityManagementClient-node.api.md b/sdk/security/arm-security/review/arm-security-models-securityManagementClient-node.api.md new file mode 100644 index 000000000000..ced3da142689 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securityManagementClient-node.api.md @@ -0,0 +1,14 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface PrivateLinkParameters { + privateLinkName: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securityOperatorsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-securityOperatorsAPI-node.api.md new file mode 100644 index 000000000000..6470941e2cc5 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securityOperatorsAPI-node.api.md @@ -0,0 +1,14 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface SecurityOperator extends ProxyResource { + identity?: Identity; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securitySolutionsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-securitySolutionsAPI-node.api.md new file mode 100644 index 000000000000..d8c452381f5c --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securitySolutionsAPI-node.api.md @@ -0,0 +1,386 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export type AadConnectivityState = string; + +// @public +export interface AadExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "AAD"; + properties?: AadSolutionProperties; +} + +// @public +export interface AadSolutionProperties extends ExternalSecuritySolutionProperties { + connectivityState?: AadConnectivityState; +} + +// @public +export interface AllowedConnectionsResource extends ProxyResource { + readonly calculatedDateTime?: Date; + readonly connectableResources?: ConnectableResource[]; + readonly location: string; +} + +// @public +export interface AllowedConnectionsResourceProperties { + readonly calculatedDateTime?: Date; + readonly connectableResources?: ConnectableResource[]; +} + +// @public +export interface AtaExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "ATA"; + properties?: AtaSolutionProperties; +} + +// @public +export interface AtaSolutionProperties extends ExternalSecuritySolutionProperties { + // (undocumented) + lastEventReceived?: string; +} + +// @public +export interface CefExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "CEF"; + properties?: CefSolutionProperties; +} + +// @public +export interface CefSolutionProperties extends ExternalSecuritySolutionProperties { + // (undocumented) + agent?: string; + // (undocumented) + hostname?: string; + // (undocumented) + lastEventReceived?: string; +} + +// @public +export interface ConnectableResource { + readonly id?: string; + readonly inboundConnectedResources?: ConnectedResource[]; + readonly outboundConnectedResources?: ConnectedResource[]; +} + +// @public +export interface ConnectedResource { + readonly connectedResourceId?: string; + readonly tcpPorts?: string; + readonly udpPorts?: string; +} + +// @public +export interface ConnectedWorkspace { + id?: string; +} + +// @public +export type ConnectionType = string; + +// @public +export interface DiscoveredSecuritySolution extends ProxyResource { + readonly location: string; + offer: string; + publisher: string; + securityFamily: SecurityFamily; + sku: string; +} + +// @public +export interface DiscoveredSecuritySolutionProperties { + offer: string; + publisher: string; + securityFamily: SecurityFamily; + sku: string; +} + +// @public +export interface ExternalSecuritySolution extends ProxyResource { + kind?: ExternalSecuritySolutionKind; + readonly location?: string; + properties?: any; +} + +// @public +export type ExternalSecuritySolutionKind = string; + +// @public +export interface ExternalSecuritySolutionProperties { + additionalProperties?: Record; + // (undocumented) + deviceType?: string; + // (undocumented) + deviceVendor?: string; + workspace?: ConnectedWorkspace; +} + +// @public +export type ExternalSecuritySolutionUnion = CefExternalSecuritySolution | AtaExternalSecuritySolution | AadExternalSecuritySolution | ExternalSecuritySolution; + +// @public +export interface JitNetworkAccessPolicy extends ProxyResource { + kind?: string; + readonly location: string; + readonly provisioningState?: string; + // (undocumented) + requests?: JitNetworkAccessRequest[]; + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; +} + +// @public +export interface JitNetworkAccessPolicyInitiatePort { + allowedSourceAddressPrefix?: string; + endTimeUtc: Date; + // (undocumented) + number: number; +} + +// @public +export interface JitNetworkAccessPolicyInitiateRequest { + justification?: string; + virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[]; +} + +// @public +export interface JitNetworkAccessPolicyInitiateVirtualMachine { + id: string; + ports: JitNetworkAccessPolicyInitiatePort[]; +} + +// @public +export interface JitNetworkAccessPolicyProperties { + readonly provisioningState?: string; + // (undocumented) + requests?: JitNetworkAccessRequest[]; + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; +} + +// @public +export interface JitNetworkAccessPolicyVirtualMachine { + id: string; + ports: JitNetworkAccessPortRule[]; + publicIpAddress?: string; +} + +// @public +export interface JitNetworkAccessPortRule { + allowedSourceAddressPrefix?: string; + allowedSourceAddressPrefixes?: string[]; + maxRequestAccessDuration: string; + // (undocumented) + number: number; + // (undocumented) + protocol: Protocol; +} + +// @public +export interface JitNetworkAccessRequest { + justification?: string; + requestor: string; + startTimeUtc: Date; + // (undocumented) + virtualMachines: JitNetworkAccessRequestVirtualMachine[]; +} + +// @public +export interface JitNetworkAccessRequestPort { + allowedSourceAddressPrefix?: string; + allowedSourceAddressPrefixes?: string[]; + endTimeUtc: Date; + mappedPort?: number; + // (undocumented) + number: number; + status: Status; + statusReason: StatusReason; +} + +// @public +export interface JitNetworkAccessRequestVirtualMachine { + id: string; + ports: JitNetworkAccessRequestPort[]; +} + +// @public +export enum KnownAadConnectivityState { + Connected = "Connected", + Discovered = "Discovered", + NotLicensed = "NotLicensed" +} + +// @public +export enum KnownConnectionType { + External = "External", + Internal = "Internal" +} + +// @public +export enum KnownExternalSecuritySolutionKind { + AAD = "AAD", + ATA = "ATA", + CEF = "CEF" +} + +// @public +export enum KnownProtocol { + // (undocumented) + All = "*", + TCP = "TCP", + UDP = "UDP" +} + +// @public +export enum KnownSecurityFamily { + Ngfw = "Ngfw", + SaasWaf = "SaasWaf", + Va = "Va", + Waf = "Waf" +} + +// @public +export enum KnownServerVulnerabilityAssessmentPropertiesProvisioningState { + Canceled = "Canceled", + Deprovisioning = "Deprovisioning", + Failed = "Failed", + Provisioning = "Provisioning", + Succeeded = "Succeeded" +} + +// @public +export enum KnownStatus { + Initiated = "Initiated", + Revoked = "Revoked" +} + +// @public +export enum KnownStatusReason { + Expired = "Expired", + NewerRequestInitiated = "NewerRequestInitiated", + UserRequested = "UserRequested" +} + +// @public +export type Protocol = string; + +// @public +export type SecurityFamily = string; + +// @public +export interface SecuritySolution extends ProxyResource { + readonly location: string; + protectionStatus?: string; + provisioningState?: ProvisioningState; + securityFamily?: SecurityFamily; + template?: string; +} + +// @public +export interface SecuritySolutionProperties { + protectionStatus: string; + provisioningState: ProvisioningState; + securityFamily: SecurityFamily; + template: string; +} + +// @public +export interface SecuritySolutionsReferenceData { + alertVendorName: string; + readonly id?: string; + readonly location?: string; + readonly name?: string; + packageInfoUrl: string; + productName: string; + publisher: string; + publisherDisplayName: string; + securityFamily: SecurityFamily; + readonly systemData?: SystemData; + template: string; + readonly type?: string; +} + +// @public +export interface SecuritySolutionsReferenceDataList { + // (undocumented) + value?: SecuritySolutionsReferenceData[]; +} + +// @public +export interface SecuritySolutionsReferenceDataProperties { + alertVendorName: string; + packageInfoUrl: string; + productName: string; + publisher: string; + publisherDisplayName: string; + securityFamily: SecurityFamily; + template: string; +} + +// @public +export interface ServerVulnerabilityAssessment extends ProxyResource { + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; +} + +// @public +export interface ServerVulnerabilityAssessmentProperties { + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; +} + +// @public +export type ServerVulnerabilityAssessmentPropertiesProvisioningState = string; + +// @public +export interface ServerVulnerabilityAssessmentsList { + // (undocumented) + value?: ServerVulnerabilityAssessment[]; +} + +// @public +export type Status = string; + +// @public +export type StatusReason = string; + +// @public +export interface TopologyResource extends ProxyResource { + readonly calculatedDateTime?: Date; + readonly location: string; + readonly topologyResources?: TopologySingleResource[]; +} + +// @public +export interface TopologyResourceProperties { + readonly calculatedDateTime?: Date; + readonly topologyResources?: TopologySingleResource[]; +} + +// @public +export interface TopologySingleResource { + readonly children?: TopologySingleResourceChild[]; + readonly location?: string; + readonly networkZones?: string; + readonly parents?: TopologySingleResourceParent[]; + readonly recommendationsExist?: boolean; + readonly resourceId?: string; + readonly severity?: string; + readonly topologyScore?: number; +} + +// @public +export interface TopologySingleResourceChild { + readonly resourceId?: string; +} + +// @public +export interface TopologySingleResourceParent { + readonly resourceId?: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-securityStandardsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-securityStandardsAPI-node.api.md new file mode 100644 index 000000000000..1dd04ce838cf --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-securityStandardsAPI-node.api.md @@ -0,0 +1,209 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AssignedAssessmentItem { + assessmentKey?: string; +} + +// @public +export type AttestationComplianceState = string; + +// @public +export interface AttestationEvidence { + description?: string; + sourceUrl?: string; +} + +// @public +export interface CustomRecommendation extends ExtensionResource { + readonly assessmentKey?: string; + cloudProviders?: RecommendationSupportedClouds[]; + description?: string; + displayName?: string; + query?: string; + remediationDescription?: string; + securityIssue?: SecurityIssue; + severity?: SeverityEnum; +} + +// @public +export interface CustomRecommendationProperties { + readonly assessmentKey?: string; + cloudProviders?: RecommendationSupportedClouds[]; + description?: string; + displayName?: string; + query?: string; + remediationDescription?: string; + securityIssue?: SecurityIssue; + severity?: SeverityEnum; +} + +// @public +export type Effect = string; + +// @public +export type ExemptionCategory = string; + +// @public +export enum KnownAttestationComplianceState { + Compliant = "compliant", + NonCompliant = "nonCompliant", + Unknown = "unknown" +} + +// @public +export enum KnownEffect { + Attest = "Attest", + Audit = "Audit", + Exempt = "Exempt" +} + +// @public +export enum KnownExemptionCategory { + Mitigated = "mitigated", + Waiver = "waiver" +} + +// @public +export enum KnownRecommendationSupportedClouds { + AWS = "AWS", + Azure = "Azure", + GCP = "GCP" +} + +// @public +export enum KnownSecurityIssue { + AnonymousAccess = "AnonymousAccess", + BestPractices = "BestPractices", + ExcessivePermissions = "ExcessivePermissions", + NetworkExposure = "NetworkExposure", + TrafficEncryption = "TrafficEncryption", + Vulnerability = "Vulnerability" +} + +// @public +export enum KnownSeverityEnum { + High = "High", + Low = "Low", + Medium = "Medium" +} + +// @public +export enum KnownStandardSupportedCloud { + AWS = "AWS", + Azure = "Azure", + GCP = "GCP" +} + +// @public +export enum KnownStandardType { + Compliance = "Compliance", + Custom = "Custom", + Default = "Default" +} + +// @public +export interface PartialAssessmentProperties { + assessmentKey?: string; +} + +// @public +export type RecommendationSupportedClouds = string; + +// @public +export type SecurityIssue = string; + +// @public +export interface SecurityStandard extends ExtensionResource { + assessments?: PartialAssessmentProperties[]; + cloudProviders?: StandardSupportedCloud[]; + description?: string; + displayName?: string; + metadata?: StandardMetadata; + policySetDefinitionId?: string; + readonly standardType?: StandardType; +} + +// @public +export interface SecurityStandardProperties { + assessments?: PartialAssessmentProperties[]; + cloudProviders?: StandardSupportedCloud[]; + description?: string; + displayName?: string; + metadata?: StandardMetadata; + policySetDefinitionId?: string; + readonly standardType?: StandardType; +} + +// @public +export type SeverityEnum = string; + +// @public +export interface StandardAssignment extends ExtensionResource { + assignedStandard?: AssignedStandardItem; + attestationData?: StandardAssignmentPropertiesAttestationData; + description?: string; + displayName?: string; + effect?: Effect; + excludedScopes?: string[]; + exemptionData?: StandardAssignmentPropertiesExemptionData; + expiresOn?: Date; + metadata?: StandardAssignmentMetadata; +} + +// @public +export interface StandardAssignmentMetadata { + readonly createdBy?: string; + readonly createdOn?: Date; + readonly lastUpdatedBy?: string; + readonly lastUpdatedOn?: Date; +} + +// @public +export interface StandardAssignmentProperties { + assignedStandard?: AssignedStandardItem; + attestationData?: StandardAssignmentPropertiesAttestationData; + description?: string; + displayName?: string; + effect?: Effect; + excludedScopes?: string[]; + exemptionData?: StandardAssignmentPropertiesExemptionData; + expiresOn?: Date; + metadata?: StandardAssignmentMetadata; +} + +// @public +export interface StandardAssignmentPropertiesAttestationData { + assignedAssessment?: AssignedAssessmentItem; + readonly complianceDate?: Date; + complianceState?: AttestationComplianceState; + evidence?: AttestationEvidence[]; +} + +// @public +export interface StandardAssignmentPropertiesExemptionData { + assignedAssessment?: AssignedAssessmentItem; + exemptionCategory?: ExemptionCategory; +} + +// @public +export interface StandardMetadata { + readonly createdBy?: string; + readonly createdOn?: Date; + readonly lastUpdatedBy?: string; + readonly lastUpdatedOn?: Date; +} + +// @public +export type StandardSupportedCloud = string; + +// @public +export type StandardType = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-sensitivitySettingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-sensitivitySettingsAPI-node.api.md new file mode 100644 index 000000000000..6a8a32c25f07 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-sensitivitySettingsAPI-node.api.md @@ -0,0 +1,75 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface BuiltInInfoType { + id?: string; + name?: string; + type?: string; +} + +// @public +export interface GetSensitivitySettingsListResponse { + // (undocumented) + value?: GetSensitivitySettingsResponse[]; +} + +// @public +export interface GetSensitivitySettingsResponse extends ProxyResource { + properties?: GetSensitivitySettingsResponseProperties; +} + +// @public +export interface GetSensitivitySettingsResponseProperties { + mipInformation?: GetSensitivitySettingsResponsePropertiesMipInformation; + sensitiveInfoTypesIds?: string[]; + sensitivityThresholdLabelId?: string; + sensitivityThresholdLabelOrder?: number; +} + +// @public +export interface GetSensitivitySettingsResponsePropertiesMipInformation { + builtInInfoTypes?: BuiltInInfoType[]; + customInfoTypes?: InfoType[]; + labels?: Label[]; + mipIntegrationStatus?: MipIntegrationStatus; +} + +// @public +export interface InfoType { + description?: string; + id?: string; + name?: string; +} + +// @public +export enum KnownMipIntegrationStatus { + NoAutoLabelingRules = "noAutoLabelingRules", + NoConsent = "noConsent", + NoMipLabels = "noMipLabels", + Ok = "Ok" +} + +// @public +export interface Label { + id?: string; + name?: string; + order?: number; +} + +// @public +export type MipIntegrationStatus = string; + +// @public +export interface UpdateSensitivitySettingsRequest { + sensitiveInfoTypesIds: string[]; + sensitivityThresholdLabelId?: string; + sensitivityThresholdLabelOrder?: number; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-serverVulnerabilityAssessmentsSettingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-serverVulnerabilityAssessmentsSettingsAPI-node.api.md new file mode 100644 index 000000000000..f573c3b7a42d --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-serverVulnerabilityAssessmentsSettingsAPI-node.api.md @@ -0,0 +1,53 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AzureServersSetting extends ServerVulnerabilityAssessmentsSetting { + kind: "AzureServersSetting"; + selectedProvider?: ServerVulnerabilityAssessmentsAzureSettingSelectedProvider; +} + +// @public +export enum KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider { + MdeTvm = "MdeTvm" +} + +// @public +export enum KnownServerVulnerabilityAssessmentsSettingKind { + AzureServersSetting = "AzureServersSetting" +} + +// @public +export enum KnownServerVulnerabilityAssessmentsSettingKindName { + AzureServersSetting = "azureServersSetting" +} + +// @public +export interface ServerVulnerabilityAssessmentsAzureSettingProperties { + selectedProvider: ServerVulnerabilityAssessmentsAzureSettingSelectedProvider; +} + +// @public +export type ServerVulnerabilityAssessmentsAzureSettingSelectedProvider = string; + +// @public +export interface ServerVulnerabilityAssessmentsSetting extends ProxyResource { + kind: ServerVulnerabilityAssessmentsSettingKind; + properties?: Record; +} + +// @public +export type ServerVulnerabilityAssessmentsSettingKind = string; + +// @public +export type ServerVulnerabilityAssessmentsSettingKindName = string; + +// @public +export type ServerVulnerabilityAssessmentsSettingUnion = AzureServersSetting | ServerVulnerabilityAssessmentsSetting; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-settingsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-settingsAPI-node.api.md new file mode 100644 index 000000000000..757653726ce4 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-settingsAPI-node.api.md @@ -0,0 +1,50 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AlertSyncSettingProperties { + enabled: boolean; +} + +// @public +export interface AlertSyncSettings extends Setting { + enabled?: boolean; + kind: "AlertSyncSettings"; +} + +// @public +export interface DataExportSettingProperties { + enabled: boolean; +} + +// @public +export interface DataExportSettings extends Setting { + enabled?: boolean; + kind: "DataExportSettings"; +} + +// @public +export enum KnownSettingKind { + AlertSuppressionSetting = "AlertSuppressionSetting", + AlertSyncSettings = "AlertSyncSettings", + DataExportSettings = "DataExportSettings" +} + +// @public +export interface Setting extends ProxyResource { + kind: SettingKind; + properties?: Record; +} + +// @public +export type SettingKind = string; + +// @public +export type SettingUnion = DataExportSettings | AlertSyncSettings | Setting; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-sqlVulnerabilityAssessmentsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-sqlVulnerabilityAssessmentsAPI-node.api.md new file mode 100644 index 000000000000..421058ee9e9a --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-sqlVulnerabilityAssessmentsAPI-node.api.md @@ -0,0 +1,223 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface Baseline { + expectedResults?: string[][]; + updatedTime?: Date; +} + +// @public +export interface BaselineAdjustedResult { + baseline?: Baseline; + resultsNotInBaseline?: string[][]; + resultsOnlyInBaseline?: string[][]; + status?: RuleStatus; +} + +// @public +export interface BenchmarkReference { + benchmark?: string; + reference?: string; +} + +// @public +export enum KnownRuleSeverity { + High = "High", + Informational = "Informational", + Low = "Low", + Medium = "Medium", + Obsolete = "Obsolete" +} + +// @public +export enum KnownRuleStatus { + Finding = "Finding", + InternalError = "InternalError", + NonFinding = "NonFinding", + NotApplicable = "NotApplicable" +} + +// @public +export enum KnownRuleType { + BaselineExpected = "BaselineExpected", + Binary = "Binary", + NegativeList = "NegativeList", + PositiveList = "PositiveList" +} + +// @public +export enum KnownScanOperationStatus { + Failed = "Failed", + FailedToRun = "FailedToRun", + InProgress = "InProgress", + Passed = "Passed" +} + +// @public +export enum KnownScanState { + Failed = "Failed", + FailedToRun = "FailedToRun", + InProgress = "InProgress", + Passed = "Passed" +} + +// @public +export enum KnownScanTriggerType { + OnDemand = "OnDemand", + Recurring = "Recurring" +} + +// @public +export enum KnownSqlVulnerabilityAssessmentState { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export interface QueryCheck { + columnNames?: string[]; + expectedResult?: string[][]; + query?: string; +} + +// @public +export interface Remediation { + automated?: boolean; + description?: string; + portalLink?: string; + scripts?: string[]; +} + +// @public +export interface RuleResults extends ExtensionResource { + properties?: RuleResultsProperties; +} + +// @public +export interface RuleResultsInput { + latestScan?: boolean; + results?: string[][]; +} + +// @public +export interface RuleResultsProperties { + latestScan?: boolean; + results?: string[][]; +} + +// @public +export type RuleSeverity = string; + +// @public +export interface RulesResults { + // (undocumented) + nextLink?: string; + value?: RuleResults[]; +} + +// @public +export interface RulesResultsInput { + latestScan?: boolean; + results?: Record; +} + +// @public +export type RuleStatus = string; + +// @public +export type RuleType = string; + +// @public +export type ScanOperationStatus = string; + +// @public +export interface ScanPropertiesV2 { + database?: string; + endTime?: Date; + highSeverityFailedRulesCount?: number; + isBaselineApplied?: boolean; + lastScanTime?: Date; + lowSeverityFailedRulesCount?: number; + mediumSeverityFailedRulesCount?: number; + server?: string; + sqlVersion?: string; + startTime?: Date; + state?: ScanState; + totalFailedRulesCount?: number; + totalPassedRulesCount?: number; + totalRulesCount?: number; + triggerType?: ScanTriggerType; +} + +// @public +export interface ScanResult extends ExtensionResource { + properties?: ScanResultProperties; +} + +// @public +export interface ScanResultProperties { + baselineAdjustedResult?: BaselineAdjustedResult; + isTrimmed?: boolean; + queryResults?: string[][]; + remediation?: Remediation; + ruleId?: string; + ruleMetadata?: VaRule; + status?: RuleStatus; +} + +// @public +export type ScanState = string; + +// @public +export type ScanTriggerType = string; + +// @public +export interface ScanV2 extends ExtensionResource { + properties?: ScanPropertiesV2; +} + +// @public +export interface SqlVulnerabilityAssessmentScanOperationResult extends Resource { + properties?: SqlVulnerabilityAssessmentScanOperationResultProperties; +} + +// @public +export interface SqlVulnerabilityAssessmentScanOperationResultProperties { + operationId?: string; + scanStatus?: ScanOperationStatus; +} + +// @public +export interface SqlVulnerabilityAssessmentSettings extends ExtensionResource { + properties?: SqlVulnerabilityAssessmentSettingsProperties; +} + +// @public +export interface SqlVulnerabilityAssessmentSettingsProperties { + readonly creationTime?: Date; + state?: SqlVulnerabilityAssessmentState; +} + +// @public +export type SqlVulnerabilityAssessmentState = string; + +// @public +export interface VaRule { + benchmarkReferences?: BenchmarkReference[]; + category?: string; + description?: string; + queryCheck?: QueryCheck; + rationale?: string; + ruleId?: string; + ruleType?: RuleType; + severity?: RuleSeverity; + title?: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-standardsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-standardsAPI-node.api.md new file mode 100644 index 000000000000..db19e13f59ba --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-standardsAPI-node.api.md @@ -0,0 +1,81 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AssignedComponentItem { + key?: string; +} + +// @public +export interface Assignment extends ProxyResource { + additionalData?: AssignmentPropertiesAdditionalData; + assignedComponent?: AssignedComponentItem; + assignedStandard?: AssignedStandardItem; + description?: string; + displayName?: string; + effect?: string; + etag?: string; + expiresOn?: Date; + kind?: string; + location?: string; + metadata?: any; + scope?: string; + tags?: Record; +} + +// @public +export interface AssignmentProperties { + additionalData?: AssignmentPropertiesAdditionalData; + assignedComponent?: AssignedComponentItem; + assignedStandard?: AssignedStandardItem; + description?: string; + displayName?: string; + effect?: string; + expiresOn?: Date; + metadata?: any; + scope?: string; +} + +// @public +export interface AssignmentPropertiesAdditionalData { + exemptionCategory?: string; +} + +// @public +export interface Standard extends ProxyResource { + category?: string; + components?: StandardComponentProperties[]; + description?: string; + displayName?: string; + etag?: string; + kind?: string; + location?: string; + readonly standardType?: string; + supportedClouds?: StandardSupportedClouds[]; + tags?: Record; +} + +// @public +export interface StandardComponentProperties { + key?: string; +} + +// @public +export interface StandardProperties { + category?: string; + components?: StandardComponentProperties[]; + description?: string; + displayName?: string; + readonly standardType?: string; + supportedClouds?: StandardSupportedClouds[]; +} + +// @public +export type StandardSupportedClouds = "AWS" | "GCP"; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-subAssessmentsAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-subAssessmentsAPI-node.api.md new file mode 100644 index 000000000000..c29dd716b230 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-subAssessmentsAPI-node.api.md @@ -0,0 +1,125 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export interface AdditionalData { + assessedResourceType: AssessedResourceType; +} + +// @public +export type AdditionalDataUnion = SqlServerVulnerabilityProperties | ContainerRegistryVulnerabilityProperties | ServerVulnerabilityProperties | AdditionalData; + +// @public +export type AssessedResourceType = string; + +// @public +export interface ContainerRegistryVulnerabilityProperties extends AdditionalData { + assessedResourceType: "ContainerRegistryVulnerability"; + readonly cve?: Cve[]; + readonly cvss?: Record; + readonly imageDigest?: string; + readonly patchable?: boolean; + readonly publishedTime?: Date; + readonly repositoryName?: string; + readonly type?: string; + // (undocumented) + readonly vendorReferences?: VendorReference[]; +} + +// @public +export interface Cve { + readonly link?: string; + readonly title?: string; +} + +// @public +export interface Cvss { + readonly base?: number; +} + +// @public +export enum KnownAssessedResourceType { + ContainerRegistryVulnerability = "ContainerRegistryVulnerability", + ServerVulnerability = "ServerVulnerability", + ServerVulnerabilityAssessment = "ServerVulnerabilityAssessment", + SqlServerVulnerability = "SqlServerVulnerability" +} + +// @public +export enum KnownSubAssessmentStatusCode { + Healthy = "Healthy", + NotApplicable = "NotApplicable", + Unhealthy = "Unhealthy" +} + +// @public +export interface SecuritySubAssessment extends ExtensionResource { + additionalData?: AdditionalDataUnion; + readonly category?: string; + readonly description?: string; + readonly displayName?: string; + readonly idPropertiesId?: string; + readonly impact?: string; + readonly remediation?: string; + resourceDetails?: ResourceDetailsUnion; + status?: SubAssessmentStatus; + readonly timeGenerated?: Date; +} + +// @public +export interface SecuritySubAssessmentProperties { + additionalData?: AdditionalDataUnion; + readonly category?: string; + readonly description?: string; + readonly displayName?: string; + readonly id?: string; + readonly impact?: string; + readonly remediation?: string; + resourceDetails?: ResourceDetailsUnion; + status?: SubAssessmentStatus; + readonly timeGenerated?: Date; +} + +// @public +export interface ServerVulnerabilityProperties extends AdditionalData { + assessedResourceType: "ServerVulnerabilityAssessment"; + readonly cve?: Cve[]; + readonly cvss?: Record; + readonly patchable?: boolean; + readonly publishedTime?: Date; + readonly threat?: string; + readonly type?: string; + // (undocumented) + readonly vendorReferences?: VendorReference[]; +} + +// @public +export interface SqlServerVulnerabilityProperties extends AdditionalData { + assessedResourceType: "SqlServerVulnerability"; + readonly query?: string; + readonly type?: string; +} + +// @public +export interface SubAssessmentStatus { + readonly cause?: string; + readonly code?: SubAssessmentStatusCode; + readonly description?: string; + readonly severity?: Severity; +} + +// @public +export type SubAssessmentStatusCode = string; + +// @public +export interface VendorReference { + readonly link?: string; + readonly title?: string; +} + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-models-tasksAPI-node.api.md b/sdk/security/arm-security/review/arm-security-models-tasksAPI-node.api.md new file mode 100644 index 000000000000..9fa9bf5fc377 --- /dev/null +++ b/sdk/security/arm-security/review/arm-security-models-tasksAPI-node.api.md @@ -0,0 +1,45 @@ +## API Report File for "@azure/arm-security" + +> Do not edit this file. It is a report generated by [API Extractor](https://api-extractor.com/). + +```ts + +// @public +export enum KnownTaskUpdateActionType { + Activate = "Activate", + Close = "Close", + Dismiss = "Dismiss", + Resolve = "Resolve", + Start = "Start" +} + +// @public +export interface SecurityTask extends ProxyResource { + readonly creationTimeUtc?: Date; + readonly lastStateChangeTimeUtc?: Date; + securityTaskParameters?: SecurityTaskParameters; + readonly state?: string; + readonly subState?: string; +} + +// @public +export interface SecurityTaskParameters { + additionalProperties?: Record; + readonly name?: string; +} + +// @public +export interface SecurityTaskProperties { + readonly creationTimeUtc?: Date; + readonly lastStateChangeTimeUtc?: Date; + securityTaskParameters?: SecurityTaskParameters; + readonly state?: string; + readonly subState?: string; +} + +// @public +export type TaskUpdateActionType = string; + +// (No @packageDocumentation comment for this package) + +``` diff --git a/sdk/security/arm-security/review/arm-security-node.api.md b/sdk/security/arm-security/review/arm-security-node.api.md index 4b7ab436af42..3dfd82633426 100644 --- a/sdk/security/arm-security/review/arm-security-node.api.md +++ b/sdk/security/arm-security/review/arm-security-node.api.md @@ -4,27 +4,36 @@ ```ts -import * as coreAuth from '@azure/core-auth'; -import * as coreClient from '@azure/core-client'; +import { AbortSignalLike } from '@azure/abort-controller'; +import { CancelOnProgress } from '@azure/core-lro'; +import { ClientOptions } from '@azure-rest/core-client'; +import { OperationOptions } from '@azure-rest/core-client'; import { OperationState } from '@azure/core-lro'; -import { PagedAsyncIterableIterator } from '@azure/core-paging'; -import { SimplePollerLike } from '@azure/core-lro'; +import { PathUncheckedResponse } from '@azure-rest/core-client'; +import { Pipeline } from '@azure/core-rest-pipeline'; +import { PollerLike } from '@azure/core-lro'; +import { TokenCredential } from '@azure/core-auth'; // @public export type AadConnectivityState = string; // @public -export interface AadConnectivityStateAutoGenerated { - connectivityState?: AadConnectivityState; +export interface AadExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "AAD"; + properties?: AadSolutionProperties; } // @public -export interface AadExternalSecuritySolution extends ExternalSecuritySolution { - properties?: AadSolutionProperties; +export interface AadSolutionProperties extends ExternalSecuritySolutionProperties { + connectivityState?: AadConnectivityState; } // @public -export interface AadSolutionProperties extends ExternalSecuritySolutionProperties, AadConnectivityStateAutoGenerated { +export interface AccessTokenAuthentication extends Authentication { + accessToken?: string; + authenticationType: "AccessToken"; + username?: string; } // @public @@ -41,136 +50,13 @@ export type ActionableRemediationState = string; // @public export type ActionType = string; -// @public -export interface ActiveConnectionsNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "ActiveConnectionsNotInAllowedRange"; -} - -// @public (undocumented) -export interface AdaptiveApplicationControlGroup extends Resource, Location { - readonly configurationStatus?: ConfigurationStatus; - enforcementMode?: EnforcementMode; - readonly issues?: AdaptiveApplicationControlIssueSummary[]; - // (undocumented) - pathRecommendations?: PathRecommendation[]; - protectionMode?: ProtectionMode; - readonly recommendationStatus?: RecommendationStatus; - readonly sourceSystem?: SourceSystem; - // (undocumented) - vmRecommendations?: VmRecommendation[]; -} - -// @public -export interface AdaptiveApplicationControlGroups { - // (undocumented) - value?: AdaptiveApplicationControlGroup[]; -} - -// @public -export type AdaptiveApplicationControlIssue = string; - -// @public -export interface AdaptiveApplicationControlIssueSummary { - issue?: AdaptiveApplicationControlIssue; - numberOfVms?: number; -} - -// @public -export interface AdaptiveApplicationControls { - delete(ascLocation: string, groupName: string, options?: AdaptiveApplicationControlsDeleteOptionalParams): Promise; - get(ascLocation: string, groupName: string, options?: AdaptiveApplicationControlsGetOptionalParams): Promise; - list(options?: AdaptiveApplicationControlsListOptionalParams): Promise; - put(ascLocation: string, groupName: string, body: AdaptiveApplicationControlGroup, options?: AdaptiveApplicationControlsPutOptionalParams): Promise; -} - -// @public -export interface AdaptiveApplicationControlsDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface AdaptiveApplicationControlsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AdaptiveApplicationControlsGetResponse = AdaptiveApplicationControlGroup; - -// @public -export interface AdaptiveApplicationControlsListOptionalParams extends coreClient.OperationOptions { - includePathRecommendations?: boolean; - summary?: boolean; -} - -// @public -export type AdaptiveApplicationControlsListResponse = AdaptiveApplicationControlGroups; - -// @public -export interface AdaptiveApplicationControlsPutOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AdaptiveApplicationControlsPutResponse = AdaptiveApplicationControlGroup; - -// @public -export interface AdaptiveNetworkHardening extends Resource { - effectiveNetworkSecurityGroups?: EffectiveNetworkSecurityGroups[]; - rules?: Rule[]; - rulesCalculationTime?: Date; -} - -// @public (undocumented) -export interface AdaptiveNetworkHardeningEnforceRequest { - networkSecurityGroups: string[]; - rules: Rule[]; -} - -// @public -export interface AdaptiveNetworkHardenings { - beginEnforce(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: AdaptiveNetworkHardeningEnforceRequest, options?: AdaptiveNetworkHardeningsEnforceOptionalParams): Promise, void>>; - beginEnforceAndWait(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, body: AdaptiveNetworkHardeningEnforceRequest, options?: AdaptiveNetworkHardeningsEnforceOptionalParams): Promise; - get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, adaptiveNetworkHardeningResourceName: string, options?: AdaptiveNetworkHardeningsGetOptionalParams): Promise; - listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: AdaptiveNetworkHardeningsListByExtendedResourceOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AdaptiveNetworkHardeningsEnforceOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; - updateIntervalInMs?: number; -} - -// @public -export interface AdaptiveNetworkHardeningsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AdaptiveNetworkHardeningsGetResponse = AdaptiveNetworkHardening; - -// @public -export interface AdaptiveNetworkHardeningsList { - nextLink?: string; - value?: AdaptiveNetworkHardening[]; -} - -// @public -export interface AdaptiveNetworkHardeningsListByExtendedResourceNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AdaptiveNetworkHardeningsListByExtendedResourceNextResponse = AdaptiveNetworkHardeningsList; - -// @public -export interface AdaptiveNetworkHardeningsListByExtendedResourceOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AdaptiveNetworkHardeningsListByExtendedResourceResponse = AdaptiveNetworkHardeningsList; - // @public export interface AdditionalData { - assessedResourceType: "SqlServerVulnerability" | "ContainerRegistryVulnerability" | "ServerVulnerabilityAssessment"; + assessedResourceType: AssessedResourceType; } -// @public (undocumented) -export type AdditionalDataUnion = AdditionalData | SqlServerVulnerabilityProperties | ContainerRegistryVulnerabilityProperties | ServerVulnerabilityProperties; +// @public +export type AdditionalDataUnion = SqlServerVulnerabilityProperties | ContainerRegistryVulnerabilityProperties | ServerVulnerabilityProperties | AdditionalData; // @public export type AdditionalWorkspaceDataType = string; @@ -186,32 +72,43 @@ export interface AdditionalWorkspacesProperties { export type AdditionalWorkspaceType = string; // @public -export interface AdvancedThreatProtection { - create(resourceId: string, advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, options?: AdvancedThreatProtectionCreateOptionalParams): Promise; - get(resourceId: string, options?: AdvancedThreatProtectionGetOptionalParams): Promise; +export interface AdvancedThreatProtectionCreateOptionalParams extends OperationOptions { } // @public -export interface AdvancedThreatProtectionCreateOptionalParams extends coreClient.OperationOptions { +export interface AdvancedThreatProtectionGetOptionalParams extends OperationOptions { } // @public -export type AdvancedThreatProtectionCreateResponse = AdvancedThreatProtectionSetting; +export interface AdvancedThreatProtectionOperations { + create: (resourceId: string, advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, options?: AdvancedThreatProtectionCreateOptionalParams) => Promise; + get: (resourceId: string, options?: AdvancedThreatProtectionGetOptionalParams) => Promise; +} // @public -export interface AdvancedThreatProtectionGetOptionalParams extends coreClient.OperationOptions { +export interface AdvancedThreatProtectionProperties { + isEnabled?: boolean; } // @public -export type AdvancedThreatProtectionGetResponse = AdvancedThreatProtectionSetting; +export interface AdvancedThreatProtectionSetting extends ExtensionResource { + isEnabled?: boolean; +} // @public -export interface AdvancedThreatProtectionSetting extends Resource { - isEnabled?: boolean; +export interface AgentlessConfiguration { + agentlessAutoDiscovery?: AutoDiscovery; + agentlessEnabled?: AgentlessEnablement; + inventoryList?: InventoryList[]; + inventoryListType?: InventoryListKind; + scanners?: string[]; } // @public -export interface Alert extends Resource { +export type AgentlessEnablement = string; + +// @public +export interface Alert extends ProxyResource { readonly alertDisplayName?: string; readonly alertType?: string; readonly alertUri?: string; @@ -220,12 +117,8 @@ export interface Alert extends Resource { readonly description?: string; readonly endTimeUtc?: Date; readonly entities?: AlertEntity[]; - readonly extendedLinks?: { - [propertyName: string]: string; - }[]; - extendedProperties?: { - [propertyName: string]: string; - }; + readonly extendedLinks?: Record[]; + extendedProperties?: Record; readonly intent?: Intent; readonly isIncident?: boolean; readonly processingEndTimeUtc?: Date; @@ -247,59 +140,58 @@ export interface Alert extends Resource { // @public export interface AlertEntity { - [property: string]: any; + additionalProperties?: Record; readonly type?: string; } // @public -export interface AlertList { - readonly nextLink?: string; - value?: Alert[]; +export interface AlertProperties { + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly alertUri?: string; + readonly compromisedEntity?: string; + readonly correlationKey?: string; + readonly description?: string; + readonly endTimeUtc?: Date; + readonly entities?: AlertEntity[]; + readonly extendedLinks?: Record[]; + extendedProperties?: Record; + readonly intent?: Intent; + readonly isIncident?: boolean; + readonly processingEndTimeUtc?: Date; + readonly productComponentName?: string; + readonly productName?: string; + readonly remediationSteps?: string[]; + readonly resourceIdentifiers?: ResourceIdentifierUnion[]; + readonly severity?: AlertSeverity; + readonly startTimeUtc?: Date; + readonly status?: AlertStatus; + readonly subTechniques?: string[]; + supportingEvidence?: AlertPropertiesSupportingEvidence; + readonly systemAlertId?: string; + readonly techniques?: string[]; + readonly timeGeneratedUtc?: Date; + readonly vendorName?: string; + readonly version?: string; } // @public export interface AlertPropertiesSupportingEvidence { - [property: string]: any; + additionalProperties?: Record; readonly type?: string; } -// @public -export interface Alerts { - beginSimulate(ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams): Promise, void>>; - beginSimulateAndWait(ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams): Promise; - getResourceGroupLevel(resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsGetResourceGroupLevelOptionalParams): Promise; - getSubscriptionLevel(ascLocation: string, alertName: string, options?: AlertsGetSubscriptionLevelOptionalParams): Promise; - list(options?: AlertsListOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, options?: AlertsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listResourceGroupLevelByRegion(ascLocation: string, resourceGroupName: string, options?: AlertsListResourceGroupLevelByRegionOptionalParams): PagedAsyncIterableIterator; - listSubscriptionLevelByRegion(ascLocation: string, options?: AlertsListSubscriptionLevelByRegionOptionalParams): PagedAsyncIterableIterator; - updateResourceGroupLevelStateToActivate(resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams): Promise; - updateResourceGroupLevelStateToDismiss(resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams): Promise; - updateResourceGroupLevelStateToInProgress(resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams): Promise; - updateResourceGroupLevelStateToResolve(resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams): Promise; - updateSubscriptionLevelStateToActivate(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams): Promise; - updateSubscriptionLevelStateToDismiss(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams): Promise; - updateSubscriptionLevelStateToInProgress(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams): Promise; - updateSubscriptionLevelStateToResolve(ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams): Promise; -} - // @public export type AlertSeverity = string; // @public -export interface AlertsGetResourceGroupLevelOptionalParams extends coreClient.OperationOptions { +export interface AlertsGetResourceGroupLevelOptionalParams extends OperationOptions { } // @public -export type AlertsGetResourceGroupLevelResponse = Alert; - -// @public -export interface AlertsGetSubscriptionLevelOptionalParams extends coreClient.OperationOptions { +export interface AlertsGetSubscriptionLevelOptionalParams extends OperationOptions { } -// @public -export type AlertsGetSubscriptionLevelResponse = Alert; - // @public export interface AlertSimulatorBundlesRequestProperties extends AlertSimulatorRequestProperties { bundles?: BundleType[]; @@ -313,77 +205,59 @@ export interface AlertSimulatorRequestBody { // @public export interface AlertSimulatorRequestProperties { - [property: string]: any; - kind: "Bundles"; -} - -// @public (undocumented) -export type AlertSimulatorRequestPropertiesUnion = AlertSimulatorRequestProperties | AlertSimulatorBundlesRequestProperties; - -// @public -export interface AlertsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AlertsListByResourceGroupNextResponse = AlertList; - -// @public -export interface AlertsListByResourceGroupOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AlertsListByResourceGroupResponse = AlertList; - -// @public -export interface AlertsListNextOptionalParams extends coreClient.OperationOptions { + additionalProperties?: Record; + kind: Kind; } // @public -export type AlertsListNextResponse = AlertList; +export type AlertSimulatorRequestPropertiesUnion = AlertSimulatorBundlesRequestProperties | AlertSimulatorRequestProperties; // @public -export interface AlertsListOptionalParams extends coreClient.OperationOptions { +export interface AlertsListByResourceGroupOptionalParams extends OperationOptions { } // @public -export interface AlertsListResourceGroupLevelByRegionNextOptionalParams extends coreClient.OperationOptions { +export interface AlertsListOptionalParams extends OperationOptions { } // @public -export type AlertsListResourceGroupLevelByRegionNextResponse = AlertList; - -// @public -export interface AlertsListResourceGroupLevelByRegionOptionalParams extends coreClient.OperationOptions { +export interface AlertsListResourceGroupLevelByRegionOptionalParams extends OperationOptions { } // @public -export type AlertsListResourceGroupLevelByRegionResponse = AlertList; - -// @public -export type AlertsListResponse = AlertList; - -// @public -export interface AlertsListSubscriptionLevelByRegionNextOptionalParams extends coreClient.OperationOptions { +export interface AlertsListSubscriptionLevelByRegionOptionalParams extends OperationOptions { } // @public -export type AlertsListSubscriptionLevelByRegionNextResponse = AlertList; - -// @public -export interface AlertsListSubscriptionLevelByRegionOptionalParams extends coreClient.OperationOptions { +export interface AlertsOperations { + // @deprecated (undocumented) + beginSimulate: (ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginSimulateAndWait: (ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams) => Promise; + getResourceGroupLevel: (resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsGetResourceGroupLevelOptionalParams) => Promise; + getSubscriptionLevel: (ascLocation: string, alertName: string, options?: AlertsGetSubscriptionLevelOptionalParams) => Promise; + list: (options?: AlertsListOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, options?: AlertsListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + listResourceGroupLevelByRegion: (resourceGroupName: string, ascLocation: string, options?: AlertsListResourceGroupLevelByRegionOptionalParams) => PagedAsyncIterableIterator; + listSubscriptionLevelByRegion: (ascLocation: string, options?: AlertsListSubscriptionLevelByRegionOptionalParams) => PagedAsyncIterableIterator; + simulate: (ascLocation: string, alertSimulatorRequestBody: AlertSimulatorRequestBody, options?: AlertsSimulateOptionalParams) => PollerLike, void>; + updateResourceGroupLevelStateToActivate: (resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams) => Promise; + updateResourceGroupLevelStateToDismiss: (resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams) => Promise; + updateResourceGroupLevelStateToInProgress: (resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams) => Promise; + updateResourceGroupLevelStateToResolve: (resourceGroupName: string, ascLocation: string, alertName: string, options?: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams) => Promise; + updateSubscriptionLevelStateToActivate: (ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams) => Promise; + updateSubscriptionLevelStateToDismiss: (ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams) => Promise; + updateSubscriptionLevelStateToInProgress: (ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams) => Promise; + updateSubscriptionLevelStateToResolve: (ascLocation: string, alertName: string, options?: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams) => Promise; } // @public -export type AlertsListSubscriptionLevelByRegionResponse = AlertList; - -// @public -export interface AlertsSimulateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AlertsSimulateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export interface AlertsSuppressionRule extends Resource { +export interface AlertsSuppressionRule extends ProxyResource { alertType?: string; comment?: string; expirationDateUtc?: Date; @@ -394,86 +268,79 @@ export interface AlertsSuppressionRule extends Resource { } // @public -export interface AlertsSuppressionRules { - delete(alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesDeleteOptionalParams): Promise; - get(alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesGetOptionalParams): Promise; - list(options?: AlertsSuppressionRulesListOptionalParams): PagedAsyncIterableIterator; - update(alertsSuppressionRuleName: string, alertsSuppressionRule: AlertsSuppressionRule, options?: AlertsSuppressionRulesUpdateOptionalParams): Promise; +export interface AlertsSuppressionRuleProperties { + alertType: string; + comment?: string; + expirationDateUtc?: Date; + readonly lastModifiedUtc?: Date; + reason: string; + state: RuleState; + suppressionAlertsScope?: SuppressionAlertsScope; } // @public -export interface AlertsSuppressionRulesDeleteOptionalParams extends coreClient.OperationOptions { +export interface AlertsSuppressionRulesDeleteOptionalParams extends OperationOptions { } // @public -export interface AlertsSuppressionRulesGetOptionalParams extends coreClient.OperationOptions { +export interface AlertsSuppressionRulesGetOptionalParams extends OperationOptions { } // @public -export type AlertsSuppressionRulesGetResponse = AlertsSuppressionRule; - -// @public -export interface AlertsSuppressionRulesList { - readonly nextLink?: string; - // (undocumented) - value: AlertsSuppressionRule[]; +export interface AlertsSuppressionRulesListOptionalParams extends OperationOptions { + alertType?: string; } // @public -export interface AlertsSuppressionRulesListNextOptionalParams extends coreClient.OperationOptions { +export interface AlertsSuppressionRulesOperations { + delete: (alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesDeleteOptionalParams) => Promise; + get: (alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesGetOptionalParams) => Promise; + list: (options?: AlertsSuppressionRulesListOptionalParams) => PagedAsyncIterableIterator; + update: (alertsSuppressionRuleName: string, alertsSuppressionRule: AlertsSuppressionRule, options?: AlertsSuppressionRulesUpdateOptionalParams) => Promise; } // @public -export type AlertsSuppressionRulesListNextResponse = AlertsSuppressionRulesList; - -// @public -export interface AlertsSuppressionRulesListOptionalParams extends coreClient.OperationOptions { - alertType?: string; +export interface AlertsSuppressionRulesUpdateOptionalParams extends OperationOptions { } // @public -export type AlertsSuppressionRulesListResponse = AlertsSuppressionRulesList; +export type AlertStatus = string; // @public -export interface AlertsSuppressionRulesUpdateOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateResourceGroupLevelStateToActivateOptionalParams extends OperationOptions { } // @public -export type AlertsSuppressionRulesUpdateResponse = AlertsSuppressionRule; - -// @public -export type AlertStatus = string; - -// @public -export interface AlertsUpdateResourceGroupLevelStateToActivateOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateResourceGroupLevelStateToDismissOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateResourceGroupLevelStateToDismissOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateResourceGroupLevelStateToResolveOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateResourceGroupLevelStateToResolveOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateSubscriptionLevelStateToActivateOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateSubscriptionLevelStateToActivateOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateSubscriptionLevelStateToDismissOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateSubscriptionLevelStateToDismissOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams extends coreClient.OperationOptions { +export interface AlertsUpdateSubscriptionLevelStateToResolveOptionalParams extends OperationOptions { } // @public -export interface AlertsUpdateSubscriptionLevelStateToResolveOptionalParams extends coreClient.OperationOptions { +export interface AlertSyncSettingProperties { + enabled: boolean; } // @public @@ -483,55 +350,33 @@ export interface AlertSyncSettings extends Setting { } // @public -export interface AllowedConnections { - get(resourceGroupName: string, ascLocation: string, connectionType: ConnectionType, options?: AllowedConnectionsGetOptionalParams): Promise; - list(options?: AllowedConnectionsListOptionalParams): PagedAsyncIterableIterator; - listByHomeRegion(ascLocation: string, options?: AllowedConnectionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AllowedConnectionsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AllowedConnectionsGetResponse = AllowedConnectionsResource; - -// @public -export interface AllowedConnectionsList { - readonly nextLink?: string; - readonly value?: AllowedConnectionsResource[]; +export interface AllowedConnectionsGetOptionalParams extends OperationOptions { } // @public -export interface AllowedConnectionsListByHomeRegionNextOptionalParams extends coreClient.OperationOptions { +export interface AllowedConnectionsListByHomeRegionOptionalParams extends OperationOptions { } // @public -export type AllowedConnectionsListByHomeRegionNextResponse = AllowedConnectionsList; - -// @public -export interface AllowedConnectionsListByHomeRegionOptionalParams extends coreClient.OperationOptions { +export interface AllowedConnectionsListOptionalParams extends OperationOptions { } // @public -export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList; - -// @public -export interface AllowedConnectionsListNextOptionalParams extends coreClient.OperationOptions { +export interface AllowedConnectionsOperations { + get: (resourceGroupName: string, ascLocation: string, connectionType: ConnectionType, options?: AllowedConnectionsGetOptionalParams) => Promise; + list: (options?: AllowedConnectionsListOptionalParams) => PagedAsyncIterableIterator; + listByHomeRegion: (ascLocation: string, options?: AllowedConnectionsListByHomeRegionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type AllowedConnectionsListNextResponse = AllowedConnectionsList; - -// @public -export interface AllowedConnectionsListOptionalParams extends coreClient.OperationOptions { +export interface AllowedConnectionsResource extends ProxyResource { + readonly calculatedDateTime?: Date; + readonly connectableResources?: ConnectableResource[]; + readonly location: string; } // @public -export type AllowedConnectionsListResponse = AllowedConnectionsList; - -// @public -export interface AllowedConnectionsResource extends Resource, Location { +export interface AllowedConnectionsResourceProperties { readonly calculatedDateTime?: Date; readonly connectableResources?: ConnectableResource[]; } @@ -539,32 +384,29 @@ export interface AllowedConnectionsResource extends Resource, Location { // @public export interface AllowlistCustomAlertRule extends ListCustomAlertRule { allowlistValues: string[]; - ruleType: "AllowlistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed"; -} - -// @public (undocumented) -export type AllowlistCustomAlertRuleUnion = AllowlistCustomAlertRule | ConnectionToIpNotAllowed | ConnectionFromIpNotAllowed | LocalUserNotAllowed | ProcessNotAllowed; - -// @public -export interface AmqpC2DMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "AmqpC2DMessagesNotInAllowedRange"; + // (undocumented) + ruleType: "AllowlistCustomAlertRule"; } // @public -export interface AmqpC2DRejectedMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "AmqpC2DRejectedMessagesNotInAllowedRange"; -} +export type AnnotateDefaultBranchState = string; // @public -export interface AmqpD2CMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "AmqpD2CMessagesNotInAllowedRange"; +export interface ApiCollection extends ExtensionResource { + readonly baseUrl?: string; + readonly discoveredVia?: string; + readonly displayName?: string; + readonly numberOfApiEndpoints?: number; + readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; + readonly numberOfExternalApiEndpoints?: number; + readonly numberOfInactiveApiEndpoints?: number; + readonly numberOfUnauthenticatedApiEndpoints?: number; + readonly provisioningState?: ProvisioningState; + readonly sensitivityLabel?: string; } // @public -export type AnnotateDefaultBranchState = string; - -// @public -export interface ApiCollection extends Resource { +export interface ApiCollectionProperties { readonly baseUrl?: string; readonly discoveredVia?: string; readonly displayName?: string; @@ -578,305 +420,294 @@ export interface ApiCollection extends Resource { } // @public -export interface ApiCollectionList { - readonly nextLink?: string; - readonly value?: ApiCollection[]; +export interface APICollectionsGetByAzureApiManagementServiceOptionalParams extends OperationOptions { } // @public -export interface APICollections { - beginOnboardAzureApiManagementApi(resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOnboardAzureApiManagementApiOptionalParams): Promise, APICollectionsOnboardAzureApiManagementApiResponse>>; - beginOnboardAzureApiManagementApiAndWait(resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOnboardAzureApiManagementApiOptionalParams): Promise; - getByAzureApiManagementService(resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsGetByAzureApiManagementServiceOptionalParams): Promise; - listByAzureApiManagementService(resourceGroupName: string, serviceName: string, options?: APICollectionsListByAzureApiManagementServiceOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, options?: APICollectionsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: APICollectionsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; - offboardAzureApiManagementApi(resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOffboardAzureApiManagementApiOptionalParams): Promise; +export interface APICollectionsListByAzureApiManagementServiceOptionalParams extends OperationOptions { } // @public -export interface APICollectionsGetByAzureApiManagementServiceOptionalParams extends coreClient.OperationOptions { +export interface APICollectionsListByResourceGroupOptionalParams extends OperationOptions { } // @public -export type APICollectionsGetByAzureApiManagementServiceResponse = ApiCollection; +export interface APICollectionsListBySubscriptionOptionalParams extends OperationOptions { +} // @public -export interface APICollectionsListByAzureApiManagementServiceNextOptionalParams extends coreClient.OperationOptions { +export interface APICollectionsOffboardAzureApiManagementApiOptionalParams extends OperationOptions { } // @public -export type APICollectionsListByAzureApiManagementServiceNextResponse = ApiCollectionList; +export interface APICollectionsOnboardAzureApiManagementApiOptionalParams extends OperationOptions { + updateIntervalInMs?: number; +} // @public -export interface APICollectionsListByAzureApiManagementServiceOptionalParams extends coreClient.OperationOptions { +export interface APICollectionsOperations { + // @deprecated (undocumented) + beginOnboardAzureApiManagementApi: (resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOnboardAzureApiManagementApiOptionalParams) => Promise, ApiCollection>>; + // @deprecated (undocumented) + beginOnboardAzureApiManagementApiAndWait: (resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOnboardAzureApiManagementApiOptionalParams) => Promise; + getByAzureApiManagementService: (resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsGetByAzureApiManagementServiceOptionalParams) => Promise; + listByAzureApiManagementService: (resourceGroupName: string, serviceName: string, options?: APICollectionsListByAzureApiManagementServiceOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, options?: APICollectionsListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: APICollectionsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; + offboardAzureApiManagementApi: (resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOffboardAzureApiManagementApiOptionalParams) => Promise; + onboardAzureApiManagementApi: (resourceGroupName: string, serviceName: string, apiId: string, options?: APICollectionsOnboardAzureApiManagementApiOptionalParams) => PollerLike, ApiCollection>; } // @public -export type APICollectionsListByAzureApiManagementServiceResponse = ApiCollectionList; +export interface Application extends ProxyResource { + conditionSets?: any[]; + description?: string; + displayName?: string; + sourceResourceType?: ApplicationSourceResourceType; +} // @public -export interface APICollectionsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +export interface ApplicationCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export type APICollectionsListByResourceGroupNextResponse = ApiCollectionList; +export interface ApplicationDeleteOptionalParams extends OperationOptions { +} // @public -export interface APICollectionsListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface ApplicationGetOptionalParams extends OperationOptions { } // @public -export type APICollectionsListByResourceGroupResponse = ApiCollectionList; +export interface ApplicationOperations { + createOrUpdate: (applicationId: string, application: Application, options?: ApplicationCreateOrUpdateOptionalParams) => Promise; + delete: (applicationId: string, options?: ApplicationDeleteOptionalParams) => Promise; + get: (applicationId: string, options?: ApplicationGetOptionalParams) => Promise; +} // @public -export interface APICollectionsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface ApplicationProperties { + conditionSets: any[]; + description?: string; + displayName?: string; + sourceResourceType: ApplicationSourceResourceType; } // @public -export type APICollectionsListBySubscriptionNextResponse = ApiCollectionList; +export interface ApplicationsListOptionalParams extends OperationOptions { +} // @public -export interface APICollectionsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface ApplicationsOperations { + list: (options?: ApplicationsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type APICollectionsListBySubscriptionResponse = ApiCollectionList; +export type ApplicationSourceResourceType = string; // @public -export interface APICollectionsOffboardAzureApiManagementApiOptionalParams extends coreClient.OperationOptions { +export interface ArcAutoProvisioning { + configuration?: ArcAutoProvisioningConfiguration; + enabled?: boolean; } // @public -export interface APICollectionsOnboardAzureApiManagementApiHeaders { - // (undocumented) - location?: string; +export interface ArcAutoProvisioningAws extends ArcAutoProvisioning { + cloudRoleArn?: string; } // @public -export interface APICollectionsOnboardAzureApiManagementApiOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; - updateIntervalInMs?: number; +export interface ArcAutoProvisioningConfiguration { + privateLinkScope?: string; + proxy?: string; } // @public -export type APICollectionsOnboardAzureApiManagementApiResponse = ApiCollection; +export interface ArcAutoProvisioningGcp extends ArcAutoProvisioning { +} // @public -export interface Application extends Resource { - conditionSets?: Record[]; - description?: string; - displayName?: string; - sourceResourceType?: ApplicationSourceResourceType; +export type ArmActionType = string; + +// @public +export interface ArmPrivateEndpointConnection extends Resource { + properties?: PrivateEndpointConnectionProperties; } // @public -export interface ApplicationCondition { - operator?: ApplicationConditionOperator; - property?: string; - value?: string; +export interface AscLocation extends ProxyResource { + properties?: any; } // @public -export type ApplicationConditionOperator = string; +export type AssessedResourceType = string; // @public -export interface ApplicationCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface AssessmentLinks { + readonly azurePortalUri?: string; } // @public -export type ApplicationCreateOrUpdateResponse = Application; +export interface AssessmentsCreateOrUpdateOptionalParams extends OperationOptions { +} // @public -export interface ApplicationDeleteOptionalParams extends coreClient.OperationOptions { +export interface AssessmentsDeleteOptionalParams extends OperationOptions { } // @public -export interface ApplicationGetOptionalParams extends coreClient.OperationOptions { +export interface AssessmentsGetOptionalParams extends OperationOptions { + expand?: ExpandEnum; } // @public -export type ApplicationGetResponse = Application; +export interface AssessmentsListOptionalParams extends OperationOptions { +} // @public -export interface ApplicationOperations { - createOrUpdate(applicationId: string, application: Application, options?: ApplicationCreateOrUpdateOptionalParams): Promise; - delete(applicationId: string, options?: ApplicationDeleteOptionalParams): Promise; - get(applicationId: string, options?: ApplicationGetOptionalParams): Promise; +export interface AssessmentsMetadataCreateInSubscriptionOptionalParams extends OperationOptions { } // @public -export interface Applications { - list(options?: ApplicationsListOptionalParams): PagedAsyncIterableIterator; +export interface AssessmentsMetadataDeleteInSubscriptionOptionalParams extends OperationOptions { } // @public -export interface ApplicationsList { - readonly nextLink?: string; - readonly value?: Application[]; +export interface AssessmentsMetadataGetInSubscriptionOptionalParams extends OperationOptions { } // @public -export interface ApplicationsListNextOptionalParams extends coreClient.OperationOptions { +export interface AssessmentsMetadataGetOptionalParams extends OperationOptions { } // @public -export type ApplicationsListNextResponse = ApplicationsList; +export interface AssessmentsMetadataListBySubscriptionOptionalParams extends OperationOptions { +} // @public -export interface ApplicationsListOptionalParams extends coreClient.OperationOptions { +export interface AssessmentsMetadataListOptionalParams extends OperationOptions { } // @public -export type ApplicationsListResponse = ApplicationsList; +export interface AssessmentsMetadataOperations { + createInSubscription: (assessmentMetadataName: string, assessmentMetadata: SecurityAssessmentMetadataResponse, options?: AssessmentsMetadataCreateInSubscriptionOptionalParams) => Promise; + deleteInSubscription: (assessmentMetadataName: string, options?: AssessmentsMetadataDeleteInSubscriptionOptionalParams) => Promise; + get: (assessmentMetadataName: string, options?: AssessmentsMetadataGetOptionalParams) => Promise; + getInSubscription: (assessmentMetadataName: string, options?: AssessmentsMetadataGetInSubscriptionOptionalParams) => Promise; + list: (options?: AssessmentsMetadataListOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: AssessmentsMetadataListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; +} // @public -export type ApplicationSourceResourceType = string; +export interface AssessmentsOperations { + createOrUpdate: (resourceId: string, assessmentName: string, assessment: SecurityAssessment, options?: AssessmentsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceId: string, assessmentName: string, options?: AssessmentsDeleteOptionalParams) => Promise; + get: (resourceId: string, assessmentName: string, options?: AssessmentsGetOptionalParams) => Promise; + list: (scope: string, options?: AssessmentsListOptionalParams) => PagedAsyncIterableIterator; +} // @public -export interface AscLocation extends Resource { - properties?: Record; +export interface AssessmentStatus { + cause?: string; + code: AssessmentStatusCode; + description?: string; } // @public -export interface AscLocationList { - readonly nextLink?: string; - readonly value?: AscLocation[]; +export type AssessmentStatusCode = string; + +// @public +export interface AssessmentStatusResponse extends AssessmentStatus { + readonly firstEvaluationDate?: Date; + readonly statusChangeDate?: Date; } // @public -export type AssessedResourceType = string; +export type AssessmentType = string; // @public -export interface AssessmentLinks { - readonly azurePortalUri?: string; +export interface AssignedAssessmentItem { + assessmentKey?: string; } // @public -export interface Assessments { - createOrUpdate(resourceId: string, assessmentName: string, assessment: SecurityAssessment, options?: AssessmentsCreateOrUpdateOptionalParams): Promise; - delete(resourceId: string, assessmentName: string, options?: AssessmentsDeleteOptionalParams): Promise; - get(resourceId: string, assessmentName: string, options?: AssessmentsGetOptionalParams): Promise; - list(scope: string, options?: AssessmentsListOptionalParams): PagedAsyncIterableIterator; +export interface AssignedComponentItem { + key?: string; } // @public -export interface AssessmentsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface AssignedStandardItem { + id?: string; } // @public -export type AssessmentsCreateOrUpdateResponse = SecurityAssessmentResponse; - -// @public -export interface AssessmentsDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface AssessmentsGetOptionalParams extends coreClient.OperationOptions { - expand?: ExpandEnum; -} - -// @public -export type AssessmentsGetResponse = SecurityAssessmentResponse; - -// @public -export interface AssessmentsListNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AssessmentsListNextResponse = SecurityAssessmentList; - -// @public -export interface AssessmentsListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AssessmentsListResponse = SecurityAssessmentList; - -// @public -export interface AssessmentsMetadata { - createInSubscription(assessmentMetadataName: string, assessmentMetadata: SecurityAssessmentMetadataResponse, options?: AssessmentsMetadataCreateInSubscriptionOptionalParams): Promise; - deleteInSubscription(assessmentMetadataName: string, options?: AssessmentsMetadataDeleteInSubscriptionOptionalParams): Promise; - get(assessmentMetadataName: string, options?: AssessmentsMetadataGetOptionalParams): Promise; - getInSubscription(assessmentMetadataName: string, options?: AssessmentsMetadataGetInSubscriptionOptionalParams): Promise; - list(options?: AssessmentsMetadataListOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: AssessmentsMetadataListBySubscriptionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AssessmentsMetadataCreateInSubscriptionOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AssessmentsMetadataCreateInSubscriptionResponse = SecurityAssessmentMetadataResponse; - -// @public -export interface AssessmentsMetadataDeleteInSubscriptionOptionalParams extends coreClient.OperationOptions { +export interface Assignment extends ProxyResource { + additionalData?: AssignmentPropertiesAdditionalData; + assignedComponent?: AssignedComponentItem; + assignedStandard?: AssignedStandardItem; + description?: string; + displayName?: string; + effect?: string; + etag?: string; + expiresOn?: Date; + kind?: string; + location?: string; + metadata?: any; + scope?: string; + tags?: Record; } // @public -export interface AssessmentsMetadataGetInSubscriptionOptionalParams extends coreClient.OperationOptions { +export interface AssignmentProperties { + additionalData?: AssignmentPropertiesAdditionalData; + assignedComponent?: AssignedComponentItem; + assignedStandard?: AssignedStandardItem; + description?: string; + displayName?: string; + effect?: string; + expiresOn?: Date; + metadata?: any; + scope?: string; } // @public -export type AssessmentsMetadataGetInSubscriptionResponse = SecurityAssessmentMetadataResponse; - -// @public -export interface AssessmentsMetadataGetOptionalParams extends coreClient.OperationOptions { +export interface AssignmentPropertiesAdditionalData { + exemptionCategory?: string; } // @public -export type AssessmentsMetadataGetResponse = SecurityAssessmentMetadataResponse; - -// @public -export interface AssessmentsMetadataListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface AssignmentsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export type AssessmentsMetadataListBySubscriptionNextResponse = SecurityAssessmentMetadataResponseList; - -// @public -export interface AssessmentsMetadataListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface AssignmentsDeleteOptionalParams extends OperationOptions { } // @public -export type AssessmentsMetadataListBySubscriptionResponse = SecurityAssessmentMetadataResponseList; - -// @public -export interface AssessmentsMetadataListNextOptionalParams extends coreClient.OperationOptions { +export interface AssignmentsGetOptionalParams extends OperationOptions { } // @public -export type AssessmentsMetadataListNextResponse = SecurityAssessmentMetadataResponseList; - -// @public -export interface AssessmentsMetadataListOptionalParams extends coreClient.OperationOptions { +export interface AssignmentsListBySubscriptionOptionalParams extends OperationOptions { } // @public -export type AssessmentsMetadataListResponse = SecurityAssessmentMetadataResponseList; - -// @public -export interface AssessmentStatus { - cause?: string; - code: AssessmentStatusCode; - description?: string; +export interface AssignmentsListOptionalParams extends OperationOptions { } // @public -export type AssessmentStatusCode = string; - -// @public -export interface AssessmentStatusResponse extends AssessmentStatus { - readonly firstEvaluationDate?: Date; - readonly statusChangeDate?: Date; +export interface AssignmentsOperations { + createOrUpdate: (resourceGroupName: string, assignmentId: string, assignment: Assignment, options?: AssignmentsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, assignmentId: string, options?: AssignmentsDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, assignmentId: string, options?: AssignmentsGetOptionalParams) => Promise; + list: (resourceGroupName: string, options?: AssignmentsListOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: AssignmentsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type AssessmentType = string; - // @public export interface AtaExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "ATA"; properties?: AtaSolutionProperties; } @@ -887,21 +718,25 @@ export interface AtaSolutionProperties extends ExternalSecuritySolutionPropertie } // @public -export interface AuthenticationDetailsProperties { - readonly authenticationProvisioningState?: AuthenticationProvisioningState; - authenticationType: "awsCreds" | "awsAssumeRole" | "gcpCredentials"; - readonly grantedPermissions?: PermissionProperty[]; -} +export type AttestationComplianceState = string; -// @public (undocumented) -export type AuthenticationDetailsPropertiesUnion = AuthenticationDetailsProperties | AwsCredsAuthenticationDetailsProperties | AwAssumeRoleAuthenticationDetailsProperties | GcpCredentialsDetailsProperties; +// @public +export interface AttestationEvidence { + description?: string; + sourceUrl?: string; +} // @public -export type AuthenticationProvisioningState = string; +export interface Authentication { + authenticationType: AuthenticationType; +} // @public export type AuthenticationType = string; +// @public +export type AuthenticationUnion = AccessTokenAuthentication | Authentication; + // @public export interface Authorization { code?: string; @@ -911,17 +746,24 @@ export interface Authorization { export type AutoDiscovery = string; // @public -export interface Automation extends TrackedResource { +export type AutomatedResponseType = string; + +// @public +export interface Automation extends ProxyResource { actions?: AutomationActionUnion[]; description?: string; + etag?: string; isEnabled?: boolean; + kind?: string; + location?: string; scopes?: AutomationScope[]; sources?: AutomationSource[]; + tags?: Record; } // @public export interface AutomationAction { - actionType: "LogicApp" | "EventHub" | "Workspace"; + actionType: ActionType; } // @public @@ -940,8 +782,8 @@ export interface AutomationActionLogicApp extends AutomationAction { uri?: string; } -// @public (undocumented) -export type AutomationActionUnion = AutomationAction | AutomationActionLogicApp | AutomationActionEventHub | AutomationActionWorkspace; +// @public +export type AutomationActionUnion = AutomationActionLogicApp | AutomationActionEventHub | AutomationActionWorkspace | AutomationAction; // @public export interface AutomationActionWorkspace extends AutomationAction { @@ -950,9 +792,12 @@ export interface AutomationActionWorkspace extends AutomationAction { } // @public -export interface AutomationList { - readonly nextLink?: string; - value: Automation[]; +export interface AutomationProperties { + actions?: AutomationActionUnion[]; + description?: string; + isEnabled?: boolean; + scopes?: AutomationScope[]; + sources?: AutomationSource[]; } // @public @@ -961,17 +806,6 @@ export interface AutomationRuleSet { rules?: AutomationTriggeringRule[]; } -// @public -export interface Automations { - createOrUpdate(resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, automationName: string, options?: AutomationsDeleteOptionalParams): Promise; - get(resourceGroupName: string, automationName: string, options?: AutomationsGetOptionalParams): Promise; - list(options?: AutomationsListOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, options?: AutomationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, automationName: string, automation: AutomationUpdateModel, options?: AutomationsUpdateOptionalParams): Promise; - validate(resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsValidateOptionalParams): Promise; -} - // @public export interface AutomationScope { description?: string; @@ -979,51 +813,36 @@ export interface AutomationScope { } // @public -export interface AutomationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AutomationsCreateOrUpdateResponse = Automation; - -// @public -export interface AutomationsDeleteOptionalParams extends coreClient.OperationOptions { +export interface AutomationsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface AutomationsGetOptionalParams extends coreClient.OperationOptions { +export interface AutomationsDeleteOptionalParams extends OperationOptions { } // @public -export type AutomationsGetResponse = Automation; - -// @public -export interface AutomationsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +export interface AutomationsGetOptionalParams extends OperationOptions { } // @public -export type AutomationsListByResourceGroupNextResponse = AutomationList; - -// @public -export interface AutomationsListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface AutomationsListByResourceGroupOptionalParams extends OperationOptions { } // @public -export type AutomationsListByResourceGroupResponse = AutomationList; - -// @public -export interface AutomationsListNextOptionalParams extends coreClient.OperationOptions { +export interface AutomationsListOptionalParams extends OperationOptions { } // @public -export type AutomationsListNextResponse = AutomationList; - -// @public -export interface AutomationsListOptionalParams extends coreClient.OperationOptions { +export interface AutomationsOperations { + createOrUpdate: (resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, automationName: string, options?: AutomationsDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, automationName: string, options?: AutomationsGetOptionalParams) => Promise; + list: (options?: AutomationsListOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, options?: AutomationsListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, automationName: string, automation: AutomationUpdateModel, options?: AutomationsUpdateOptionalParams) => Promise; + validate: (resourceGroupName: string, automationName: string, automation: Automation, options?: AutomationsValidateOptionalParams) => Promise; } -// @public -export type AutomationsListResponse = AutomationList; - // @public export interface AutomationSource { eventSource?: EventSource_2; @@ -1031,19 +850,13 @@ export interface AutomationSource { } // @public -export interface AutomationsUpdateOptionalParams extends coreClient.OperationOptions { +export interface AutomationsUpdateOptionalParams extends OperationOptions { } // @public -export type AutomationsUpdateResponse = Automation; - -// @public -export interface AutomationsValidateOptionalParams extends coreClient.OperationOptions { +export interface AutomationsValidateOptionalParams extends OperationOptions { } -// @public -export type AutomationsValidateResponse = AutomationValidationStatus; - // @public export interface AutomationTriggeringRule { expectedValue?: string; @@ -1071,65 +884,32 @@ export interface AutomationValidationStatus { export type AutoProvision = string; // @public -export interface AutoProvisioningSetting extends Resource { +export interface AutoProvisioningSetting extends ProxyResource { autoProvision?: AutoProvision; } // @public -export interface AutoProvisioningSettingList { - readonly nextLink?: string; - value?: AutoProvisioningSetting[]; -} - -// @public -export interface AutoProvisioningSettings { - create(settingName: string, setting: AutoProvisioningSetting, options?: AutoProvisioningSettingsCreateOptionalParams): Promise; - get(settingName: string, options?: AutoProvisioningSettingsGetOptionalParams): Promise; - list(options?: AutoProvisioningSettingsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AutoProvisioningSettingsCreateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting; - -// @public -export interface AutoProvisioningSettingsGetOptionalParams extends coreClient.OperationOptions { +export interface AutoProvisioningSettingProperties { + autoProvision: AutoProvision; } // @public -export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting; - -// @public -export interface AutoProvisioningSettingsListNextOptionalParams extends coreClient.OperationOptions { +export interface AutoProvisioningSettingsCreateOptionalParams extends OperationOptions { } // @public -export type AutoProvisioningSettingsListNextResponse = AutoProvisioningSettingList; - -// @public -export interface AutoProvisioningSettingsListOptionalParams extends coreClient.OperationOptions { +export interface AutoProvisioningSettingsGetOptionalParams extends OperationOptions { } // @public -export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList; - -// @public -export interface AwAssumeRoleAuthenticationDetailsProperties extends AuthenticationDetailsProperties { - readonly accountId?: string; - authenticationType: "awsAssumeRole"; - awsAssumeRoleArn: string; - awsExternalId: string; +export interface AutoProvisioningSettingsListOptionalParams extends OperationOptions { } // @public -export interface AwsCredsAuthenticationDetailsProperties extends AuthenticationDetailsProperties { - readonly accountId?: string; - authenticationType: "awsCreds"; - awsAccessKeyId: string; - awsSecretAccessKey: string; +export interface AutoProvisioningSettingsOperations { + create: (settingName: string, setting: AutoProvisioningSetting, options?: AutoProvisioningSettingsCreateOptionalParams) => Promise; + get: (settingName: string, options?: AutoProvisioningSettingsGetOptionalParams) => Promise; + list: (options?: AutoProvisioningSettingsListOptionalParams) => PagedAsyncIterableIterator; } // @public @@ -1143,7 +923,7 @@ export interface AwsEnvironmentData extends EnvironmentData { // @public export interface AwsOrganizationalData { - organizationMembershipType: "Organization" | "Member"; + organizationMembershipType: OrganizationMembershipType; } // @public @@ -1159,21 +939,19 @@ export interface AwsOrganizationalDataMember extends AwsOrganizationalData { parentHierarchyId?: string; } -// @public (undocumented) -export type AwsOrganizationalDataUnion = AwsOrganizationalData | AwsOrganizationalDataMaster | AwsOrganizationalDataMember; +// @public +export type AwsOrganizationalDataUnion = AwsOrganizationalDataMaster | AwsOrganizationalDataMember | AwsOrganizationalData; // @public -export interface AzureDevOpsOrg extends ProxyResource { - properties?: AzureDevOpsOrgProperties; - readonly systemData?: SystemData; +export enum AzureClouds { + AZURE_CHINA_CLOUD = "AZURE_CHINA_CLOUD", + AZURE_PUBLIC_CLOUD = "AZURE_PUBLIC_CLOUD", + AZURE_US_GOVERNMENT = "AZURE_US_GOVERNMENT" } // @public -export interface AzureDevOpsOrganizationConfiguration { - autoDiscovery?: AutoDiscovery; - projectConfigs?: { - [propertyName: string]: AzureDevOpsProjectConfiguration; - }; +export interface AzureDevOpsOrg extends ProxyResource { + properties?: AzureDevOpsOrgProperties; } // @public @@ -1186,86 +964,53 @@ export interface AzureDevOpsOrgListResponse { export interface AzureDevOpsOrgProperties { actionableRemediation?: ActionableRemediation; onboardingState?: OnboardingState; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; } // @public -export interface AzureDevOpsOrgs { - beginCreateOrUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams): Promise, AzureDevOpsOrgsCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams): Promise; - beginUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsUpdateOptionalParams): Promise, AzureDevOpsOrgsUpdateResponse>>; - beginUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsUpdateOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, orgName: string, options?: AzureDevOpsOrgsGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, options?: AzureDevOpsOrgsListOptionalParams): PagedAsyncIterableIterator; - listAvailable(resourceGroupName: string, securityConnectorName: string, options?: AzureDevOpsOrgsListAvailableOptionalParams): Promise; -} - -// @public -export interface AzureDevOpsOrgsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsOrgsCreateOrUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export type AzureDevOpsOrgsCreateOrUpdateResponse = AzureDevOpsOrg; - -// @public -export interface AzureDevOpsOrgsGetOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsOrgsGetOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsOrgsGetResponse = AzureDevOpsOrg; - -// @public -export interface AzureDevOpsOrgsListAvailableOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsOrgsListAvailableOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsOrgsListAvailableResponse = AzureDevOpsOrgListResponse; - -// @public -export interface AzureDevOpsOrgsListNextOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsOrgsListOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsOrgsListNextResponse = AzureDevOpsOrgListResponse; - -// @public -export interface AzureDevOpsOrgsListOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsOrgsOperations { + // @deprecated (undocumented) + beginCreateOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams) => Promise, AzureDevOpsOrg>>; + // @deprecated (undocumented) + beginCreateOrUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams) => Promise; + // @deprecated (undocumented) + beginUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsUpdateOptionalParams) => Promise, AzureDevOpsOrg>>; + // @deprecated (undocumented) + beginUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsUpdateOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams) => PollerLike, AzureDevOpsOrg>; + get: (resourceGroupName: string, securityConnectorName: string, orgName: string, options?: AzureDevOpsOrgsGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, options?: AzureDevOpsOrgsListOptionalParams) => PagedAsyncIterableIterator; + listAvailable: (resourceGroupName: string, securityConnectorName: string, options?: AzureDevOpsOrgsListAvailableOptionalParams) => Promise; + update: (resourceGroupName: string, securityConnectorName: string, orgName: string, azureDevOpsOrg: AzureDevOpsOrg, options?: AzureDevOpsOrgsUpdateOptionalParams) => PollerLike, AzureDevOpsOrg>; } // @public -export type AzureDevOpsOrgsListResponse = AzureDevOpsOrgListResponse; - -// @public -export interface AzureDevOpsOrgsUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsOrgsUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } -// @public -export type AzureDevOpsOrgsUpdateResponse = AzureDevOpsOrg; - // @public export interface AzureDevOpsProject extends ProxyResource { properties?: AzureDevOpsProjectProperties; - readonly systemData?: SystemData; -} - -// @public -export interface AzureDevOpsProjectConfiguration { - autoDiscovery?: AutoDiscovery; - repositoryConfigs?: { - [propertyName: string]: BaseResourceConfiguration; - }; -} - -// @public -export interface AzureDevOpsProjectListResponse { - nextLink?: string; - value?: AzureDevOpsProject[]; } // @public @@ -1274,96 +1019,57 @@ export interface AzureDevOpsProjectProperties { onboardingState?: OnboardingState; parentOrgName?: string; readonly projectId?: string; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; } // @public -export interface AzureDevOpsProjects { - beginCreateOrUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams): Promise, AzureDevOpsProjectsCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams): Promise; - beginUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsUpdateOptionalParams): Promise, AzureDevOpsProjectsUpdateResponse>>; - beginUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsUpdateOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, options?: AzureDevOpsProjectsGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, orgName: string, options?: AzureDevOpsProjectsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AzureDevOpsProjectsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsProjectsCreateOrUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export type AzureDevOpsProjectsCreateOrUpdateResponse = AzureDevOpsProject; - -// @public -export interface AzureDevOpsProjectsGetOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsProjectsGetOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsProjectsGetResponse = AzureDevOpsProject; - -// @public -export interface AzureDevOpsProjectsListNextOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsProjectsListOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsProjectsListNextResponse = AzureDevOpsProjectListResponse; - -// @public -export interface AzureDevOpsProjectsListOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsProjectsOperations { + // @deprecated (undocumented) + beginCreateOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams) => Promise, AzureDevOpsProject>>; + // @deprecated (undocumented) + beginCreateOrUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams) => Promise; + // @deprecated (undocumented) + beginUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsUpdateOptionalParams) => Promise, AzureDevOpsProject>>; + // @deprecated (undocumented) + beginUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsUpdateOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams) => PollerLike, AzureDevOpsProject>; + get: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, options?: AzureDevOpsProjectsGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, orgName: string, options?: AzureDevOpsProjectsListOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, azureDevOpsProject: AzureDevOpsProject, options?: AzureDevOpsProjectsUpdateOptionalParams) => PollerLike, AzureDevOpsProject>; } // @public -export type AzureDevOpsProjectsListResponse = AzureDevOpsProjectListResponse; - -// @public -export interface AzureDevOpsProjectsUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsProjectsUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export type AzureDevOpsProjectsUpdateResponse = AzureDevOpsProject; - -// @public -export interface AzureDevOpsRepos { - beginCreateOrUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposCreateOrUpdateOptionalParams): Promise, AzureDevOpsReposCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposCreateOrUpdateOptionalParams): Promise; - beginUpdate(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposUpdateOptionalParams): Promise, AzureDevOpsReposUpdateResponse>>; - beginUpdateAndWait(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposUpdateOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, options?: AzureDevOpsReposGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, options?: AzureDevOpsReposListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface AzureDevOpsReposCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsReposCreateOrUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export type AzureDevOpsReposCreateOrUpdateResponse = AzureDevOpsRepository; - -// @public -export interface AzureDevOpsReposGetOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsReposGetOptionalParams extends OperationOptions { } -// @public -export type AzureDevOpsReposGetResponse = AzureDevOpsRepository; - // @public export interface AzureDevOpsRepository extends ProxyResource { properties?: AzureDevOpsRepositoryProperties; - readonly systemData?: SystemData; -} - -// @public -export interface AzureDevOpsRepositoryListResponse { - nextLink?: string; - value?: AzureDevOpsRepository[]; } // @public @@ -1372,7 +1078,7 @@ export interface AzureDevOpsRepositoryProperties { onboardingState?: OnboardingState; parentOrgName?: string; parentProjectName?: string; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; readonly repoId?: string; @@ -1381,28 +1087,30 @@ export interface AzureDevOpsRepositoryProperties { } // @public -export interface AzureDevOpsReposListNextOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsReposListOptionalParams extends OperationOptions { } // @public -export type AzureDevOpsReposListNextResponse = AzureDevOpsRepositoryListResponse; - -// @public -export interface AzureDevOpsReposListOptionalParams extends coreClient.OperationOptions { +export interface AzureDevOpsReposOperations { + // @deprecated (undocumented) + beginCreateOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposCreateOrUpdateOptionalParams) => Promise, AzureDevOpsRepository>>; + // @deprecated (undocumented) + beginCreateOrUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposCreateOrUpdateOptionalParams) => Promise; + // @deprecated (undocumented) + beginUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposUpdateOptionalParams) => Promise, AzureDevOpsRepository>>; + // @deprecated (undocumented) + beginUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposUpdateOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposCreateOrUpdateOptionalParams) => PollerLike, AzureDevOpsRepository>; + get: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, options?: AzureDevOpsReposGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, options?: AzureDevOpsReposListOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, securityConnectorName: string, orgName: string, projectName: string, repoName: string, azureDevOpsRepository: AzureDevOpsRepository, options?: AzureDevOpsReposUpdateOptionalParams) => PollerLike, AzureDevOpsRepository>; } // @public -export type AzureDevOpsReposListResponse = AzureDevOpsRepositoryListResponse; - -// @public -export interface AzureDevOpsReposUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface AzureDevOpsReposUpdateOptionalParams extends OperationOptions { updateIntervalInMs?: number; } -// @public -export type AzureDevOpsReposUpdateResponse = AzureDevOpsRepository; - // @public export interface AzureDevOpsScopeEnvironmentData extends EnvironmentData { environmentType: "AzureDevOpsScope"; @@ -1432,9 +1140,7 @@ export interface AzureServersSetting extends ServerVulnerabilityAssessmentsSetti } // @public -export interface AzureTrackedResourceLocation { - location?: string; -} +export type AzureSupportedClouds = `${AzureClouds}`; // @public export interface Baseline { @@ -1450,17 +1156,24 @@ export interface BaselineAdjustedResult { status?: RuleStatus; } -// @public -export interface BaseResourceConfiguration { - desiredOnboardingState?: DesiredOnboardingState; -} - // @public export interface BenchmarkReference { benchmark?: string; reference?: string; } +// @public +export type BlobScanResultsOptions = string; + +// @public +export interface BlobsScanSummary { + failedBlobsCount?: number; + maliciousBlobsCount?: number; + scannedBlobsInGB?: number; + skippedBlobsCount?: number; + totalBlobsScanned?: number; +} + // @public export interface BuiltInInfoType { id?: string; @@ -1482,6 +1195,8 @@ export interface CategoryConfiguration { // @public export interface CefExternalSecuritySolution extends ExternalSecuritySolution { + // (undocumented) + kind: "CEF"; properties?: CefSolutionProperties; } @@ -1519,70 +1234,48 @@ export type CloudName = string; // @public export interface CloudOffering { readonly description?: string; - offeringType: "CspmMonitorAws" | "DefenderForContainersAws" | "DefenderForServersAws" | "DefenderForDatabasesAws" | "InformationProtectionAws" | "CspmMonitorGcp" | "DefenderForServersGcp" | "DefenderForDatabasesGcp" | "DefenderForContainersGcp" | "CspmMonitorGithub" | "CspmMonitorAzureDevOps" | "DefenderCspmAws" | "DefenderCspmGcp" | "DefenderForDevOpsGithub" | "DefenderForDevOpsAzureDevOps" | "CspmMonitorGitLab" | "DefenderForDevOpsGitLab"; + offeringType: OfferingType; } -// @public (undocumented) -export type CloudOfferingUnion = CloudOffering | CspmMonitorAwsOffering | DefenderForContainersAwsOffering | DefenderForServersAwsOffering | DefenderFoDatabasesAwsOffering | InformationProtectionAwsOffering | CspmMonitorGcpOffering | DefenderForServersGcpOffering | DefenderForDatabasesGcpOffering | DefenderForContainersGcpOffering | CspmMonitorGithubOffering | CspmMonitorAzureDevOpsOffering | DefenderCspmAwsOffering | DefenderCspmGcpOffering | DefenderForDevOpsGithubOffering | DefenderForDevOpsAzureDevOpsOffering | CspmMonitorGitLabOffering | DefenderForDevOpsGitLabOffering; - // @public -export type Code = string; +export type CloudOfferingUnion = CspmMonitorAwsOffering | DefenderForContainersAwsOffering | DefenderForServersAwsOffering | DefenderFoDatabasesAwsOffering | CspmMonitorGcpOffering | DefenderForServersGcpOffering | DefenderForDatabasesGcpOffering | DefenderForContainersGcpOffering | CspmMonitorGithubOffering | CspmMonitorAzureDevOpsOffering | DefenderCspmAwsOffering | DefenderCspmGcpOffering | CspmMonitorGitLabOffering | CspmMonitorDockerHubOffering | DefenderForContainersDockerHubOffering | DefenderCspmDockerHubOffering | CspmMonitorJFrogOffering | DefenderForContainersJFrogOffering | DefenderCspmJFrogOffering | CloudOffering; // @public -export interface Compliance extends Resource { +export interface Compliance extends ExtensionResource { readonly assessmentResult?: ComplianceSegment[]; readonly assessmentTimestampUtcDate?: Date; readonly resourceCount?: number; } // @public -export interface ComplianceList { - readonly nextLink?: string; - value?: Compliance[]; +export interface ComplianceProperties { + readonly assessmentResult?: ComplianceSegment[]; + readonly assessmentTimestampUtcDate?: Date; + readonly resourceCount?: number; } // @public -export interface ComplianceResult extends Resource { +export interface ComplianceResult extends ExtensionResource { readonly resourceStatus?: ResourceStatus; } // @public -export interface ComplianceResultList { - readonly nextLink?: string; - value: ComplianceResult[]; -} - -// @public -export interface ComplianceResults { - get(resourceId: string, complianceResultName: string, options?: ComplianceResultsGetOptionalParams): Promise; - list(scope: string, options?: ComplianceResultsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface ComplianceResultsGetOptionalParams extends coreClient.OperationOptions { +export interface ComplianceResultProperties { + readonly resourceStatus?: ResourceStatus; } // @public -export type ComplianceResultsGetResponse = ComplianceResult; - -// @public -export interface ComplianceResultsListNextOptionalParams extends coreClient.OperationOptions { +export interface ComplianceResultsGetOptionalParams extends OperationOptions { } // @public -export type ComplianceResultsListNextResponse = ComplianceResultList; - -// @public -export interface ComplianceResultsListOptionalParams extends coreClient.OperationOptions { +export interface ComplianceResultsListOptionalParams extends OperationOptions { } // @public -export type ComplianceResultsListResponse = ComplianceResultList; - -// @public -export interface Compliances { - get(scope: string, complianceName: string, options?: CompliancesGetOptionalParams): Promise; - list(scope: string, options?: CompliancesListOptionalParams): PagedAsyncIterableIterator; +export interface ComplianceResultsOperations { + get: (resourceId: string, complianceResultName: string, options?: ComplianceResultsGetOptionalParams) => Promise; + list: (scope: string, options?: ComplianceResultsListOptionalParams) => PagedAsyncIterableIterator; } // @public @@ -1592,36 +1285,19 @@ export interface ComplianceSegment { } // @public -export interface CompliancesGetOptionalParams extends coreClient.OperationOptions { +export interface CompliancesGetOptionalParams extends OperationOptions { } // @public -export type CompliancesGetResponse = Compliance; - -// @public -export interface CompliancesListNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CompliancesListNextResponse = ComplianceList; - -// @public -export interface CompliancesListOptionalParams extends coreClient.OperationOptions { +export interface CompliancesListOptionalParams extends OperationOptions { } // @public -export type CompliancesListResponse = ComplianceList; - -// @public -export interface Condition { - operator?: GovernanceRuleConditionOperator; - property?: string; - value?: string; +export interface CompliancesOperations { + get: (scope: string, complianceName: string, options?: CompliancesGetOptionalParams) => Promise; + list: (scope: string, options?: CompliancesListOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type ConfigurationStatus = string; - // @public export interface ConnectableResource { readonly id?: string; @@ -1642,111 +1318,58 @@ export interface ConnectedWorkspace { } // @public -export interface ConnectionFromIpNotAllowed extends AllowlistCustomAlertRule { - ruleType: "ConnectionFromIpNotAllowed"; -} +export type ConnectionType = string; // @public -export interface ConnectionToIpNotAllowed extends AllowlistCustomAlertRule { - ruleType: "ConnectionToIpNotAllowed"; +export interface ContainerRegistryVulnerabilityProperties extends AdditionalData { + assessedResourceType: "ContainerRegistryVulnerability"; + readonly cve?: Cve[]; + readonly cvss?: Record; + readonly imageDigest?: string; + readonly patchable?: boolean; + readonly publishedTime?: Date; + readonly repositoryName?: string; + readonly type?: string; + // (undocumented) + readonly vendorReferences?: VendorReference[]; } // @public -export type ConnectionType = string; +export type ContinuablePage = TPage & { + continuationToken?: string; +}; // @public -export interface Connectors { - createOrUpdate(connectorName: string, connectorSetting: ConnectorSetting, options?: ConnectorsCreateOrUpdateOptionalParams): Promise; - delete(connectorName: string, options?: ConnectorsDeleteOptionalParams): Promise; - get(connectorName: string, options?: ConnectorsGetOptionalParams): Promise; - list(options?: ConnectorsListOptionalParams): PagedAsyncIterableIterator; -} +export type ControlType = string; // @public -export interface ConnectorsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { -} +export type CreatedByType = string; // @public -export type ConnectorsCreateOrUpdateResponse = ConnectorSetting; +export interface CspmMonitorAwsOffering extends CloudOffering { + nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection; + offeringType: "CspmMonitorAws"; +} // @public -export interface ConnectorsDeleteOptionalParams extends coreClient.OperationOptions { +export interface CspmMonitorAwsOfferingNativeCloudConnection { + cloudRoleArn?: string; } // @public -export interface ConnectorSetting extends Resource { - authenticationDetails?: AuthenticationDetailsPropertiesUnion; - hybridComputeSettings?: HybridComputeSettingsProperties; +export interface CspmMonitorAzureDevOpsOffering extends CloudOffering { + offeringType: "CspmMonitorAzureDevOps"; } // @public -export interface ConnectorSettingList { - readonly nextLink?: string; - value?: ConnectorSetting[]; +export interface CspmMonitorDockerHubOffering extends CloudOffering { + offeringType: "CspmMonitorDockerHub"; } // @public -export interface ConnectorsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ConnectorsGetResponse = ConnectorSetting; - -// @public -export interface ConnectorsListNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ConnectorsListNextResponse = ConnectorSettingList; - -// @public -export interface ConnectorsListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ConnectorsListResponse = ConnectorSettingList; - -// @public -export interface ContainerRegistryVulnerabilityProperties extends AdditionalData { - assessedResourceType: "ContainerRegistryVulnerability"; - readonly cve?: Cve[]; - readonly cvss?: { - [propertyName: string]: Cvss; - }; - readonly imageDigest?: string; - readonly patchable?: boolean; - readonly publishedTime?: Date; - readonly repositoryName?: string; - readonly type?: string; - readonly vendorReferences?: VendorReference[]; -} - -// @public -export type ControlType = string; - -// @public -export type CreatedByType = string; - -// @public -export interface CspmMonitorAwsOffering extends CloudOffering { - nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection; - offeringType: "CspmMonitorAws"; -} - -// @public -export interface CspmMonitorAwsOfferingNativeCloudConnection { - cloudRoleArn?: string; -} - -// @public -export interface CspmMonitorAzureDevOpsOffering extends CloudOffering { - offeringType: "CspmMonitorAzureDevOps"; -} - -// @public -export interface CspmMonitorGcpOffering extends CloudOffering { - nativeCloudConnection?: CspmMonitorGcpOfferingNativeCloudConnection; - offeringType: "CspmMonitorGcp"; +export interface CspmMonitorGcpOffering extends CloudOffering { + nativeCloudConnection?: CspmMonitorGcpOfferingNativeCloudConnection; + offeringType: "CspmMonitorGcp"; } // @public @@ -1765,171 +1388,68 @@ export interface CspmMonitorGitLabOffering extends CloudOffering { offeringType: "CspmMonitorGitLab"; } +// @public +export interface CspmMonitorJFrogOffering extends CloudOffering { + offeringType: "CspmMonitorJFrog"; +} + // @public export interface CustomAlertRule { readonly description?: string; readonly displayName?: string; isEnabled: boolean; - ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule" | "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange"; + ruleType: string; } -// @public (undocumented) -export type CustomAlertRuleUnion = CustomAlertRule | ThresholdCustomAlertRuleUnion | ListCustomAlertRuleUnion; +// @public +export type CustomAlertRuleUnion = ThresholdCustomAlertRuleUnion | ListCustomAlertRuleUnion | CustomAlertRule; // @public -export interface CustomAssessmentAutomation extends Resource { - assessmentKey?: string; - compressedQuery?: string; +export interface CustomRecommendation extends ExtensionResource { + readonly assessmentKey?: string; + cloudProviders?: RecommendationSupportedClouds[]; description?: string; displayName?: string; + query?: string; remediationDescription?: string; + securityIssue?: SecurityIssue; severity?: SeverityEnum; - supportedCloud?: SupportedCloudEnum; - readonly systemData?: SystemData; } // @public -export interface CustomAssessmentAutomationRequest extends Resource { - compressedQuery?: string; +export interface CustomRecommendationProperties { + readonly assessmentKey?: string; + cloudProviders?: RecommendationSupportedClouds[]; description?: string; displayName?: string; + query?: string; remediationDescription?: string; + securityIssue?: SecurityIssue; severity?: SeverityEnum; - supportedCloud?: SupportedCloudEnum; -} - -// @public -export interface CustomAssessmentAutomations { - create(resourceGroupName: string, customAssessmentAutomationName: string, customAssessmentAutomationBody: CustomAssessmentAutomationRequest, options?: CustomAssessmentAutomationsCreateOptionalParams): Promise; - delete(resourceGroupName: string, customAssessmentAutomationName: string, options?: CustomAssessmentAutomationsDeleteOptionalParams): Promise; - get(resourceGroupName: string, customAssessmentAutomationName: string, options?: CustomAssessmentAutomationsGetOptionalParams): Promise; - listByResourceGroup(resourceGroupName: string, options?: CustomAssessmentAutomationsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: CustomAssessmentAutomationsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; } // @public -export interface CustomAssessmentAutomationsCreateOptionalParams extends coreClient.OperationOptions { +export interface CustomRecommendationsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export type CustomAssessmentAutomationsCreateResponse = CustomAssessmentAutomation; - -// @public -export interface CustomAssessmentAutomationsDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface CustomAssessmentAutomationsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomAssessmentAutomationsGetResponse = CustomAssessmentAutomation; - -// @public -export interface CustomAssessmentAutomationsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomAssessmentAutomationsListByResourceGroupNextResponse = CustomAssessmentAutomationsListResult; - -// @public -export interface CustomAssessmentAutomationsListByResourceGroupOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomAssessmentAutomationsListByResourceGroupResponse = CustomAssessmentAutomationsListResult; - -// @public -export interface CustomAssessmentAutomationsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomAssessmentAutomationsListBySubscriptionNextResponse = CustomAssessmentAutomationsListResult; - -// @public -export interface CustomAssessmentAutomationsListBySubscriptionOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomAssessmentAutomationsListBySubscriptionResponse = CustomAssessmentAutomationsListResult; - -// @public -export interface CustomAssessmentAutomationsListResult { - nextLink?: string; - readonly value?: CustomAssessmentAutomation[]; -} - -// @public -export interface CustomEntityStoreAssignment extends Resource { - entityStoreDatabaseLink?: string; - principal?: string; - readonly systemData?: SystemData; -} - -// @public -export interface CustomEntityStoreAssignmentRequest { - principal?: string; -} - -// @public -export interface CustomEntityStoreAssignments { - create(resourceGroupName: string, customEntityStoreAssignmentName: string, customEntityStoreAssignmentRequestBody: CustomEntityStoreAssignmentRequest, options?: CustomEntityStoreAssignmentsCreateOptionalParams): Promise; - delete(resourceGroupName: string, customEntityStoreAssignmentName: string, options?: CustomEntityStoreAssignmentsDeleteOptionalParams): Promise; - get(resourceGroupName: string, customEntityStoreAssignmentName: string, options?: CustomEntityStoreAssignmentsGetOptionalParams): Promise; - listByResourceGroup(resourceGroupName: string, options?: CustomEntityStoreAssignmentsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: CustomEntityStoreAssignmentsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface CustomEntityStoreAssignmentsCreateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomEntityStoreAssignmentsCreateResponse = CustomEntityStoreAssignment; - -// @public -export interface CustomEntityStoreAssignmentsDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface CustomEntityStoreAssignmentsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomEntityStoreAssignmentsGetResponse = CustomEntityStoreAssignment; - -// @public -export interface CustomEntityStoreAssignmentsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type CustomEntityStoreAssignmentsListByResourceGroupNextResponse = CustomEntityStoreAssignmentsListResult; - -// @public -export interface CustomEntityStoreAssignmentsListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface CustomRecommendationsDeleteOptionalParams extends OperationOptions { } // @public -export type CustomEntityStoreAssignmentsListByResourceGroupResponse = CustomEntityStoreAssignmentsListResult; - -// @public -export interface CustomEntityStoreAssignmentsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface CustomRecommendationsGetOptionalParams extends OperationOptions { } // @public -export type CustomEntityStoreAssignmentsListBySubscriptionNextResponse = CustomEntityStoreAssignmentsListResult; - -// @public -export interface CustomEntityStoreAssignmentsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface CustomRecommendationsListOptionalParams extends OperationOptions { } // @public -export type CustomEntityStoreAssignmentsListBySubscriptionResponse = CustomEntityStoreAssignmentsListResult; - -// @public -export interface CustomEntityStoreAssignmentsListResult { - nextLink?: string; - readonly value?: CustomEntityStoreAssignment[]; +export interface CustomRecommendationsOperations { + createOrUpdate: (scope: string, customRecommendationName: string, customRecommendationBody: CustomRecommendation, options?: CustomRecommendationsCreateOrUpdateOptionalParams) => Promise; + delete: (scope: string, customRecommendationName: string, options?: CustomRecommendationsDeleteOptionalParams) => Promise; + get: (scope: string, customRecommendationName: string, options?: CustomRecommendationsGetOptionalParams) => Promise; + list: (scope: string, options?: CustomRecommendationsListOptionalParams) => PagedAsyncIterableIterator; } // @public @@ -1943,6 +1463,11 @@ export interface Cvss { readonly base?: number; } +// @public +export interface DataExportSettingProperties { + enabled: boolean; +} + // @public export interface DataExportSettings extends Setting { enabled?: boolean; @@ -2005,18 +1530,12 @@ export interface DefenderCspmAwsOfferingMdcContainersImageAssessment { } // @public -export interface DefenderCspmAwsOfferingVmScanners { - configuration?: DefenderCspmAwsOfferingVmScannersConfiguration; - enabled?: boolean; +export interface DefenderCspmAwsOfferingVmScanners extends VmScannersAws { } // @public -export interface DefenderCspmAwsOfferingVmScannersConfiguration { - cloudRoleArn?: string; - exclusionTags?: { - [propertyName: string]: string; - }; - scanningMode?: ScanningMode; +export interface DefenderCspmDockerHubOffering extends CloudOffering { + offeringType: "DefenderCspmDockerHub"; } // @public @@ -2058,17 +1577,18 @@ export interface DefenderCspmGcpOfferingMdcContainersImageAssessment { } // @public -export interface DefenderCspmGcpOfferingVmScanners { - configuration?: DefenderCspmGcpOfferingVmScannersConfiguration; - enabled?: boolean; +export interface DefenderCspmGcpOfferingVmScanners extends VmScannersGcp { } // @public -export interface DefenderCspmGcpOfferingVmScannersConfiguration { - exclusionTags?: { - [propertyName: string]: string; - }; - scanningMode?: ScanningMode; +export interface DefenderCspmJFrogOffering extends CloudOffering { + mdcContainersImageAssessment?: DefenderCspmJFrogOfferingMdcContainersImageAssessment; + offeringType: "DefenderCspmJFrog"; +} + +// @public +export interface DefenderCspmJFrogOfferingMdcContainersImageAssessment { + enabled?: boolean; } // @public @@ -2080,16 +1600,7 @@ export interface DefenderFoDatabasesAwsOffering extends CloudOffering { } // @public -export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning { - cloudRoleArn?: string; - configuration?: DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration; - enabled?: boolean; -} - -// @public -export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration { - privateLinkScope?: string; - proxy?: string; +export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws { } // @public @@ -2106,19 +1617,19 @@ export interface DefenderFoDatabasesAwsOfferingRds { // @public export interface DefenderForContainersAwsOffering extends CloudOffering { - autoProvisioning?: boolean; cloudWatchToKinesis?: DefenderForContainersAwsOfferingCloudWatchToKinesis; - containerVulnerabilityAssessment?: DefenderForContainersAwsOfferingContainerVulnerabilityAssessment; - containerVulnerabilityAssessmentTask?: DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask; - enableContainerVulnerabilityAssessment?: boolean; + dataCollectionExternalId?: string; + enableAuditLogsAutoProvisioning?: boolean; + enableDefenderAgentAutoProvisioning?: boolean; + enablePolicyAgentAutoProvisioning?: boolean; kinesisToS3?: DefenderForContainersAwsOfferingKinesisToS3; kubeAuditRetentionTime?: number; - kubernetesScubaReader?: DefenderForContainersAwsOfferingKubernetesScubaReader; + kubernetesDataCollection?: DefenderForContainersAwsOfferingKubernetesDataCollection; kubernetesService?: DefenderForContainersAwsOfferingKubernetesService; mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S; mdcContainersImageAssessment?: DefenderForContainersAwsOfferingMdcContainersImageAssessment; offeringType: "DefenderForContainersAws"; - scubaExternalId?: string; + vmScanners?: DefenderForContainersAwsOfferingVmScanners; } // @public @@ -2126,23 +1637,13 @@ export interface DefenderForContainersAwsOfferingCloudWatchToKinesis { cloudRoleArn?: string; } -// @public -export interface DefenderForContainersAwsOfferingContainerVulnerabilityAssessment { - cloudRoleArn?: string; -} - -// @public -export interface DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask { - cloudRoleArn?: string; -} - // @public export interface DefenderForContainersAwsOfferingKinesisToS3 { cloudRoleArn?: string; } // @public -export interface DefenderForContainersAwsOfferingKubernetesScubaReader { +export interface DefenderForContainersAwsOfferingKubernetesDataCollection { cloudRoleArn?: string; } @@ -2163,16 +1664,26 @@ export interface DefenderForContainersAwsOfferingMdcContainersImageAssessment { enabled?: boolean; } +// @public +export interface DefenderForContainersAwsOfferingVmScanners extends VmScannersAws { +} + +// @public +export interface DefenderForContainersDockerHubOffering extends CloudOffering { + offeringType: "DefenderForContainersDockerHub"; +} + // @public export interface DefenderForContainersGcpOffering extends CloudOffering { - auditLogsAutoProvisioningFlag?: boolean; dataPipelineNativeCloudConnection?: DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection; - defenderAgentAutoProvisioningFlag?: boolean; + enableAuditLogsAutoProvisioning?: boolean; + enableDefenderAgentAutoProvisioning?: boolean; + enablePolicyAgentAutoProvisioning?: boolean; mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S; mdcContainersImageAssessment?: DefenderForContainersGcpOfferingMdcContainersImageAssessment; nativeCloudConnection?: DefenderForContainersGcpOfferingNativeCloudConnection; offeringType: "DefenderForContainersGcp"; - policyAgentAutoProvisioningFlag?: boolean; + vmScanners?: DefenderForContainersGcpOfferingVmScanners; } // @public @@ -2201,6 +1712,15 @@ export interface DefenderForContainersGcpOfferingNativeCloudConnection { workloadIdentityProviderId?: string; } +// @public +export interface DefenderForContainersGcpOfferingVmScanners extends VmScannersGcp { +} + +// @public +export interface DefenderForContainersJFrogOffering extends CloudOffering { + offeringType: "DefenderForContainersJFrog"; +} + // @public export interface DefenderForDatabasesGcpOffering extends CloudOffering { arcAutoProvisioning?: DefenderForDatabasesGcpOfferingArcAutoProvisioning; @@ -2209,15 +1729,7 @@ export interface DefenderForDatabasesGcpOffering extends CloudOffering { } // @public -export interface DefenderForDatabasesGcpOfferingArcAutoProvisioning { - configuration?: DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration; - enabled?: boolean; -} - -// @public -export interface DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration { - privateLinkScope?: string; - proxy?: string; +export interface DefenderForDatabasesGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp { } // @public @@ -2226,21 +1738,6 @@ export interface DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvi workloadIdentityProviderId?: string; } -// @public -export interface DefenderForDevOpsAzureDevOpsOffering extends CloudOffering { - offeringType: "DefenderForDevOpsAzureDevOps"; -} - -// @public -export interface DefenderForDevOpsGithubOffering extends CloudOffering { - offeringType: "DefenderForDevOpsGithub"; -} - -// @public -export interface DefenderForDevOpsGitLabOffering extends CloudOffering { - offeringType: "DefenderForDevOpsGitLab"; -} - // @public export interface DefenderForServersAwsOffering extends CloudOffering { arcAutoProvisioning?: DefenderForServersAwsOfferingArcAutoProvisioning; @@ -2253,16 +1750,7 @@ export interface DefenderForServersAwsOffering extends CloudOffering { } // @public -export interface DefenderForServersAwsOfferingArcAutoProvisioning { - cloudRoleArn?: string; - configuration?: DefenderForServersAwsOfferingArcAutoProvisioningConfiguration; - enabled?: boolean; -} - -// @public -export interface DefenderForServersAwsOfferingArcAutoProvisioningConfiguration { - privateLinkScope?: string; - proxy?: string; +export interface DefenderForServersAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws { } // @public @@ -2272,7 +1760,7 @@ export interface DefenderForServersAwsOfferingDefenderForServers { // @public export interface DefenderForServersAwsOfferingMdeAutoProvisioning { - configuration?: Record; + configuration?: any; enabled?: boolean; } @@ -2293,18 +1781,7 @@ export interface DefenderForServersAwsOfferingVaAutoProvisioningConfiguration { } // @public -export interface DefenderForServersAwsOfferingVmScanners { - configuration?: DefenderForServersAwsOfferingVmScannersConfiguration; - enabled?: boolean; -} - -// @public -export interface DefenderForServersAwsOfferingVmScannersConfiguration { - cloudRoleArn?: string; - exclusionTags?: { - [propertyName: string]: string; - }; - scanningMode?: ScanningMode; +export interface DefenderForServersAwsOfferingVmScanners extends VmScannersAws { } // @public @@ -2319,15 +1796,7 @@ export interface DefenderForServersGcpOffering extends CloudOffering { } // @public -export interface DefenderForServersGcpOfferingArcAutoProvisioning { - configuration?: DefenderForServersGcpOfferingArcAutoProvisioningConfiguration; - enabled?: boolean; -} - -// @public -export interface DefenderForServersGcpOfferingArcAutoProvisioningConfiguration { - privateLinkScope?: string; - proxy?: string; +export interface DefenderForServersGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp { } // @public @@ -2338,7 +1807,7 @@ export interface DefenderForServersGcpOfferingDefenderForServers { // @public export interface DefenderForServersGcpOfferingMdeAutoProvisioning { - configuration?: Record; + configuration?: any; enabled?: boolean; } @@ -2359,298 +1828,238 @@ export interface DefenderForServersGcpOfferingVaAutoProvisioningConfiguration { } // @public -export interface DefenderForServersGcpOfferingVmScanners { - configuration?: DefenderForServersGcpOfferingVmScannersConfiguration; - enabled?: boolean; +export interface DefenderForServersGcpOfferingVmScanners extends VmScannersGcp { } // @public -export interface DefenderForServersGcpOfferingVmScannersConfiguration { - exclusionTags?: { - [propertyName: string]: string; - }; - scanningMode?: ScanningMode; +export interface DefenderForStorageCancelMalwareScanOptionalParams extends OperationOptions { } // @public -export interface DefenderForStorage { - create(resourceId: string, settingName: SettingName, defenderForStorageSetting: DefenderForStorageSetting, options?: DefenderForStorageCreateOptionalParams): Promise; - get(resourceId: string, settingName: SettingName, options?: DefenderForStorageGetOptionalParams): Promise; +export interface DefenderForStorageCreateOptionalParams extends OperationOptions { } // @public -export interface DefenderForStorageCreateOptionalParams extends coreClient.OperationOptions { +export interface DefenderForStorageGetMalwareScanOptionalParams extends OperationOptions { } // @public -export type DefenderForStorageCreateResponse = DefenderForStorageSetting; +export interface DefenderForStorageGetOptionalParams extends OperationOptions { +} // @public -export interface DefenderForStorageGetOptionalParams extends coreClient.OperationOptions { +export interface DefenderForStorageListOptionalParams extends OperationOptions { } // @public -export type DefenderForStorageGetResponse = DefenderForStorageSetting; +export interface DefenderForStorageOperations { + cancelMalwareScan: (resourceId: string, settingName: SettingName, scanId: string, options?: DefenderForStorageCancelMalwareScanOptionalParams) => Promise; + create: (resourceId: string, settingName: SettingName, defenderForStorageSetting: DefenderForStorageSetting, options?: DefenderForStorageCreateOptionalParams) => Promise; + get: (resourceId: string, settingName: SettingName, options?: DefenderForStorageGetOptionalParams) => Promise; + getMalwareScan: (resourceId: string, settingName: SettingName, scanId: string, options?: DefenderForStorageGetMalwareScanOptionalParams) => Promise; + list: (resourceId: string, options?: DefenderForStorageListOptionalParams) => PagedAsyncIterableIterator; + startMalwareScan: (resourceId: string, settingName: SettingName, options?: DefenderForStorageStartMalwareScanOptionalParams) => Promise; +} // @public -export interface DefenderForStorageSetting extends Resource { - capGBPerMonth?: number; - isEnabledPropertiesIsEnabled?: boolean; - isEnabledPropertiesMalwareScanningOnUploadIsEnabled?: boolean; - isEnabledPropertiesSensitiveDataDiscoveryIsEnabled?: boolean; - readonly operationStatusPropertiesMalwareScanningOperationStatus?: OperationStatus; - readonly operationStatusPropertiesSensitiveDataDiscoveryOperationStatus?: OperationStatus; +export interface DefenderForStorageSetting extends ExtensionResource { + properties?: DefenderForStorageSettingProperties; +} + +// @public +export interface DefenderForStorageSettingProperties { + isEnabled?: boolean; + malwareScanning?: MalwareScanningProperties; overrideSubscriptionLevelSettings?: boolean; - scanResultsEventGridTopicResourceId?: string; + sensitiveDataDiscovery?: SensitiveDataDiscoveryProperties; +} + +// @public +export interface DefenderForStorageStartMalwareScanOptionalParams extends OperationOptions { } // @public export interface DenylistCustomAlertRule extends ListCustomAlertRule { denylistValues: string[]; + // (undocumented) ruleType: "DenylistCustomAlertRule"; } // @public -export type DesiredOnboardingState = string; - -// @public -export interface DeviceSecurityGroup extends Resource { - allowlistRules?: AllowlistCustomAlertRuleUnion[]; +export interface DeviceSecurityGroup extends ExtensionResource { + allowlistRules?: AllowlistCustomAlertRule[]; denylistRules?: DenylistCustomAlertRule[]; thresholdRules?: ThresholdCustomAlertRuleUnion[]; - timeWindowRules?: TimeWindowCustomAlertRuleUnion[]; + timeWindowRules?: TimeWindowCustomAlertRule[]; } // @public -export interface DeviceSecurityGroupList { - readonly nextLink?: string; - value?: DeviceSecurityGroup[]; +export interface DeviceSecurityGroupProperties { + allowlistRules?: AllowlistCustomAlertRule[]; + denylistRules?: DenylistCustomAlertRule[]; + thresholdRules?: ThresholdCustomAlertRuleUnion[]; + timeWindowRules?: TimeWindowCustomAlertRule[]; } // @public -export interface DeviceSecurityGroups { - createOrUpdate(resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: DeviceSecurityGroup, options?: DeviceSecurityGroupsCreateOrUpdateOptionalParams): Promise; - delete(resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsDeleteOptionalParams): Promise; - get(resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsGetOptionalParams): Promise; - list(resourceId: string, options?: DeviceSecurityGroupsListOptionalParams): PagedAsyncIterableIterator; +export interface DeviceSecurityGroupsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface DeviceSecurityGroupsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface DeviceSecurityGroupsDeleteOptionalParams extends OperationOptions { } // @public -export type DeviceSecurityGroupsCreateOrUpdateResponse = DeviceSecurityGroup; - -// @public -export interface DeviceSecurityGroupsDeleteOptionalParams extends coreClient.OperationOptions { +export interface DeviceSecurityGroupsGetOptionalParams extends OperationOptions { } // @public -export interface DeviceSecurityGroupsGetOptionalParams extends coreClient.OperationOptions { +export interface DeviceSecurityGroupsListOptionalParams extends OperationOptions { } // @public -export type DeviceSecurityGroupsGetResponse = DeviceSecurityGroup; - -// @public -export interface DeviceSecurityGroupsListNextOptionalParams extends coreClient.OperationOptions { +export interface DeviceSecurityGroupsOperations { + createOrUpdate: (resourceId: string, deviceSecurityGroupName: string, deviceSecurityGroup: DeviceSecurityGroup, options?: DeviceSecurityGroupsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsDeleteOptionalParams) => Promise; + get: (resourceId: string, deviceSecurityGroupName: string, options?: DeviceSecurityGroupsGetOptionalParams) => Promise; + list: (resourceId: string, options?: DeviceSecurityGroupsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type DeviceSecurityGroupsListNextResponse = DeviceSecurityGroupList; - -// @public -export interface DeviceSecurityGroupsListOptionalParams extends coreClient.OperationOptions { +export interface DevOpsCapability { + readonly name?: string; + readonly value?: string; } -// @public -export type DeviceSecurityGroupsListResponse = DeviceSecurityGroupList; - // @public export interface DevOpsConfiguration extends ProxyResource { properties?: DevOpsConfigurationProperties; - readonly systemData?: SystemData; -} - -// @public -export interface DevOpsConfigurationListResponse { - nextLink?: string; - value?: DevOpsConfiguration[]; } // @public export interface DevOpsConfigurationProperties { + agentlessConfiguration?: AgentlessConfiguration; authorization?: Authorization; autoDiscovery?: AutoDiscovery; - provisioningState?: DevOpsProvisioningState; + readonly capabilities?: DevOpsCapability[]; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; topLevelInventoryList?: string[]; } // @public -export interface DevOpsConfigurations { - beginCreateOrUpdate(resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsCreateOrUpdateOptionalParams): Promise, DevOpsConfigurationsCreateOrUpdateResponse>>; - beginCreateOrUpdateAndWait(resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsCreateOrUpdateOptionalParams): Promise; - beginDelete(resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsDeleteOptionalParams): Promise, void>>; - beginDeleteAndWait(resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsDeleteOptionalParams): Promise; - beginUpdate(resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsUpdateOptionalParams): Promise, DevOpsConfigurationsUpdateResponse>>; - beginUpdateAndWait(resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsUpdateOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsListOptionalParams): PagedAsyncIterableIterator; +export interface DevOpsConfigurationsCreateOrUpdateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; } // @public -export interface DevOpsConfigurationsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface DevOpsConfigurationsDeleteOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export type DevOpsConfigurationsCreateOrUpdateResponse = DevOpsConfiguration; - -// @public -export interface DevOpsConfigurationsDeleteOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; - updateIntervalInMs?: number; +export interface DevOpsConfigurationsGetOptionalParams extends OperationOptions { } // @public -export interface DevOpsConfigurationsGetOptionalParams extends coreClient.OperationOptions { +export interface DevOpsConfigurationsListOptionalParams extends OperationOptions { } // @public -export type DevOpsConfigurationsGetResponse = DevOpsConfiguration; +export interface DevOpsConfigurationsOperations { + // @deprecated (undocumented) + beginCreateOrUpdate: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsCreateOrUpdateOptionalParams) => Promise, DevOpsConfiguration>>; + // @deprecated (undocumented) + beginCreateOrUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsCreateOrUpdateOptionalParams) => Promise; + // @deprecated (undocumented) + beginDelete: (resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsDeleteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginDeleteAndWait: (resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsDeleteOptionalParams) => Promise; + // @deprecated (undocumented) + beginUpdate: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsUpdateOptionalParams) => Promise, DevOpsConfiguration>>; + // @deprecated (undocumented) + beginUpdateAndWait: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsUpdateOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsCreateOrUpdateOptionalParams) => PollerLike, DevOpsConfiguration>; + delete: (resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsDeleteOptionalParams) => PollerLike, void>; + get: (resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, options?: DevOpsConfigurationsListOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, securityConnectorName: string, devOpsConfiguration: DevOpsConfiguration, options?: DevOpsConfigurationsUpdateOptionalParams) => PollerLike, DevOpsConfiguration>; +} // @public -export interface DevOpsConfigurationsListNextOptionalParams extends coreClient.OperationOptions { +export interface DevOpsConfigurationsUpdateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; } // @public -export type DevOpsConfigurationsListNextResponse = DevOpsConfigurationListResponse; +export interface DevOpsOperationResultsGetOptionalParams extends OperationOptions { +} // @public -export interface DevOpsConfigurationsListOptionalParams extends coreClient.OperationOptions { +export interface DevOpsOperationResultsOperations { + get: (resourceGroupName: string, securityConnectorName: string, operationResultId: string, options?: DevOpsOperationResultsGetOptionalParams) => Promise; } // @public -export type DevOpsConfigurationsListResponse = DevOpsConfigurationListResponse; +export type DevOpsProvisioningState = string; // @public -export interface DevOpsConfigurationsUpdateOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; - updateIntervalInMs?: number; +export interface DiscoveredSecuritySolution extends ProxyResource { + readonly location: string; + offer: string; + publisher: string; + securityFamily: SecurityFamily; + sku: string; } // @public -export type DevOpsConfigurationsUpdateResponse = DevOpsConfiguration; +export interface DiscoveredSecuritySolutionProperties { + offer: string; + publisher: string; + securityFamily: SecurityFamily; + sku: string; +} // @public -export interface DevOpsOperationResults { - get(resourceGroupName: string, securityConnectorName: string, operationResultId: string, options?: DevOpsOperationResultsGetOptionalParams): Promise; +export interface DiscoveredSecuritySolutionsGetOptionalParams extends OperationOptions { } // @public -export interface DevOpsOperationResultsGetOptionalParams extends coreClient.OperationOptions { +export interface DiscoveredSecuritySolutionsListByHomeRegionOptionalParams extends OperationOptions { } // @public -export type DevOpsOperationResultsGetResponse = OperationStatusResult; - -// @public -export type DevOpsProvisioningState = string; - -// @public -export type Direction = string; - -// @public -export interface DirectMethodInvokesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "DirectMethodInvokesNotInAllowedRange"; -} - -// @public (undocumented) -export interface DiscoveredSecuritySolution extends Resource, Location { - offer: string; - publisher: string; - securityFamily: SecurityFamily; - sku: string; -} - -// @public (undocumented) -export interface DiscoveredSecuritySolutionList { - readonly nextLink?: string; - // (undocumented) - value?: DiscoveredSecuritySolution[]; -} - -// @public -export interface DiscoveredSecuritySolutions { - get(resourceGroupName: string, ascLocation: string, discoveredSecuritySolutionName: string, options?: DiscoveredSecuritySolutionsGetOptionalParams): Promise; - list(options?: DiscoveredSecuritySolutionsListOptionalParams): PagedAsyncIterableIterator; - listByHomeRegion(ascLocation: string, options?: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface DiscoveredSecuritySolutionsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution; - -// @public -export interface DiscoveredSecuritySolutionsListByHomeRegionNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = DiscoveredSecuritySolutionList; - -// @public -export interface DiscoveredSecuritySolutionsListByHomeRegionOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type DiscoveredSecuritySolutionsListByHomeRegionResponse = DiscoveredSecuritySolutionList; - -// @public -export interface DiscoveredSecuritySolutionsListNextOptionalParams extends coreClient.OperationOptions { +export interface DiscoveredSecuritySolutionsListOptionalParams extends OperationOptions { } // @public -export type DiscoveredSecuritySolutionsListNextResponse = DiscoveredSecuritySolutionList; - -// @public -export interface DiscoveredSecuritySolutionsListOptionalParams extends coreClient.OperationOptions { +export interface DiscoveredSecuritySolutionsOperations { + get: (resourceGroupName: string, ascLocation: string, discoveredSecuritySolutionName: string, options?: DiscoveredSecuritySolutionsGetOptionalParams) => Promise; + list: (options?: DiscoveredSecuritySolutionsListOptionalParams) => PagedAsyncIterableIterator; + listByHomeRegion: (ascLocation: string, options?: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type DiscoveredSecuritySolutionsListResponse = DiscoveredSecuritySolutionList; - -// @public -export interface EffectiveNetworkSecurityGroups { - networkInterface?: string; - networkSecurityGroups?: string[]; +export interface DockerHubEnvironmentData extends EnvironmentData { + authentication?: AuthenticationUnion; + environmentType: "DockerHubOrganization"; + scanInterval?: number; } // @public -export type EndOfSupportStatus = string; +export type Effect = string; // @public export type Enforce = string; -// @public -export type EnforcementMode = string; - -// @public -export type EnforcementSupport = string; - // @public export interface EnvironmentData { - environmentType: "AwsAccount" | "GcpProject" | "GithubScope" | "AzureDevOpsScope" | "GitlabScope"; + environmentType: EnvironmentType; } -// @public (undocumented) -export type EnvironmentDataUnion = EnvironmentData | AwsEnvironmentData | GcpProjectEnvironmentData | GithubScopeEnvironmentData | AzureDevOpsScopeEnvironmentData | GitlabScopeEnvironmentData; +// @public +export type EnvironmentDataUnion = AwsEnvironmentData | GcpProjectEnvironmentData | GithubScopeEnvironmentData | AzureDevOpsScopeEnvironmentData | GitlabScopeEnvironmentData | DockerHubEnvironmentData | JFrogEnvironmentData | EnvironmentData; // @public export interface EnvironmentDetails { @@ -2666,7 +2075,7 @@ export type EnvironmentType = string; // @public export interface ErrorAdditionalInfo { - readonly info?: Record; + readonly info?: any; readonly type?: string; } @@ -2679,30 +2088,11 @@ export interface ErrorDetail { readonly target?: string; } -// @public -export interface ErrorDetailAutoGenerated { - readonly additionalInfo?: ErrorAdditionalInfo[]; - readonly code?: string; - readonly details?: ErrorDetailAutoGenerated[]; - readonly message?: string; - readonly target?: string; -} - // @public export interface ErrorResponse { error?: ErrorDetail; } -// @public -export interface ErrorResponseAutoGenerated { - error?: ErrorDetailAutoGenerated; -} - -// @public -export interface ETag { - etag?: string; -} - // @public type EventSource_2 = string; export { EventSource_2 as EventSource } @@ -2712,6 +2102,9 @@ export interface ExecuteGovernanceRuleParams { override?: boolean; } +// @public +export type ExemptionCategory = string; + // @public export type ExpandControlsEnum = string; @@ -2723,36 +2116,29 @@ export type ExportData = string; // @public export interface Extension { - additionalExtensionProperties?: { - [propertyName: string]: any; - }; + additionalExtensionProperties?: Record; isEnabled: IsEnabled; name: string; - readonly operationStatus?: OperationStatusAutoGenerated; + readonly operationStatus?: OperationStatus; } // @public -export interface ExternalSecuritySolution extends Resource, ExternalSecuritySolutionKindAutoGenerated, Location { +export interface ExtensionResource extends Resource { } // @public -export type ExternalSecuritySolutionKind = string; - -// @public -export interface ExternalSecuritySolutionKindAutoGenerated { +export interface ExternalSecuritySolution extends ProxyResource { kind?: ExternalSecuritySolutionKind; + readonly location?: string; + properties?: any; } -// @public (undocumented) -export interface ExternalSecuritySolutionList { - readonly nextLink?: string; - // (undocumented) - value?: ExternalSecuritySolution[]; -} +// @public +export type ExternalSecuritySolutionKind = string; // @public export interface ExternalSecuritySolutionProperties { - [property: string]: any; + additionalProperties?: Record; // (undocumented) deviceType?: string; // (undocumented) @@ -2761,79 +2147,39 @@ export interface ExternalSecuritySolutionProperties { } // @public -export interface ExternalSecuritySolutions { - get(resourceGroupName: string, ascLocation: string, externalSecuritySolutionsName: string, options?: ExternalSecuritySolutionsGetOptionalParams): Promise; - list(options?: ExternalSecuritySolutionsListOptionalParams): PagedAsyncIterableIterator; - listByHomeRegion(ascLocation: string, options?: ExternalSecuritySolutionsListByHomeRegionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface ExternalSecuritySolutionsGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolution; - -// @public -export interface ExternalSecuritySolutionsListByHomeRegionNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ExternalSecuritySolutionsListByHomeRegionNextResponse = ExternalSecuritySolutionList; - -// @public -export interface ExternalSecuritySolutionsListByHomeRegionOptionalParams extends coreClient.OperationOptions { +export interface ExternalSecuritySolutionsGetOptionalParams extends OperationOptions { } // @public -export type ExternalSecuritySolutionsListByHomeRegionResponse = ExternalSecuritySolutionList; - -// @public -export interface ExternalSecuritySolutionsListNextOptionalParams extends coreClient.OperationOptions { +export interface ExternalSecuritySolutionsListByHomeRegionOptionalParams extends OperationOptions { } // @public -export type ExternalSecuritySolutionsListNextResponse = ExternalSecuritySolutionList; - -// @public -export interface ExternalSecuritySolutionsListOptionalParams extends coreClient.OperationOptions { +export interface ExternalSecuritySolutionsListOptionalParams extends OperationOptions { } // @public -export type ExternalSecuritySolutionsListResponse = ExternalSecuritySolutionList; - -// @public -export interface FailedLocalLoginsNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "FailedLocalLoginsNotInAllowedRange"; +export interface ExternalSecuritySolutionsOperations { + get: (resourceGroupName: string, ascLocation: string, externalSecuritySolutionsName: string, options?: ExternalSecuritySolutionsGetOptionalParams) => Promise; + list: (options?: ExternalSecuritySolutionsListOptionalParams) => PagedAsyncIterableIterator; + listByHomeRegion: (ascLocation: string, options?: ExternalSecuritySolutionsListByHomeRegionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type FileType = string; - -// @public -export interface FileUploadsNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "FileUploadsNotInAllowedRange"; -} +export type ExternalSecuritySolutionUnion = CefExternalSecuritySolution | AtaExternalSecuritySolution | AadExternalSecuritySolution | ExternalSecuritySolution; // @public -export interface GcpCredentialsDetailsProperties extends AuthenticationDetailsProperties { - authenticationType: "gcpCredentials"; - authProviderX509CertUrl: string; - authUri: string; - clientEmail: string; - clientId: string; - clientX509CertUrl: string; - organizationId: string; - privateKey: string; - privateKeyId: string; - projectId: string; - tokenUri: string; - type: string; +export interface FilesScanSummary { + failedFilesCount?: number; + maliciousFilesCount?: number; + scannedFilesInGB?: number; + skippedFilesCount?: number; + totalFilesScanned?: number; } // @public export interface GcpOrganizationalData { - organizationMembershipType: "Organization" | "Member"; + organizationMembershipType: OrganizationMembershipType; } // @public @@ -2852,8 +2198,8 @@ export interface GcpOrganizationalDataOrganization extends GcpOrganizationalData workloadIdentityProviderId?: string; } -// @public (undocumented) -export type GcpOrganizationalDataUnion = GcpOrganizationalData | GcpOrganizationalDataOrganization | GcpOrganizationalDataMember; +// @public +export type GcpOrganizationalDataUnion = GcpOrganizationalDataOrganization | GcpOrganizationalDataMember | GcpOrganizationalData; // @public export interface GcpProjectDetails { @@ -2871,9 +2217,6 @@ export interface GcpProjectEnvironmentData extends EnvironmentData { scanInterval?: number; } -// @public -export function getContinuationToken(page: unknown): string | undefined; - // @public export interface GetSensitivitySettingsListResponse { // (undocumented) @@ -2881,18 +2224,8 @@ export interface GetSensitivitySettingsListResponse { } // @public -export type GetSensitivitySettingsOperationResponse = GetSensitivitySettingsResponse; - -// @public -export interface GetSensitivitySettingsOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface GetSensitivitySettingsResponse { - readonly id?: string; - readonly name?: string; +export interface GetSensitivitySettingsResponse extends ProxyResource { properties?: GetSensitivitySettingsResponseProperties; - readonly type?: string; } // @public @@ -2912,17 +2245,23 @@ export interface GetSensitivitySettingsResponsePropertiesMipInformation { } // @public -export interface GitHubOwner extends ProxyResource { - properties?: GitHubOwnerProperties; - readonly systemData?: SystemData; +export interface GitHubIssuesCreateOptionalParams extends OperationOptions { + createIssueRequest?: IssueCreationRequest; + updateIntervalInMs?: number; } // @public -export interface GitHubOwnerConfiguration { - autoDiscovery?: AutoDiscovery; - repositoryConfigs?: { - [propertyName: string]: BaseResourceConfiguration; - }; +export interface GitHubIssuesOperations { + // @deprecated (undocumented) + beginCreate: (resourceGroupName: string, securityConnectorName: string, ownerName: string, repoName: string, options?: GitHubIssuesCreateOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginCreateAndWait: (resourceGroupName: string, securityConnectorName: string, ownerName: string, repoName: string, options?: GitHubIssuesCreateOptionalParams) => Promise; + create: (resourceGroupName: string, securityConnectorName: string, ownerName: string, repoName: string, options?: GitHubIssuesCreateOptionalParams) => PollerLike, void>; +} + +// @public +export interface GitHubOwner extends ProxyResource { + properties?: GitHubOwnerProperties; } // @public @@ -2936,76 +2275,44 @@ export interface GitHubOwnerProperties { readonly gitHubInternalId?: string; onboardingState?: OnboardingState; readonly ownerUrl?: string; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; } // @public -export interface GitHubOwners { - get(resourceGroupName: string, securityConnectorName: string, ownerName: string, options?: GitHubOwnersGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, options?: GitHubOwnersListOptionalParams): PagedAsyncIterableIterator; - listAvailable(resourceGroupName: string, securityConnectorName: string, options?: GitHubOwnersListAvailableOptionalParams): Promise; -} - -// @public -export interface GitHubOwnersGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type GitHubOwnersGetResponse = GitHubOwner; - -// @public -export interface GitHubOwnersListAvailableOptionalParams extends coreClient.OperationOptions { +export interface GitHubOwnersGetOptionalParams extends OperationOptions { } // @public -export type GitHubOwnersListAvailableResponse = GitHubOwnerListResponse; - -// @public -export interface GitHubOwnersListNextOptionalParams extends coreClient.OperationOptions { +export interface GitHubOwnersListAvailableOptionalParams extends OperationOptions { } // @public -export type GitHubOwnersListNextResponse = GitHubOwnerListResponse; - -// @public -export interface GitHubOwnersListOptionalParams extends coreClient.OperationOptions { +export interface GitHubOwnersListOptionalParams extends OperationOptions { } // @public -export type GitHubOwnersListResponse = GitHubOwnerListResponse; - -// @public -export interface GitHubRepos { - get(resourceGroupName: string, securityConnectorName: string, ownerName: string, repoName: string, options?: GitHubReposGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, ownerName: string, options?: GitHubReposListOptionalParams): PagedAsyncIterableIterator; +export interface GitHubOwnersOperations { + get: (resourceGroupName: string, securityConnectorName: string, ownerName: string, options?: GitHubOwnersGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, options?: GitHubOwnersListOptionalParams) => PagedAsyncIterableIterator; + listAvailable: (resourceGroupName: string, securityConnectorName: string, options?: GitHubOwnersListAvailableOptionalParams) => Promise; } // @public -export interface GitHubReposGetOptionalParams extends coreClient.OperationOptions { +export interface GitHubReposGetOptionalParams extends OperationOptions { } -// @public -export type GitHubReposGetResponse = GitHubRepository; - // @public export interface GitHubRepository extends ProxyResource { properties?: GitHubRepositoryProperties; - readonly systemData?: SystemData; -} - -// @public -export interface GitHubRepositoryListResponse { - nextLink?: string; - value?: GitHubRepository[]; } // @public export interface GitHubRepositoryProperties { onboardingState?: OnboardingState; parentOwnerName?: string; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; readonly repoFullName?: string; @@ -3015,19 +2322,15 @@ export interface GitHubRepositoryProperties { } // @public -export interface GitHubReposListNextOptionalParams extends coreClient.OperationOptions { +export interface GitHubReposListOptionalParams extends OperationOptions { } // @public -export type GitHubReposListNextResponse = GitHubRepositoryListResponse; - -// @public -export interface GitHubReposListOptionalParams extends coreClient.OperationOptions { +export interface GitHubReposOperations { + get: (resourceGroupName: string, securityConnectorName: string, ownerName: string, repoName: string, options?: GitHubReposGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, ownerName: string, options?: GitHubReposListOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type GitHubReposListResponse = GitHubRepositoryListResponse; - // @public export interface GithubScopeEnvironmentData extends EnvironmentData { environmentType: "GithubScope"; @@ -3036,15 +2339,6 @@ export interface GithubScopeEnvironmentData extends EnvironmentData { // @public export interface GitLabGroup extends ProxyResource { properties?: GitLabGroupProperties; - readonly systemData?: SystemData; -} - -// @public -export interface GitLabGroupConfiguration { - autoDiscovery?: AutoDiscovery; - projectConfigs?: { - [propertyName: string]: BaseResourceConfiguration; - }; } // @public @@ -3058,57 +2352,34 @@ export interface GitLabGroupProperties { readonly fullyQualifiedFriendlyName?: string; readonly fullyQualifiedName?: string; onboardingState?: OnboardingState; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; readonly url?: string; } // @public -export interface GitLabGroups { - get(resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabGroupsGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, options?: GitLabGroupsListOptionalParams): PagedAsyncIterableIterator; - listAvailable(resourceGroupName: string, securityConnectorName: string, options?: GitLabGroupsListAvailableOptionalParams): Promise; -} - -// @public -export interface GitLabGroupsGetOptionalParams extends coreClient.OperationOptions { +export interface GitLabGroupsGetOptionalParams extends OperationOptions { } // @public -export type GitLabGroupsGetResponse = GitLabGroup; - -// @public -export interface GitLabGroupsListAvailableOptionalParams extends coreClient.OperationOptions { +export interface GitLabGroupsListAvailableOptionalParams extends OperationOptions { } // @public -export type GitLabGroupsListAvailableResponse = GitLabGroupListResponse; - -// @public -export interface GitLabGroupsListNextOptionalParams extends coreClient.OperationOptions { +export interface GitLabGroupsListOptionalParams extends OperationOptions { } // @public -export type GitLabGroupsListNextResponse = GitLabGroupListResponse; - -// @public -export interface GitLabGroupsListOptionalParams extends coreClient.OperationOptions { +export interface GitLabGroupsOperations { + get: (resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabGroupsGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, options?: GitLabGroupsListOptionalParams) => PagedAsyncIterableIterator; + listAvailable: (resourceGroupName: string, securityConnectorName: string, options?: GitLabGroupsListAvailableOptionalParams) => Promise; } -// @public -export type GitLabGroupsListResponse = GitLabGroupListResponse; - // @public export interface GitLabProject extends ProxyResource { properties?: GitLabProjectProperties; - readonly systemData?: SystemData; -} - -// @public -export interface GitLabProjectListResponse { - nextLink?: string; - value?: GitLabProject[]; } // @public @@ -3117,58 +2388,42 @@ export interface GitLabProjectProperties { readonly fullyQualifiedName?: string; readonly fullyQualifiedParentGroupName?: string; onboardingState?: OnboardingState; - provisioningState?: DevOpsProvisioningState; + readonly provisioningState?: DevOpsProvisioningState; readonly provisioningStatusMessage?: string; readonly provisioningStatusUpdateTimeUtc?: Date; readonly url?: string; } // @public -export interface GitLabProjects { - get(resourceGroupName: string, securityConnectorName: string, groupFQName: string, projectName: string, options?: GitLabProjectsGetOptionalParams): Promise; - list(resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabProjectsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface GitLabProjectsGetOptionalParams extends coreClient.OperationOptions { +export interface GitLabProjectsGetOptionalParams extends OperationOptions { } // @public -export type GitLabProjectsGetResponse = GitLabProject; - -// @public -export interface GitLabProjectsListNextOptionalParams extends coreClient.OperationOptions { +export interface GitLabProjectsListOptionalParams extends OperationOptions { } // @public -export type GitLabProjectsListNextResponse = GitLabProjectListResponse; - -// @public -export interface GitLabProjectsListOptionalParams extends coreClient.OperationOptions { +export interface GitLabProjectsOperations { + get: (resourceGroupName: string, securityConnectorName: string, groupFQName: string, projectName: string, options?: GitLabProjectsGetOptionalParams) => Promise; + list: (resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabProjectsListOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type GitLabProjectsListResponse = GitLabProjectListResponse; - // @public export interface GitlabScopeEnvironmentData extends EnvironmentData { environmentType: "GitlabScope"; } // @public -export interface GitLabSubgroups { - list(resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabSubgroupsListOptionalParams): Promise; +export interface GitLabSubgroupsListOptionalParams extends OperationOptions { } // @public -export interface GitLabSubgroupsListOptionalParams extends coreClient.OperationOptions { +export interface GitLabSubgroupsOperations { + list: (resourceGroupName: string, securityConnectorName: string, groupFQName: string, options?: GitLabSubgroupsListOptionalParams) => Promise; } // @public -export type GitLabSubgroupsListResponse = GitLabGroupListResponse; - -// @public -export interface GovernanceAssignment extends Resource { +export interface GovernanceAssignment extends ExtensionResource { additionalData?: GovernanceAssignmentAdditionalData; governanceEmailNotification?: GovernanceEmailNotification; isGracePeriod?: boolean; @@ -3185,51 +2440,39 @@ export interface GovernanceAssignmentAdditionalData { } // @public -export interface GovernanceAssignments { - createOrUpdate(scope: string, assessmentName: string, assignmentKey: string, governanceAssignment: GovernanceAssignment, options?: GovernanceAssignmentsCreateOrUpdateOptionalParams): Promise; - delete(scope: string, assessmentName: string, assignmentKey: string, options?: GovernanceAssignmentsDeleteOptionalParams): Promise; - get(scope: string, assessmentName: string, assignmentKey: string, options?: GovernanceAssignmentsGetOptionalParams): Promise; - list(scope: string, assessmentName: string, options?: GovernanceAssignmentsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface GovernanceAssignmentsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface GovernanceAssignmentProperties { + additionalData?: GovernanceAssignmentAdditionalData; + governanceEmailNotification?: GovernanceEmailNotification; + isGracePeriod?: boolean; + owner?: string; + remediationDueDate: Date; + remediationEta?: RemediationEta; } // @public -export type GovernanceAssignmentsCreateOrUpdateResponse = GovernanceAssignment; - -// @public -export interface GovernanceAssignmentsDeleteOptionalParams extends coreClient.OperationOptions { +export interface GovernanceAssignmentsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface GovernanceAssignmentsGetOptionalParams extends coreClient.OperationOptions { +export interface GovernanceAssignmentsDeleteOptionalParams extends OperationOptions { } // @public -export type GovernanceAssignmentsGetResponse = GovernanceAssignment; - -// @public -export interface GovernanceAssignmentsList { - readonly nextLink?: string; - readonly value?: GovernanceAssignment[]; +export interface GovernanceAssignmentsGetOptionalParams extends OperationOptions { } // @public -export interface GovernanceAssignmentsListNextOptionalParams extends coreClient.OperationOptions { +export interface GovernanceAssignmentsListOptionalParams extends OperationOptions { } // @public -export type GovernanceAssignmentsListNextResponse = GovernanceAssignmentsList; - -// @public -export interface GovernanceAssignmentsListOptionalParams extends coreClient.OperationOptions { +export interface GovernanceAssignmentsOperations { + createOrUpdate: (scope: string, assessmentName: string, assignmentKey: string, governanceAssignment: GovernanceAssignment, options?: GovernanceAssignmentsCreateOrUpdateOptionalParams) => Promise; + delete: (scope: string, assessmentName: string, assignmentKey: string, options?: GovernanceAssignmentsDeleteOptionalParams) => Promise; + get: (scope: string, assessmentName: string, assignmentKey: string, options?: GovernanceAssignmentsGetOptionalParams) => Promise; + list: (scope: string, assessmentName: string, options?: GovernanceAssignmentsListOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type GovernanceAssignmentsListResponse = GovernanceAssignmentsList; - // @public export interface GovernanceEmailNotification { disableManagerEmailNotification?: boolean; @@ -3237,8 +2480,8 @@ export interface GovernanceEmailNotification { } // @public -export interface GovernanceRule extends Resource { - conditionSets?: Record[]; +export interface GovernanceRule extends ExtensionResource { + conditionSets?: any[]; description?: string; displayName?: string; excludedScopes?: string[]; @@ -3255,21 +2498,12 @@ export interface GovernanceRule extends Resource { readonly tenantId?: string; } -// @public -export type GovernanceRuleConditionOperator = string; - // @public export interface GovernanceRuleEmailNotification { disableManagerEmailNotification?: boolean; disableOwnerEmailNotification?: boolean; } -// @public -export interface GovernanceRuleList { - readonly nextLink?: string; - readonly value?: GovernanceRule[]; -} - // @public export interface GovernanceRuleMetadata { readonly createdBy?: string; @@ -3288,83 +2522,69 @@ export interface GovernanceRuleOwnerSource { export type GovernanceRuleOwnerSourceType = string; // @public -export interface GovernanceRules { - beginDelete(scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams): Promise, void>>; - beginDeleteAndWait(scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams): Promise; - beginExecute(scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams): Promise, GovernanceRulesExecuteResponse>>; - beginExecuteAndWait(scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams): Promise; - createOrUpdate(scope: string, ruleId: string, governanceRule: GovernanceRule, options?: GovernanceRulesCreateOrUpdateOptionalParams): Promise; - get(scope: string, ruleId: string, options?: GovernanceRulesGetOptionalParams): Promise; - list(scope: string, options?: GovernanceRulesListOptionalParams): PagedAsyncIterableIterator; - operationResults(scope: string, ruleId: string, operationId: string, options?: GovernanceRulesOperationResultsOptionalParams): Promise; -} - -// @public -export interface GovernanceRulesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface GovernanceRuleProperties { + conditionSets: any[]; + description?: string; + displayName: string; + excludedScopes?: string[]; + governanceEmailNotification?: GovernanceRuleEmailNotification; + includeMemberScopes?: boolean; + isDisabled?: boolean; + isGracePeriod?: boolean; + metadata?: GovernanceRuleMetadata; + ownerSource: GovernanceRuleOwnerSource; + remediationTimeframe?: string; + rulePriority: number; + ruleType: GovernanceRuleType; + sourceResourceType: GovernanceRuleSourceResourceType; + readonly tenantId?: string; } // @public -export type GovernanceRulesCreateOrUpdateResponse = GovernanceRule; - -// @public -export interface GovernanceRulesDeleteHeaders { - location?: string; +export interface GovernanceRulesCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface GovernanceRulesDeleteOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface GovernanceRulesDeleteOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export interface GovernanceRulesExecuteHeaders { - location?: string; -} - -// @public -export interface GovernanceRulesExecuteOptionalParams extends coreClient.OperationOptions { +export interface GovernanceRulesExecuteOptionalParams extends OperationOptions { executeGovernanceRuleParams?: ExecuteGovernanceRuleParams; - resumeFrom?: string; updateIntervalInMs?: number; } // @public -export type GovernanceRulesExecuteResponse = GovernanceRulesExecuteHeaders; - -// @public -export interface GovernanceRulesGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type GovernanceRulesGetResponse = GovernanceRule; - -// @public -export interface GovernanceRulesListNextOptionalParams extends coreClient.OperationOptions { +export interface GovernanceRulesGetOptionalParams extends OperationOptions { } // @public -export type GovernanceRulesListNextResponse = GovernanceRuleList; - -// @public -export interface GovernanceRulesListOptionalParams extends coreClient.OperationOptions { +export interface GovernanceRulesListOptionalParams extends OperationOptions { } // @public -export type GovernanceRulesListResponse = GovernanceRuleList; - -// @public -export interface GovernanceRulesOperationResultsHeaders { - location?: string; +export interface GovernanceRulesOperationResultsOptionalParams extends OperationOptions { } // @public -export interface GovernanceRulesOperationResultsOptionalParams extends coreClient.OperationOptions { +export interface GovernanceRulesOperations { + // @deprecated (undocumented) + beginDelete: (scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginDeleteAndWait: (scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams) => Promise; + // @deprecated (undocumented) + beginExecute: (scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginExecuteAndWait: (scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams) => Promise; + createOrUpdate: (scope: string, ruleId: string, governanceRule: GovernanceRule, options?: GovernanceRulesCreateOrUpdateOptionalParams) => Promise; + delete: (scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams) => PollerLike, void>; + execute: (scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams) => PollerLike, void>; + get: (scope: string, ruleId: string, options?: GovernanceRulesGetOptionalParams) => Promise; + list: (scope: string, options?: GovernanceRulesListOptionalParams) => PagedAsyncIterableIterator; + operationResults: (scope: string, ruleId: string, operationId: string, options?: GovernanceRulesOperationResultsOptionalParams) => Promise; } -// @public -export type GovernanceRulesOperationResultsResponse = OperationResultAutoGenerated; - // @public export type GovernanceRuleSourceResourceType = string; @@ -3379,165 +2599,99 @@ export interface HealthDataClassification { } // @public -export interface HealthReport extends Resource { +export interface HealthReport extends ExtensionResource { affectedDefendersPlans?: string[]; affectedDefendersSubPlans?: string[]; environmentDetails?: EnvironmentDetails; healthDataClassification?: HealthDataClassification; issues?: Issue[]; - readonly reportAdditionalData?: { - [propertyName: string]: string; - }; - resourceDetails?: ResourceDetailsAutoGenerated; - status?: StatusAutoGenerated; + readonly reportAdditionalData?: Record; + resourceDetails?: SecurityCenterResourceDetails; + status?: Status; } // @public -export interface HealthReports { - get(resourceId: string, healthReportName: string, options?: HealthReportsGetOptionalParams): Promise; - list(scope: string, options?: HealthReportsListOptionalParams): PagedAsyncIterableIterator; +export interface HealthReportProperties { + affectedDefendersPlans?: string[]; + affectedDefendersSubPlans?: string[]; + environmentDetails?: EnvironmentDetails; + healthDataClassification?: HealthDataClassification; + issues?: Issue[]; + readonly reportAdditionalData?: Record; + resourceDetails?: SecurityCenterResourceDetails; + status?: Status; } // @public -export interface HealthReportsGetOptionalParams extends coreClient.OperationOptions { +export interface HealthReportsGetOptionalParams extends OperationOptions { } // @public -export type HealthReportsGetResponse = HealthReport; +export interface HealthReportsListOptionalParams extends OperationOptions { +} // @public -export interface HealthReportsList { - readonly nextLink?: string; - readonly value?: HealthReport[]; +export interface HealthReportsOperations { + get: (resourceId: string, healthReportName: string, options?: HealthReportsGetOptionalParams) => Promise; + list: (scope: string, options?: HealthReportsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export interface HealthReportsListNextOptionalParams extends coreClient.OperationOptions { +export interface Identity { + readonly principalId?: string; + readonly tenantId?: string; + type?: ResourceIdentityType; } // @public -export type HealthReportsListNextResponse = HealthReportsList; +export type ImplementationEffort = string; + +// @public +export interface InformationProtectionKeyword { + canBeNumeric?: boolean; + custom?: boolean; + excluded?: boolean; + pattern?: string; +} // @public -export interface HealthReportsListOptionalParams extends coreClient.OperationOptions { +export interface InformationProtectionPoliciesCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export type HealthReportsListResponse = HealthReportsList; +export interface InformationProtectionPoliciesGetOptionalParams extends OperationOptions { +} // @public -export interface HttpC2DMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "HttpC2DMessagesNotInAllowedRange"; +export interface InformationProtectionPoliciesListOptionalParams extends OperationOptions { } // @public -export interface HttpC2DRejectedMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "HttpC2DRejectedMessagesNotInAllowedRange"; +export interface InformationProtectionPoliciesOperations { + createOrUpdate: (scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, informationProtectionPolicy: InformationProtectionPolicy, options?: InformationProtectionPoliciesCreateOrUpdateOptionalParams) => Promise; + get: (scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, options?: InformationProtectionPoliciesGetOptionalParams) => Promise; + list: (scope: string, options?: InformationProtectionPoliciesListOptionalParams) => PagedAsyncIterableIterator; } // @public -export interface HttpD2CMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "HttpD2CMessagesNotInAllowedRange"; +export interface InformationProtectionPolicy extends ExtensionResource { + informationTypes?: Record; + labels?: Record; + readonly lastModifiedUtc?: Date; + readonly version?: string; } // @public -export type HybridComputeProvisioningState = string; +export type InformationProtectionPolicyName = string; // @public -export interface HybridComputeSettingsProperties { - autoProvision: AutoProvision; - readonly hybridComputeProvisioningState?: HybridComputeProvisioningState; - proxyServer?: ProxyServerProperties; - region?: string; - resourceGroupName?: string; - servicePrincipal?: ServicePrincipalProperties; +export interface InformationProtectionPolicyProperties { + informationTypes?: Record; + labels?: Record; + readonly lastModifiedUtc?: Date; + readonly version?: string; } -// @public -export interface Identity { - readonly principalId?: string; - readonly tenantId?: string; - type?: "SystemAssigned"; -} - -// @public -export type ImplementationEffort = string; - -// @public -export interface InformationProtectionAwsOffering extends CloudOffering { - informationProtection?: InformationProtectionAwsOfferingInformationProtection; - offeringType: "InformationProtectionAws"; -} - -// @public -export interface InformationProtectionAwsOfferingInformationProtection { - cloudRoleArn?: string; -} - -// @public -export interface InformationProtectionKeyword { - canBeNumeric?: boolean; - custom?: boolean; - excluded?: boolean; - pattern?: string; -} - -// @public -export interface InformationProtectionPolicies { - createOrUpdate(scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, informationProtectionPolicy: InformationProtectionPolicy, options?: InformationProtectionPoliciesCreateOrUpdateOptionalParams): Promise; - get(scope: string, informationProtectionPolicyName: InformationProtectionPolicyName, options?: InformationProtectionPoliciesGetOptionalParams): Promise; - list(scope: string, options?: InformationProtectionPoliciesListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface InformationProtectionPoliciesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type InformationProtectionPoliciesCreateOrUpdateResponse = InformationProtectionPolicy; - -// @public -export interface InformationProtectionPoliciesGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type InformationProtectionPoliciesGetResponse = InformationProtectionPolicy; - -// @public -export interface InformationProtectionPoliciesListNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type InformationProtectionPoliciesListNextResponse = InformationProtectionPolicyList; - -// @public -export interface InformationProtectionPoliciesListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type InformationProtectionPoliciesListResponse = InformationProtectionPolicyList; - -// @public -export interface InformationProtectionPolicy extends Resource { - informationTypes?: { - [propertyName: string]: InformationType; - }; - labels?: { - [propertyName: string]: SensitivityLabel; - }; - readonly lastModifiedUtc?: Date; - readonly version?: string; -} - -// @public -export interface InformationProtectionPolicyList { - readonly nextLink?: string; - value?: InformationProtectionPolicy[]; -} - -// @public -export type InformationProtectionPolicyName = string; - // @public export interface InformationType { custom?: boolean; @@ -3566,7 +2720,19 @@ export type InheritFromParentState = string; export type Intent = string; // @public -export interface IoTSecurityAggregatedAlert extends Resource, TagsResource { +export type InventoryKind = string; + +// @public +export interface InventoryList { + inventoryKind?: InventoryKind; + value?: string; +} + +// @public +export type InventoryListKind = string; + +// @public +export interface IoTSecurityAggregatedAlert extends ProxyResource { readonly actionTaken?: string; readonly aggregatedDateUtc?: Date; readonly alertDisplayName?: string; @@ -3578,17 +2744,29 @@ export interface IoTSecurityAggregatedAlert extends Resource, TagsResource { readonly remediationSteps?: string; readonly reportedSeverity?: ReportedSeverity; readonly systemSource?: string; + tags?: Record; readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; readonly vendorName?: string; } // @public -export interface IoTSecurityAggregatedAlertList { - readonly nextLink?: string; - value: IoTSecurityAggregatedAlert[]; +export interface IoTSecurityAggregatedAlertProperties { + readonly actionTaken?: string; + readonly aggregatedDateUtc?: Date; + readonly alertDisplayName?: string; + readonly alertType?: string; + readonly count?: number; + readonly description?: string; + readonly effectedResourceType?: string; + readonly logAnalyticsQuery?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + readonly systemSource?: string; + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; + readonly vendorName?: string; } -// @public (undocumented) +// @public export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { readonly alertsCount?: number; readonly deviceId?: string; @@ -3596,7 +2774,7 @@ export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { } // @public -export interface IoTSecurityAggregatedRecommendation extends Resource, TagsResource { +export interface IoTSecurityAggregatedRecommendation extends ProxyResource { readonly description?: string; readonly detectedBy?: string; readonly healthyDevices?: number; @@ -3606,13 +2784,22 @@ export interface IoTSecurityAggregatedRecommendation extends Resource, TagsResou readonly recommendationTypeId?: string; readonly remediationSteps?: string; readonly reportedSeverity?: ReportedSeverity; + tags?: Record; readonly unhealthyDeviceCount?: number; } // @public -export interface IoTSecurityAggregatedRecommendationList { - readonly nextLink?: string; - value: IoTSecurityAggregatedRecommendation[]; +export interface IoTSecurityAggregatedRecommendationProperties { + readonly description?: string; + readonly detectedBy?: string; + readonly healthyDevices?: number; + readonly logAnalyticsQuery?: string; + readonly recommendationDisplayName?: string; + recommendationName?: string; + readonly recommendationTypeId?: string; + readonly remediationSteps?: string; + readonly reportedSeverity?: ReportedSeverity; + readonly unhealthyDeviceCount?: number; } // @public @@ -3636,37 +2823,31 @@ export interface IoTSecurityDeviceRecommendation { } // @public -export interface IotSecuritySolution { - createOrUpdate(resourceGroupName: string, solutionName: string, iotSecuritySolutionData: IoTSecuritySolutionModel, options?: IotSecuritySolutionCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionDeleteOptionalParams): Promise; - get(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionGetOptionalParams): Promise; - listByResourceGroup(resourceGroupName: string, options?: IotSecuritySolutionListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: IotSecuritySolutionListBySubscriptionOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, options?: IotSecuritySolutionUpdateOptionalParams): Promise; +export interface IotSecuritySolutionAnalyticsGetOptionalParams extends OperationOptions { } // @public -export interface IotSecuritySolutionAnalytics { - get(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsGetOptionalParams): Promise; - list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsListOptionalParams): Promise; +export interface IotSecuritySolutionAnalyticsListOptionalParams extends OperationOptions { } // @public -export interface IotSecuritySolutionAnalyticsGetOptionalParams extends coreClient.OperationOptions { +export interface IoTSecuritySolutionAnalyticsModel extends ProxyResource { + readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[]; + readonly metrics?: IoTSeverityMetrics; + mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[]; + mostPrevalentDeviceRecommendations?: IoTSecurityDeviceRecommendation[]; + topAlertedDevices?: IoTSecurityAlertedDevice[]; + readonly unhealthyDeviceCount?: number; } // @public -export type IotSecuritySolutionAnalyticsGetResponse = IoTSecuritySolutionAnalyticsModel; - -// @public -export interface IotSecuritySolutionAnalyticsListOptionalParams extends coreClient.OperationOptions { +export interface IoTSecuritySolutionAnalyticsModelList { + nextLink?: string; + value: IoTSecuritySolutionAnalyticsModel[]; } // @public -export type IotSecuritySolutionAnalyticsListResponse = IoTSecuritySolutionAnalyticsModelList; - -// @public -export interface IoTSecuritySolutionAnalyticsModel extends Resource { +export interface IoTSecuritySolutionAnalyticsModelProperties { readonly devicesMetrics?: IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem[]; readonly metrics?: IoTSeverityMetrics; mostPrevalentDeviceAlerts?: IoTSecurityDeviceAlert[]; @@ -3676,67 +2857,41 @@ export interface IoTSecuritySolutionAnalyticsModel extends Resource { } // @public -export interface IoTSecuritySolutionAnalyticsModelList { - readonly nextLink?: string; - value: IoTSecuritySolutionAnalyticsModel[]; -} - -// @public (undocumented) export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { date?: Date; devicesMetrics?: IoTSeverityMetrics; } // @public -export interface IotSecuritySolutionCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionAnalyticsOperations { + get: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsGetOptionalParams) => Promise; + list: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionAnalyticsListOptionalParams) => Promise; } // @public -export type IotSecuritySolutionCreateOrUpdateResponse = IoTSecuritySolutionModel; - -// @public -export interface IotSecuritySolutionDeleteOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface IotSecuritySolutionGetOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionDeleteOptionalParams extends OperationOptions { } // @public -export type IotSecuritySolutionGetResponse = IoTSecuritySolutionModel; - -// @public -export interface IotSecuritySolutionListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionGetOptionalParams extends OperationOptions { } // @public -export type IotSecuritySolutionListByResourceGroupNextResponse = IoTSecuritySolutionsList; - -// @public -export interface IotSecuritySolutionListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionListByResourceGroupOptionalParams extends OperationOptions { filter?: string; } // @public -export type IotSecuritySolutionListByResourceGroupResponse = IoTSecuritySolutionsList; - -// @public -export interface IotSecuritySolutionListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type IotSecuritySolutionListBySubscriptionNextResponse = IoTSecuritySolutionsList; - -// @public -export interface IotSecuritySolutionListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionListBySubscriptionOptionalParams extends OperationOptions { filter?: string; } // @public -export type IotSecuritySolutionListBySubscriptionResponse = IoTSecuritySolutionsList; - -// @public -export interface IoTSecuritySolutionModel extends Resource, TagsResource { +export interface IoTSecuritySolutionModel extends ProxyResource { additionalWorkspaces?: AdditionalWorkspacesProperties[]; readonly autoDiscoveredResources?: string[]; disabledDataSources?: DataSource[]; @@ -3746,86 +2901,76 @@ export interface IoTSecuritySolutionModel extends Resource, TagsResource { location?: string; recommendationsConfiguration?: RecommendationConfigurationProperties[]; status?: SecuritySolutionStatus; - readonly systemData?: SystemData; + tags?: Record; unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; userDefinedResources?: UserDefinedResourcesProperties; workspace?: string; } // @public -export interface IotSecuritySolutionsAnalyticsAggregatedAlert { - dismiss(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams): Promise; - get(resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams): Promise; - list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams): PagedAsyncIterableIterator; +export interface IotSecuritySolutionOperations { + createOrUpdate: (resourceGroupName: string, solutionName: string, iotSecuritySolutionData: IoTSecuritySolutionModel, options?: IotSecuritySolutionCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionGetOptionalParams) => Promise; + listByResourceGroup: (resourceGroupName: string, options?: IotSecuritySolutionListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: IotSecuritySolutionListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, solutionName: string, updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, options?: IotSecuritySolutionUpdateOptionalParams) => Promise; } // @public -export interface IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams extends coreClient.OperationOptions { +export interface IoTSecuritySolutionProperties { + additionalWorkspaces?: AdditionalWorkspacesProperties[]; + readonly autoDiscoveredResources?: string[]; + disabledDataSources?: DataSource[]; + displayName: string; + export?: ExportData[]; + iotHubs: string[]; + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + status?: SecuritySolutionStatus; + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; + userDefinedResources?: UserDefinedResourcesProperties; + workspace?: string; } // @public -export interface IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams extends OperationOptions { } // @public -export type IotSecuritySolutionsAnalyticsAggregatedAlertGetResponse = IoTSecurityAggregatedAlert; - -// @public -export interface IotSecuritySolutionsAnalyticsAggregatedAlertListNextOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams extends OperationOptions { } // @public -export type IotSecuritySolutionsAnalyticsAggregatedAlertListNextResponse = IoTSecurityAggregatedAlertList; - -// @public -export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams extends OperationOptions { top?: number; } // @public -export type IotSecuritySolutionsAnalyticsAggregatedAlertListResponse = IoTSecurityAggregatedAlertList; - -// @public -export interface IotSecuritySolutionsAnalyticsRecommendation { - get(resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options?: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams): Promise; - list(resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsAggregatedAlertOperations { + dismiss: (resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams) => Promise; + get: (resourceGroupName: string, solutionName: string, aggregatedAlertName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams) => Promise; + list: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type IotSecuritySolutionsAnalyticsRecommendationGetResponse = IoTSecurityAggregatedRecommendation; - -// @public -export interface IotSecuritySolutionsAnalyticsRecommendationListNextOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams extends OperationOptions { } // @public -export type IotSecuritySolutionsAnalyticsRecommendationListNextResponse = IoTSecurityAggregatedRecommendationList; - -// @public -export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams extends OperationOptions { top?: number; } // @public -export type IotSecuritySolutionsAnalyticsRecommendationListResponse = IoTSecurityAggregatedRecommendationList; - -// @public -export interface IoTSecuritySolutionsList { - readonly nextLink?: string; - value: IoTSecuritySolutionModel[]; +export interface IotSecuritySolutionsAnalyticsRecommendationOperations { + get: (resourceGroupName: string, solutionName: string, aggregatedRecommendationName: string, options?: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams) => Promise; + list: (resourceGroupName: string, solutionName: string, options?: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams) => PagedAsyncIterableIterator; } // @public -export interface IotSecuritySolutionUpdateOptionalParams extends coreClient.OperationOptions { +export interface IotSecuritySolutionUpdateOptionalParams extends OperationOptions { } -// @public -export type IotSecuritySolutionUpdateResponse = IoTSecuritySolutionModel; - // @public export interface IoTSeverityMetrics { high?: number; @@ -3838,9 +2983,7 @@ export type IsEnabled = string; // @public export interface Issue { - issueAdditionalData?: { - [propertyName: string]: string; - }; + issueAdditionalData?: Record; issueDescription?: string; issueKey: string; issueName?: string; @@ -3850,114 +2993,71 @@ export interface Issue { } // @public -export interface JitNetworkAccessPolicies { - createOrUpdate(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicy, options?: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesDeleteOptionalParams): Promise; - get(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesGetOptionalParams): Promise; - initiate(resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicyInitiateRequest, options?: JitNetworkAccessPoliciesInitiateOptionalParams): Promise; - list(options?: JitNetworkAccessPoliciesListOptionalParams): PagedAsyncIterableIterator; - listByRegion(ascLocation: string, options?: JitNetworkAccessPoliciesListByRegionOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, options?: JitNetworkAccessPoliciesListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - listByResourceGroupAndRegion(resourceGroupName: string, ascLocation: string, options?: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface JitNetworkAccessPoliciesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type JitNetworkAccessPoliciesCreateOrUpdateResponse = JitNetworkAccessPolicy; - -// @public -export interface JitNetworkAccessPoliciesDeleteOptionalParams extends coreClient.OperationOptions { -} - -// @public -export interface JitNetworkAccessPoliciesGetOptionalParams extends coreClient.OperationOptions { +export interface IssueCreationRequest { + securityAssessmentResourceId?: string; } // @public -export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy; - -// @public -export interface JitNetworkAccessPoliciesInitiateOptionalParams extends coreClient.OperationOptions { +export interface JFrogEnvironmentData extends EnvironmentData { + environmentType: "JFrogArtifactory"; + scanInterval?: number; } // @public -export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest; - -// @public (undocumented) -export interface JitNetworkAccessPoliciesList { - readonly nextLink?: string; - // (undocumented) - value?: JitNetworkAccessPolicy[]; +export interface JitNetworkAccessPoliciesCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface JitNetworkAccessPoliciesListByRegionNextOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesDeleteOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByRegionNextResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListByRegionOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesGetOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByRegionResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionNextOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesInitiateOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesListByRegionOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesListByResourceGroupOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListByResourceGroupResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListNextOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesListOptionalParams extends OperationOptions { } // @public -export type JitNetworkAccessPoliciesListNextResponse = JitNetworkAccessPoliciesList; - -// @public -export interface JitNetworkAccessPoliciesListOptionalParams extends coreClient.OperationOptions { +export interface JitNetworkAccessPoliciesOperations { + createOrUpdate: (resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicy, options?: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, options?: JitNetworkAccessPoliciesGetOptionalParams) => Promise; + initiate: (resourceGroupName: string, ascLocation: string, jitNetworkAccessPolicyName: string, body: JitNetworkAccessPolicyInitiateRequest, options?: JitNetworkAccessPoliciesInitiateOptionalParams) => Promise; + list: (options?: JitNetworkAccessPoliciesListOptionalParams) => PagedAsyncIterableIterator; + listByRegion: (ascLocation: string, options?: JitNetworkAccessPoliciesListByRegionOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, options?: JitNetworkAccessPoliciesListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroupAndRegion: (resourceGroupName: string, ascLocation: string, options?: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList; - -// @public (undocumented) -export interface JitNetworkAccessPolicy extends Resource, KindAutoGenerated, Location { +export interface JitNetworkAccessPolicy extends ProxyResource { + kind?: string; + readonly location: string; readonly provisioningState?: string; // (undocumented) requests?: JitNetworkAccessRequest[]; virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; } -// @public (undocumented) +// @public export interface JitNetworkAccessPolicyInitiatePort { allowedSourceAddressPrefix?: string; endTimeUtc: Date; @@ -3965,26 +3065,34 @@ export interface JitNetworkAccessPolicyInitiatePort { number: number; } -// @public (undocumented) +// @public export interface JitNetworkAccessPolicyInitiateRequest { justification?: string; virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[]; } -// @public (undocumented) +// @public export interface JitNetworkAccessPolicyInitiateVirtualMachine { id: string; ports: JitNetworkAccessPolicyInitiatePort[]; } -// @public (undocumented) +// @public +export interface JitNetworkAccessPolicyProperties { + readonly provisioningState?: string; + // (undocumented) + requests?: JitNetworkAccessRequest[]; + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; +} + +// @public export interface JitNetworkAccessPolicyVirtualMachine { id: string; ports: JitNetworkAccessPortRule[]; publicIpAddress?: string; } -// @public (undocumented) +// @public export interface JitNetworkAccessPortRule { allowedSourceAddressPrefix?: string; allowedSourceAddressPrefixes?: string[]; @@ -3995,7 +3103,7 @@ export interface JitNetworkAccessPortRule { protocol: Protocol; } -// @public (undocumented) +// @public export interface JitNetworkAccessRequest { justification?: string; requestor: string; @@ -4004,7 +3112,7 @@ export interface JitNetworkAccessRequest { virtualMachines: JitNetworkAccessRequestVirtualMachine[]; } -// @public (undocumented) +// @public export interface JitNetworkAccessRequestPort { allowedSourceAddressPrefix?: string; allowedSourceAddressPrefixes?: string[]; @@ -4012,11 +3120,11 @@ export interface JitNetworkAccessRequestPort { mappedPort?: number; // (undocumented) number: number; - status: Status; + status: SecurityCenterStatus; statusReason: StatusReason; } -// @public (undocumented) +// @public export interface JitNetworkAccessRequestVirtualMachine { id: string; ports: JitNetworkAccessRequestPort[]; @@ -4025,11 +3133,6 @@ export interface JitNetworkAccessRequestVirtualMachine { // @public export type Kind = string; -// @public -export interface KindAutoGenerated { - kind?: string; -} - // @public export enum KnownAadConnectivityState { Connected = "Connected", @@ -4047,20 +3150,11 @@ export enum KnownActionableRemediationState { // @public export enum KnownActionType { EventHub = "EventHub", + Internal = "Internal", LogicApp = "LogicApp", Workspace = "Workspace" } -// @public -export enum KnownAdaptiveApplicationControlIssue { - ExecutableViolationsAudited = "ExecutableViolationsAudited", - MsiAndScriptViolationsAudited = "MsiAndScriptViolationsAudited", - MsiAndScriptViolationsBlocked = "MsiAndScriptViolationsBlocked", - RulesViolatedManually = "RulesViolatedManually", - ViolationsAudited = "ViolationsAudited", - ViolationsBlocked = "ViolationsBlocked" -} - // @public export enum KnownAdditionalWorkspaceDataType { Alerts = "Alerts", @@ -4072,6 +3166,13 @@ export enum KnownAdditionalWorkspaceType { Sentinel = "Sentinel" } +// @public +export enum KnownAgentlessEnablement { + Disabled = "Disabled", + Enabled = "Enabled", + NotApplicable = "NotApplicable" +} + // @public export enum KnownAlertSeverity { High = "High", @@ -4095,21 +3196,20 @@ export enum KnownAnnotateDefaultBranchState { } // @public -export enum KnownApplicationConditionOperator { - Contains = "Contains", - Equals = "Equals", - In = "In" +export enum KnownApplicationSourceResourceType { + Assessments = "Assessments" } // @public -export enum KnownApplicationSourceResourceType { - Assessments = "Assessments" +export enum KnownArmActionType { + Internal = "Internal" } // @public export enum KnownAssessedResourceType { ContainerRegistryVulnerability = "ContainerRegistryVulnerability", ServerVulnerability = "ServerVulnerability", + ServerVulnerabilityAssessment = "ServerVulnerabilityAssessment", SqlServerVulnerability = "SqlServerVulnerability" } @@ -4123,24 +3223,28 @@ export enum KnownAssessmentStatusCode { // @public export enum KnownAssessmentType { BuiltIn = "BuiltIn", + BuiltInPolicy = "BuiltInPolicy", + Custom = "Custom", CustomerManaged = "CustomerManaged", CustomPolicy = "CustomPolicy", + DynamicBuiltIn = "DynamicBuiltIn", + ManualBuiltIn = "ManualBuiltIn", + ManualBuiltInPolicy = "ManualBuiltInPolicy", + ManualCustomPolicy = "ManualCustomPolicy", + Unknown = "Unknown", VerifiedPartner = "VerifiedPartner" } // @public -export enum KnownAuthenticationProvisioningState { - Expired = "Expired", - IncorrectPolicy = "IncorrectPolicy", - Invalid = "Invalid", - Valid = "Valid" +export enum KnownAttestationComplianceState { + Compliant = "compliant", + NonCompliant = "nonCompliant", + Unknown = "unknown" } // @public export enum KnownAuthenticationType { - AwsAssumeRole = "awsAssumeRole", - AwsCreds = "awsCreds", - GcpCredentials = "gcpCredentials" + AccessToken = "AccessToken" } // @public @@ -4150,12 +3254,24 @@ export enum KnownAutoDiscovery { NotApplicable = "NotApplicable" } +// @public +export enum KnownAutomatedResponseType { + BlobSoftDelete = "BlobSoftDelete", + None = "None" +} + // @public export enum KnownAutoProvision { Off = "Off", On = "On" } +// @public +export enum KnownBlobScanResultsOptions { + BlobIndexTags = "BlobIndexTags", + None = "None" +} + // @public export enum KnownBundleType { AppServices = "AppServices", @@ -4171,7 +3287,9 @@ export enum KnownBundleType { // @public export enum KnownCategories { + AppServices = "AppServices", Compute = "Compute", + Container = "Container", Data = "Data", IdentityAndAccess = "IdentityAndAccess", IoT = "IoT", @@ -4183,24 +3301,11 @@ export enum KnownCloudName { AWS = "AWS", Azure = "Azure", AzureDevOps = "AzureDevOps", + DockerHub = "DockerHub", GCP = "GCP", Github = "Github", - GitLab = "GitLab" -} - -// @public -export enum KnownCode { - Failed = "Failed", - Succeeded = "Succeeded" -} - -// @public -export enum KnownConfigurationStatus { - Configured = "Configured", - Failed = "Failed", - InProgress = "InProgress", - NoStatus = "NoStatus", - NotConfigured = "NotConfigured" + GitLab = "GitLab", + JFrog = "JFrog" } // @public @@ -4228,12 +3333,6 @@ export enum KnownDataSource { TwinData = "TwinData" } -// @public -export enum KnownDesiredOnboardingState { - Disabled = "Disabled", - Enabled = "Enabled" -} - // @public export enum KnownDevOpsProvisioningState { Canceled = "Canceled", @@ -4246,18 +3345,10 @@ export enum KnownDevOpsProvisioningState { } // @public -export enum KnownDirection { - Inbound = "Inbound", - Outbound = "Outbound" -} - -// @public -export enum KnownEndOfSupportStatus { - NoLongerSupported = "noLongerSupported", - None = "None", - UpcomingNoLongerSupported = "upcomingNoLongerSupported", - UpcomingVersionNoLongerSupported = "upcomingVersionNoLongerSupported", - VersionNoLongerSupported = "versionNoLongerSupported" +export enum KnownEffect { + Attest = "Attest", + Audit = "Audit", + Exempt = "Exempt" } // @public @@ -4266,27 +3357,15 @@ export enum KnownEnforce { True = "True" } -// @public -export enum KnownEnforcementMode { - Audit = "Audit", - Enforce = "Enforce", - None = "None" -} - -// @public -export enum KnownEnforcementSupport { - NotSupported = "NotSupported", - Supported = "Supported", - Unknown = "Unknown" -} - // @public export enum KnownEnvironmentType { AwsAccount = "AwsAccount", AzureDevOpsScope = "AzureDevOpsScope", + DockerHubOrganization = "DockerHubOrganization", GcpProject = "GcpProject", GithubScope = "GithubScope", - GitlabScope = "GitlabScope" + GitlabScope = "GitlabScope", + JFrogArtifactory = "JFrogArtifactory" } // @public @@ -4306,6 +3385,12 @@ export enum KnownEventSource { SubAssessmentsSnapshot = "SubAssessmentsSnapshot" } +// @public +export enum KnownExemptionCategory { + Mitigated = "mitigated", + Waiver = "waiver" +} + // @public export enum KnownExpandControlsEnum { Definition = "definition" @@ -4329,22 +3414,6 @@ export enum KnownExternalSecuritySolutionKind { CEF = "CEF" } -// @public -export enum KnownFileType { - Dll = "Dll", - Exe = "Exe", - Executable = "Executable", - Msi = "Msi", - Script = "Script", - Unknown = "Unknown" -} - -// @public -export enum KnownGovernanceRuleConditionOperator { - Equals = "Equals", - In = "In" -} - // @public export enum KnownGovernanceRuleOwnerSourceType { ByTag = "ByTag", @@ -4362,13 +3431,6 @@ export enum KnownGovernanceRuleType { ServiceNow = "ServiceNow" } -// @public -export enum KnownHybridComputeProvisioningState { - Expired = "Expired", - Invalid = "Invalid", - Valid = "Valid" -} - // @public export enum KnownImplementationEffort { High = "High", @@ -4414,6 +3476,21 @@ export enum KnownIntent { Unknown = "Unknown" } +// @public +export enum KnownInventoryKind { + AzureDevOpsOrganization = "AzureDevOpsOrganization", + AzureDevOpsProject = "AzureDevOpsProject", + AzureDevOpsRepository = "AzureDevOpsRepository", + GitHubOwner = "GitHubOwner", + GitHubRepository = "GitHubRepository" +} + +// @public +export enum KnownInventoryListKind { + Exclusion = "Exclusion", + Inclusion = "Inclusion" +} + // @public export enum KnownIsEnabled { False = "False", @@ -4452,21 +3529,23 @@ export enum KnownMipIntegrationStatus { export enum KnownOfferingType { CspmMonitorAws = "CspmMonitorAws", CspmMonitorAzureDevOps = "CspmMonitorAzureDevOps", + CspmMonitorDockerHub = "CspmMonitorDockerHub", CspmMonitorGcp = "CspmMonitorGcp", CspmMonitorGithub = "CspmMonitorGithub", CspmMonitorGitLab = "CspmMonitorGitLab", + CspmMonitorJFrog = "CspmMonitorJFrog", DefenderCspmAws = "DefenderCspmAws", + DefenderCspmDockerHub = "DefenderCspmDockerHub", DefenderCspmGcp = "DefenderCspmGcp", + DefenderCspmJFrog = "DefenderCspmJFrog", DefenderForContainersAws = "DefenderForContainersAws", + DefenderForContainersDockerHub = "DefenderForContainersDockerHub", DefenderForContainersGcp = "DefenderForContainersGcp", + DefenderForContainersJFrog = "DefenderForContainersJFrog", DefenderForDatabasesAws = "DefenderForDatabasesAws", DefenderForDatabasesGcp = "DefenderForDatabasesGcp", - DefenderForDevOpsAzureDevOps = "DefenderForDevOpsAzureDevOps", - DefenderForDevOpsGithub = "DefenderForDevOpsGithub", - DefenderForDevOpsGitLab = "DefenderForDevOpsGitLab", DefenderForServersAws = "DefenderForServersAws", - DefenderForServersGcp = "DefenderForServersGcp", - InformationProtectionAws = "InformationProtectionAws" + DefenderForServersGcp = "DefenderForServersGcp" } // @public @@ -4478,7 +3557,7 @@ export enum KnownOnboardingState { } // @public -export enum KnownOperationResult { +export enum KnownOperationResultStatus { Canceled = "Canceled", Failed = "Failed", Succeeded = "Succeeded" @@ -4504,11 +3583,10 @@ export enum KnownOrganizationMembershipType { } // @public -export enum KnownPermissionProperty { - AWSAmazonSSMAutomationRole = "AWS::AmazonSSMAutomationRole", - AWSAWSSecurityHubReadOnlyAccess = "AWS::AWSSecurityHubReadOnlyAccess", - AWSSecurityAudit = "AWS::SecurityAudit", - GCPSecurityCenterAdminViewer = "GCP::Security Center Admin Viewer" +export enum KnownOrigin { + System = "system", + User = "user", + UserSystem = "user,system" } // @public @@ -4517,6 +3595,21 @@ export enum KnownPricingTier { Standard = "Standard" } +// @public +export enum KnownPrivateEndpointConnectionProvisioningState { + Creating = "Creating", + Deleting = "Deleting", + Failed = "Failed", + Succeeded = "Succeeded" +} + +// @public +export enum KnownPrivateEndpointServiceConnectionStatus { + Approved = "Approved", + Pending = "Pending", + Rejected = "Rejected" +} + // @public export enum KnownPropertyType { Boolean = "Boolean", @@ -4527,6 +3620,7 @@ export enum KnownPropertyType { // @public export enum KnownProtocol { + // (undocumented) All = "*", TCP = "TCP", UDP = "UDP" @@ -4534,16 +3628,19 @@ export enum KnownProtocol { // @public export enum KnownProvisioningState { + Canceled = "Canceled", + Creating = "Creating", + Deleting = "Deleting", Failed = "Failed", + InProgress = "InProgress", Succeeded = "Succeeded", Updating = "Updating" } // @public -export enum KnownRecommendationAction { - Add = "Add", - Recommended = "Recommended", - Remove = "Remove" +export enum KnownPublicNetworkAccess { + Disabled = "Disabled", + Enabled = "Enabled" } // @public @@ -4553,11 +3650,10 @@ export enum KnownRecommendationConfigStatus { } // @public -export enum KnownRecommendationStatus { - NoStatus = "NoStatus", - NotAvailable = "NotAvailable", - NotRecommended = "NotRecommended", - Recommended = "Recommended" +export enum KnownRecommendationSupportedClouds { + AWS = "AWS", + Azure = "Azure", + GCP = "GCP" } // @public @@ -4609,6 +3705,15 @@ export enum KnownResourceStatus { OffByPolicy = "OffByPolicy" } +// @public +export enum KnownRiskLevel { + Critical = "Critical", + High = "High", + Low = "Low", + Medium = "Medium", + None = "None" +} + // @public export enum KnownRuleCategory { Artifacts = "Artifacts", @@ -4632,7 +3737,8 @@ export enum KnownRuleSeverity { export enum KnownRuleStatus { Finding = "Finding", InternalError = "InternalError", - NonFinding = "NonFinding" + NonFinding = "NonFinding", + NotApplicable = "NotApplicable" } // @public @@ -4648,6 +3754,14 @@ export enum KnownScanningMode { Default = "Default" } +// @public +export enum KnownScanOperationStatus { + Failed = "Failed", + FailedToRun = "FailedToRun", + InProgress = "InProgress", + Passed = "Passed" +} + // @public export enum KnownScanState { Failed = "Failed", @@ -4683,6 +3797,16 @@ export enum KnownSecurityFamily { Waf = "Waf" } +// @public +export enum KnownSecurityIssue { + AnonymousAccess = "AnonymousAccess", + BestPractices = "BestPractices", + ExcessivePermissions = "ExcessivePermissions", + NetworkExposure = "NetworkExposure", + TrafficEncryption = "TrafficEncryption", + Vulnerability = "Vulnerability" +} + // @public export enum KnownSecuritySolutionStatus { Disabled = "Disabled", @@ -4722,11 +3846,7 @@ export enum KnownSettingKind { // @public export enum KnownSettingName { - Current = "current" -} - -// @public -export enum KnownSettingNameAutoGenerated { + Current = "current", Mcas = "MCAS", Sentinel = "Sentinel", Wdatp = "WDATP", @@ -4736,6 +3856,7 @@ export enum KnownSettingNameAutoGenerated { // @public export enum KnownSeverity { + Critical = "Critical", High = "High", Low = "Low", Medium = "Medium" @@ -4750,29 +3871,45 @@ export enum KnownSeverityEnum { // @public export enum KnownSource { + Aws = "Aws", Azure = "Azure", + Gcp = "Gcp", OnPremise = "OnPremise", + OnPremiseResourceDetails = "OnPremiseResourceDetails", OnPremiseSql = "OnPremiseSql" } -// @public -export enum KnownSourceSystem { - AzureAppLocker = "Azure_AppLocker", - AzureAuditD = "Azure_AuditD", - NonAzureAppLocker = "NonAzure_AppLocker", - NonAzureAuditD = "NonAzure_AuditD", - None = "None" -} - // @public export enum KnownSourceType { Alert = "Alert", AttackPath = "AttackPath" } +// @public +export enum KnownSqlVulnerabilityAssessmentState { + Disabled = "Disabled", + Enabled = "Enabled" +} + +// @public +export enum KnownStandardSupportedCloud { + AWS = "AWS", + Azure = "Azure", + GCP = "GCP" +} + +// @public +export enum KnownStandardType { + Compliance = "Compliance", + Custom = "Custom", + Default = "Default" +} + // @public export enum KnownState { Failed = "Failed", + Off = "Off", + On = "On", Passed = "Passed", Skipped = "Skipped", Unsupported = "Unsupported" @@ -4811,12 +3948,6 @@ export enum KnownSubPlan { P2 = "P2" } -// @public -export enum KnownSupportedCloudEnum { - AWS = "AWS", - GCP = "GCP" -} - // @public export enum KnownTactics { Collection = "Collection", @@ -4964,12 +4095,6 @@ export enum KnownThreats { ThreatResistance = "threatResistance" } -// @public -export enum KnownTransportProtocol { - TCP = "TCP", - UDP = "UDP" -} - // @public export enum KnownType { Qualys = "Qualys", @@ -5004,61 +4129,64 @@ export interface Label { // @public export interface ListCustomAlertRule extends CustomAlertRule { - ruleType: "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule" | "ConnectionToIpNotAllowed" | "ConnectionFromIpNotAllowed" | "LocalUserNotAllowed" | "ProcessNotAllowed"; + // (undocumented) + ruleType: "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule"; readonly valueType?: ValueType; } -// @public (undocumented) -export type ListCustomAlertRuleUnion = ListCustomAlertRule | AllowlistCustomAlertRuleUnion | DenylistCustomAlertRule; - // @public -export interface LocalUserNotAllowed extends AllowlistCustomAlertRule { - ruleType: "LocalUserNotAllowed"; -} +export type ListCustomAlertRuleUnion = AllowlistCustomAlertRule | DenylistCustomAlertRule | ListCustomAlertRule; // @public -export interface Location { - readonly location?: string; +export interface LocationsGetOptionalParams extends OperationOptions { } // @public -export interface Locations { - get(ascLocation: string, options?: LocationsGetOptionalParams): Promise; - list(options?: LocationsListOptionalParams): PagedAsyncIterableIterator; +export interface LocationsListOptionalParams extends OperationOptions { } // @public -export interface LocationsGetOptionalParams extends coreClient.OperationOptions { +export interface LocationsOperations { + get: (ascLocation: string, options?: LocationsGetOptionalParams) => Promise; + list: (options?: LocationsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type LocationsGetResponse = AscLocation; - -// @public -export interface LocationsListNextOptionalParams extends coreClient.OperationOptions { +export interface LogAnalyticsIdentifier extends ResourceIdentifier { + readonly agentId?: string; + type: "LogAnalytics"; + readonly workspaceId?: string; + readonly workspaceResourceGroup?: string; + readonly workspaceSubscriptionId?: string; } // @public -export type LocationsListNextResponse = AscLocationList; - -// @public -export interface LocationsListOptionalParams extends coreClient.OperationOptions { +export interface MalwareScan { + // (undocumented) + properties?: MalwareScanProperties; } // @public -export type LocationsListResponse = AscLocationList; +export interface MalwareScanningProperties { + automatedResponse?: AutomatedResponseType; + blobScanResultsOptions?: BlobScanResultsOptions; + onUpload?: OnUploadProperties; + readonly operationStatus?: OperationStatus; + scanResultsEventGridTopicResourceId?: string; +} // @public -export interface LogAnalyticsIdentifier extends ResourceIdentifier { - readonly agentId?: string; - type: "LogAnalytics"; - readonly workspaceId?: string; - readonly workspaceResourceGroup?: string; - readonly workspaceSubscriptionId?: string; +export interface MalwareScanProperties { + scanEndTime?: string; + scanId?: string; + scanStartTime?: string; + scanStatus?: string; + scanStatusMessage?: string; + scanSummary?: ScanSummary; } // @public -export interface MdeOnboardingData extends Resource { +export interface MdeOnboardingData extends ProxyResource { onboardingPackageLinux?: Uint8Array; onboardingPackageWindows?: Uint8Array; } @@ -5069,24 +4197,24 @@ export interface MdeOnboardingDataList { } // @public -export interface MdeOnboardings { - get(options?: MdeOnboardingsGetOptionalParams): Promise; - list(options?: MdeOnboardingsListOptionalParams): Promise; +export interface MdeOnboardingDataProperties { + onboardingPackageLinux?: Uint8Array; + onboardingPackageWindows?: Uint8Array; } // @public -export interface MdeOnboardingsGetOptionalParams extends coreClient.OperationOptions { +export interface MdeOnboardingsGetOptionalParams extends OperationOptions { } // @public -export type MdeOnboardingsGetResponse = MdeOnboardingData; - -// @public -export interface MdeOnboardingsListOptionalParams extends coreClient.OperationOptions { +export interface MdeOnboardingsListOptionalParams extends OperationOptions { } // @public -export type MdeOnboardingsListResponse = MdeOnboardingDataList; +export interface MdeOnboardingsOperations { + get: (options?: MdeOnboardingsGetOptionalParams) => Promise; + list: (options?: MdeOnboardingsListOptionalParams) => Promise; +} // @public export type MinimalRiskLevel = string; @@ -5097,24 +4225,9 @@ export type MinimalSeverity = string; // @public export type MipIntegrationStatus = string; -// @public -export interface MqttC2DMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "MqttC2DMessagesNotInAllowedRange"; -} - -// @public -export interface MqttC2DRejectedMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "MqttC2DRejectedMessagesNotInAllowedRange"; -} - -// @public -export interface MqttD2CMessagesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "MqttD2CMessagesNotInAllowedRange"; -} - // @public export interface NotificationsSource { - sourceType: "Alert" | "AttackPath"; + sourceType: SourceType; } // @public @@ -5129,8 +4242,8 @@ export interface NotificationsSourceAttackPath extends NotificationsSource { sourceType: "AttackPath"; } -// @public (undocumented) -export type NotificationsSourceUnion = NotificationsSource | NotificationsSourceAlert | NotificationsSourceAttackPath; +// @public +export type NotificationsSourceUnion = NotificationsSourceAlert | NotificationsSourceAttackPath | NotificationsSource; // @public export type OfferingType = string; @@ -5141,14 +4254,15 @@ export type OnboardingState = string; // @public export interface OnPremiseResourceDetails extends ResourceDetails { machineName: string; - source: "OnPremise" | "OnPremiseSql"; + // (undocumented) + source: "OnPremiseResourceDetails" | "OnPremiseSql"; sourceComputerId: string; vmuuid: string; workspaceId: string; } -// @public (undocumented) -export type OnPremiseResourceDetailsUnion = OnPremiseResourceDetails | OnPremiseSqlResourceDetails; +// @public +export type OnPremiseResourceDetailsUnion = OnPremiseSqlResourceDetails | OnPremiseResourceDetails; // @public export interface OnPremiseSqlResourceDetails extends OnPremiseResourceDetails { @@ -5157,11 +4271,27 @@ export interface OnPremiseSqlResourceDetails extends OnPremiseResourceDetails { source: "OnPremiseSql"; } +// @public +export interface OnUploadFilters { + excludeBlobsLargerThan?: any; + excludeBlobsWithPrefix?: string[]; + excludeBlobsWithSuffix?: string[]; +} + +// @public +export interface OnUploadProperties { + capGBPerMonth?: number; + filters?: OnUploadFilters; + isEnabled?: boolean; +} + // @public export interface Operation { + readonly actionType?: ArmActionType; display?: OperationDisplay; + readonly isDataAction?: boolean; readonly name?: string; - readonly origin?: string; + readonly origin?: Origin; } // @public @@ -5173,37 +4303,30 @@ export interface OperationDisplay { } // @public -export interface OperationList { - readonly nextLink?: string; - value?: Operation[]; -} - -// @public -export type OperationResult = string; - -// @public -export interface OperationResultAutoGenerated { - readonly status?: OperationResult; +export interface OperationResult { + readonly status?: OperationResultStatus; } // @public -export interface Operations { - list(options?: OperationsListOptionalParams): PagedAsyncIterableIterator; +export interface OperationResultsGetOptionalParams extends OperationOptions { } // @public -export interface OperationsListNextOptionalParams extends coreClient.OperationOptions { +export interface OperationResultsOperations { + get: (location: string, operationId: string, options?: OperationResultsGetOptionalParams) => Promise; } // @public -export type OperationsListNextResponse = OperationList; +export type OperationResultStatus = string; // @public -export interface OperationsListOptionalParams extends coreClient.OperationOptions { +export interface OperationsListOptionalParams extends OperationOptions { } // @public -export type OperationsListResponse = OperationList; +export interface OperationsOperations { + list: (options?: OperationsListOptionalParams) => PagedAsyncIterableIterator; +} // @public export interface OperationStatus { @@ -5212,19 +4335,23 @@ export interface OperationStatus { } // @public -export interface OperationStatusAutoGenerated { - code?: Code; - message?: string; +export interface OperationStatusesGetOptionalParams extends OperationOptions { +} + +// @public +export interface OperationStatusesOperations { + get: (location: string, operationId: string, options?: OperationStatusesGetOptionalParams) => Promise; } // @public export interface OperationStatusResult { endTime?: Date; - error?: ErrorDetailAutoGenerated; + error?: ErrorDetail; id?: string; name?: string; operations?: OperationStatusResult[]; percentComplete?: number; + readonly resourceId?: string; startTime?: Date; status: string; } @@ -5236,25 +4363,27 @@ export type Operator = string; export type OrganizationMembershipType = string; // @public -export interface PathRecommendation { - action?: RecommendationAction; - common?: boolean; - configurationStatus?: ConfigurationStatus; - fileType?: FileType; - path?: string; - publisherInfo?: PublisherInfo; - type?: RecommendationType; - // (undocumented) - usernames?: UserRecommendation[]; - // (undocumented) - userSids?: string[]; +export type Origin = string; + +// @public +export interface PagedAsyncIterableIterator { + [Symbol.asyncIterator](): PagedAsyncIterableIterator; + byPage: (settings?: TPageSettings) => AsyncIterableIterator>; + next(): Promise>; +} + +// @public +export interface PageSettings { + continuationToken?: string; } // @public -export type PermissionProperty = string; +export interface PartialAssessmentProperties { + assessmentKey?: string; +} // @public -export interface Pricing extends Resource { +export interface Pricing extends ExtensionResource { readonly deprecated?: boolean; readonly enablementTime?: Date; enforce?: Enforce; @@ -5274,249 +4403,366 @@ export interface PricingList { } // @public -export interface Pricings { - delete(scopeId: string, pricingName: string, options?: PricingsDeleteOptionalParams): Promise; - get(scopeId: string, pricingName: string, options?: PricingsGetOptionalParams): Promise; - list(scopeId: string, options?: PricingsListOptionalParams): Promise; - update(scopeId: string, pricingName: string, pricing: Pricing, options?: PricingsUpdateOptionalParams): Promise; +export interface PricingProperties { + readonly deprecated?: boolean; + readonly enablementTime?: Date; + enforce?: Enforce; + extensions?: Extension[]; + readonly freeTrialRemainingTime?: string; + readonly inherited?: Inherited; + readonly inheritedFrom?: string; + pricingTier: PricingTier; + readonly replacedBy?: string[]; + readonly resourcesCoverageStatus?: ResourcesCoverageStatus; + subPlan?: string; } // @public -export interface PricingsDeleteOptionalParams extends coreClient.OperationOptions { +export interface PricingsDeleteOptionalParams extends OperationOptions { } // @public -export interface PricingsGetOptionalParams extends coreClient.OperationOptions { +export interface PricingsGetOptionalParams extends OperationOptions { } // @public -export type PricingsGetResponse = Pricing; - -// @public -export interface PricingsListOptionalParams extends coreClient.OperationOptions { +export interface PricingsListOptionalParams extends OperationOptions { filter?: string; } // @public -export type PricingsListResponse = PricingList; - -// @public -export interface PricingsUpdateOptionalParams extends coreClient.OperationOptions { +export interface PricingsOperations { + delete: (scopeId: string, pricingName: string, options?: PricingsDeleteOptionalParams) => Promise; + get: (scopeId: string, pricingName: string, options?: PricingsGetOptionalParams) => Promise; + list: (scopeId: string, options?: PricingsListOptionalParams) => Promise; + update: (scopeId: string, pricingName: string, pricing: Pricing, options?: PricingsUpdateOptionalParams) => Promise; } // @public -export type PricingsUpdateResponse = Pricing; +export interface PricingsUpdateOptionalParams extends OperationOptions { +} // @public export type PricingTier = string; // @public -export interface ProcessNotAllowed extends AllowlistCustomAlertRule { - ruleType: "ProcessNotAllowed"; +export interface PrivateEndpoint { + readonly id?: string; } // @public -export type PropertyType = string; - -// @public -export interface ProtectionMode { - exe?: EnforcementMode; - executable?: EnforcementMode; - msi?: EnforcementMode; - script?: EnforcementMode; +export interface PrivateEndpointConnection extends Resource { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; } // @public -export type Protocol = string; +export interface PrivateEndpointConnectionProperties { + readonly groupIds?: string[]; + privateEndpoint?: PrivateEndpoint; + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +} // @public -export type ProvisioningState = string; +export type PrivateEndpointConnectionProvisioningState = string; // @public -export interface ProxyResource extends ResourceAutoGenerated { +export interface PrivateEndpointConnectionsCreateOrUpdateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; } // @public -export interface ProxyServerProperties { - ip?: string; - port?: string; +export interface PrivateEndpointConnectionsDeleteOptionalParams extends OperationOptions { + updateIntervalInMs?: number; } // @public -export interface PublisherInfo { - binaryName?: string; - productName?: string; - publisherName?: string; - version?: string; +export interface PrivateEndpointConnectionsGetOptionalParams extends OperationOptions { } // @public -export interface QueryCheck { - columnNames?: string[]; - expectedResult?: string[][]; - query?: string; +export interface PrivateEndpointConnectionsListOptionalParams extends OperationOptions { } // @public -export interface QueuePurgesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "QueuePurgesNotInAllowedRange"; +export interface PrivateEndpointConnectionsOperations { + // @deprecated (undocumented) + beginCreateOrUpdate: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, privateEndpointConnection: ArmPrivateEndpointConnection, options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams) => Promise, PrivateEndpointConnection>>; + // @deprecated (undocumented) + beginCreateOrUpdateAndWait: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, privateEndpointConnection: ArmPrivateEndpointConnection, options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams) => Promise; + // @deprecated (undocumented) + beginDelete: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginDeleteAndWait: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, privateEndpointConnection: ArmPrivateEndpointConnection, options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams) => PollerLike, PrivateEndpointConnection>; + delete: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsDeleteOptionalParams) => PollerLike, void>; + get: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateEndpointConnectionName: string, options?: PrivateEndpointConnectionsGetOptionalParams) => Promise; + list: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateEndpointConnectionsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type Rank = "None" | "Low" | "Medium" | "High" | "Critical"; +export type PrivateEndpointServiceConnectionStatus = string; // @public -export type RecommendationAction = string; +export interface PrivateLinkGroupResource extends ProxyResource { + readonly groupId?: string; + readonly requiredMembers?: string[]; + requiredZoneNames?: string[]; +} // @public -export type RecommendationConfigStatus = string; +export interface PrivateLinkParameters { + privateLinkName: string; +} // @public -export interface RecommendationConfigurationProperties { - readonly name?: string; - recommendationType: RecommendationType; - status: RecommendationConfigStatus; +export interface PrivateLinkProperties { + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + readonly privateLinkResources?: PrivateLinkGroupResource[]; + readonly provisioningState?: ProvisioningState; + publicNetworkAccess?: PublicNetworkAccess; } // @public -export type RecommendationStatus = string; +export interface PrivateLinkResource extends TrackedResource { + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + readonly privateLinkResources?: PrivateLinkGroupResource[]; + readonly provisioningState?: ProvisioningState; + publicNetworkAccess?: PublicNetworkAccess; +} // @public -export type RecommendationType = string; +export interface PrivateLinkResourceProperties { + readonly groupId?: string; + readonly requiredMembers?: string[]; + requiredZoneNames?: string[]; +} // @public -export interface RegulatoryComplianceAssessment extends Resource { - readonly assessmentDetailsLink?: string; - readonly assessmentType?: string; - readonly description?: string; - readonly failedResources?: number; - readonly passedResources?: number; - readonly skippedResources?: number; - state?: State; - readonly unsupportedResources?: number; +export interface PrivateLinkResourcesGetOptionalParams extends OperationOptions { } // @public -export interface RegulatoryComplianceAssessmentList { - readonly nextLink?: string; - // (undocumented) - value: RegulatoryComplianceAssessment[]; +export interface PrivateLinkResourcesListOptionalParams extends OperationOptions { } // @public -export interface RegulatoryComplianceAssessments { - get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options?: RegulatoryComplianceAssessmentsGetOptionalParams): Promise; - list(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceAssessmentsListOptionalParams): PagedAsyncIterableIterator; +export interface PrivateLinkResourcesOperations { + get: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, groupId: string, options?: PrivateLinkResourcesGetOptionalParams) => Promise; + list: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinkResourcesListOptionalParams) => PagedAsyncIterableIterator; } // @public -export interface RegulatoryComplianceAssessmentsGetOptionalParams extends coreClient.OperationOptions { +export interface PrivateLinksCreateOptionalParams extends OperationOptions { + updateIntervalInMs?: number; } // @public -export type RegulatoryComplianceAssessmentsGetResponse = RegulatoryComplianceAssessment; +export interface PrivateLinksDeleteOptionalParams extends OperationOptions { + updateIntervalInMs?: number; +} // @public -export interface RegulatoryComplianceAssessmentsListNextOptionalParams extends coreClient.OperationOptions { +export interface PrivateLinkServiceConnectionState { + actionsRequired?: string; + description?: string; + status?: PrivateEndpointServiceConnectionStatus; } // @public -export type RegulatoryComplianceAssessmentsListNextResponse = RegulatoryComplianceAssessmentList; +export interface PrivateLinksGetOptionalParams extends OperationOptions { +} // @public -export interface RegulatoryComplianceAssessmentsListOptionalParams extends coreClient.OperationOptions { - filter?: string; +export interface PrivateLinksHeadOptionalParams extends OperationOptions { } // @public -export type RegulatoryComplianceAssessmentsListResponse = RegulatoryComplianceAssessmentList; +export interface PrivateLinksListBySubscriptionOptionalParams extends OperationOptions { +} // @public -export interface RegulatoryComplianceControl extends Resource { - readonly description?: string; - readonly failedAssessments?: number; - readonly passedAssessments?: number; - readonly skippedAssessments?: number; - state?: State; +export interface PrivateLinksListOptionalParams extends OperationOptions { } // @public -export interface RegulatoryComplianceControlList { - readonly nextLink?: string; - value: RegulatoryComplianceControl[]; +export interface PrivateLinksOperations { + // @deprecated (undocumented) + beginCreate: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateLink: PrivateLinkResource, options?: PrivateLinksCreateOptionalParams) => Promise, PrivateLinkResource>>; + // @deprecated (undocumented) + beginCreateAndWait: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateLink: PrivateLinkResource, options?: PrivateLinksCreateOptionalParams) => Promise; + // @deprecated (undocumented) + beginDelete: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinksDeleteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginDeleteAndWait: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinksDeleteOptionalParams) => Promise; + create: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateLink: PrivateLinkResource, options?: PrivateLinksCreateOptionalParams) => PollerLike, PrivateLinkResource>; + delete: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinksDeleteOptionalParams) => PollerLike, void>; + get: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinksGetOptionalParams) => Promise; + head: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, options?: PrivateLinksHeadOptionalParams) => Promise; + list: (resourceGroupName: string, options?: PrivateLinksListOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: PrivateLinksListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, privateLinkName: PrivateLinkParameters, privateLink: PrivateLinkUpdate, options?: PrivateLinksUpdateOptionalParams) => Promise; } // @public -export interface RegulatoryComplianceControls { - get(regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceControlsGetOptionalParams): Promise; - list(regulatoryComplianceStandardName: string, options?: RegulatoryComplianceControlsListOptionalParams): PagedAsyncIterableIterator; +export interface PrivateLinksUpdateOptionalParams extends OperationOptions { } // @public -export interface RegulatoryComplianceControlsGetOptionalParams extends coreClient.OperationOptions { +export interface PrivateLinkUpdate { + tags?: Record; } // @public -export type RegulatoryComplianceControlsGetResponse = RegulatoryComplianceControl; +export type PropertyType = string; // @public -export interface RegulatoryComplianceControlsListNextOptionalParams extends coreClient.OperationOptions { -} +export type Protocol = string; // @public -export type RegulatoryComplianceControlsListNextResponse = RegulatoryComplianceControlList; +export type ProvisioningState = string; // @public -export interface RegulatoryComplianceControlsListOptionalParams extends coreClient.OperationOptions { - filter?: string; +export interface ProxyResource extends Resource { } // @public -export type RegulatoryComplianceControlsListResponse = RegulatoryComplianceControlList; +export type PublicNetworkAccess = string; // @public -export interface RegulatoryComplianceStandard extends Resource { - readonly failedControls?: number; - readonly passedControls?: number; - readonly skippedControls?: number; - state?: State; - readonly unsupportedControls?: number; +export interface QueryCheck { + columnNames?: string[]; + expectedResult?: string[][]; + query?: string; } // @public -export interface RegulatoryComplianceStandardList { - readonly nextLink?: string; - // (undocumented) - value: RegulatoryComplianceStandard[]; -} +export type Rank = "None" | "Low" | "Medium" | "High" | "Critical"; // @public -export interface RegulatoryComplianceStandards { - get(regulatoryComplianceStandardName: string, options?: RegulatoryComplianceStandardsGetOptionalParams): Promise; - list(options?: RegulatoryComplianceStandardsListOptionalParams): PagedAsyncIterableIterator; -} +export type RecommendationConfigStatus = string; // @public -export interface RegulatoryComplianceStandardsGetOptionalParams extends coreClient.OperationOptions { +export interface RecommendationConfigurationProperties { + // (undocumented) + readonly name?: string; + recommendationType: RecommendationType; + status: RecommendationConfigStatus; } // @public -export type RegulatoryComplianceStandardsGetResponse = RegulatoryComplianceStandard; +export type RecommendationSupportedClouds = string; // @public -export interface RegulatoryComplianceStandardsListNextOptionalParams extends coreClient.OperationOptions { +export type RecommendationType = string; + +// @public +export interface RegulatoryComplianceAssessment extends ProxyResource { + readonly assessmentDetailsLink?: string; + readonly assessmentType?: string; + readonly description?: string; + readonly failedResources?: number; + readonly passedResources?: number; + readonly skippedResources?: number; + state?: State; + readonly unsupportedResources?: number; } // @public -export type RegulatoryComplianceStandardsListNextResponse = RegulatoryComplianceStandardList; +export interface RegulatoryComplianceAssessmentProperties { + readonly assessmentDetailsLink?: string; + readonly assessmentType?: string; + readonly description?: string; + readonly failedResources?: number; + readonly passedResources?: number; + readonly skippedResources?: number; + state?: State; + readonly unsupportedResources?: number; +} // @public -export interface RegulatoryComplianceStandardsListOptionalParams extends coreClient.OperationOptions { +export interface RegulatoryComplianceAssessmentsGetOptionalParams extends OperationOptions { +} + +// @public +export interface RegulatoryComplianceAssessmentsListOptionalParams extends OperationOptions { filter?: string; } // @public -export type RegulatoryComplianceStandardsListResponse = RegulatoryComplianceStandardList; +export interface RegulatoryComplianceAssessmentsOperations { + get: (regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, regulatoryComplianceAssessmentName: string, options?: RegulatoryComplianceAssessmentsGetOptionalParams) => Promise; + list: (regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceAssessmentsListOptionalParams) => PagedAsyncIterableIterator; +} + +// @public +export interface RegulatoryComplianceControl extends ProxyResource { + readonly description?: string; + readonly failedAssessments?: number; + readonly passedAssessments?: number; + readonly skippedAssessments?: number; + state?: State; +} + +// @public +export interface RegulatoryComplianceControlProperties { + readonly description?: string; + readonly failedAssessments?: number; + readonly passedAssessments?: number; + readonly skippedAssessments?: number; + state?: State; +} + +// @public +export interface RegulatoryComplianceControlsGetOptionalParams extends OperationOptions { +} + +// @public +export interface RegulatoryComplianceControlsListOptionalParams extends OperationOptions { + filter?: string; +} + +// @public +export interface RegulatoryComplianceControlsOperations { + get: (regulatoryComplianceStandardName: string, regulatoryComplianceControlName: string, options?: RegulatoryComplianceControlsGetOptionalParams) => Promise; + list: (regulatoryComplianceStandardName: string, options?: RegulatoryComplianceControlsListOptionalParams) => PagedAsyncIterableIterator; +} + +// @public +export interface RegulatoryComplianceStandard extends ProxyResource { + readonly failedControls?: number; + readonly passedControls?: number; + readonly skippedControls?: number; + state?: State; + readonly unsupportedControls?: number; +} + +// @public +export interface RegulatoryComplianceStandardProperties { + readonly failedControls?: number; + readonly passedControls?: number; + readonly skippedControls?: number; + state?: State; + readonly unsupportedControls?: number; +} + +// @public +export interface RegulatoryComplianceStandardsGetOptionalParams extends OperationOptions { +} + +// @public +export interface RegulatoryComplianceStandardsListOptionalParams extends OperationOptions { + filter?: string; +} + +// @public +export interface RegulatoryComplianceStandardsOperations { + get: (regulatoryComplianceStandardName: string, options?: RegulatoryComplianceStandardsGetOptionalParams) => Promise; + list: (options?: RegulatoryComplianceStandardsListOptionalParams) => PagedAsyncIterableIterator; +} // @public export interface Remediation { @@ -5537,20 +4783,6 @@ export type ReportedSeverity = string; // @public export interface Resource { - readonly id?: string; - readonly name?: string; - readonly type?: string; -} - -// @public -export interface ResourceAutoGenerated { - readonly id?: string; - readonly name?: string; - readonly type?: string; -} - -// @public -export interface ResourceAutoGenerated2 { readonly id?: string; readonly name?: string; readonly systemData?: SystemData; @@ -5559,29 +4791,25 @@ export interface ResourceAutoGenerated2 { // @public export interface ResourceDetails { - source: "Azure" | "OnPremise" | "OnPremiseSql"; + source: Source; } // @public -export interface ResourceDetailsAutoGenerated { - readonly connectorId?: string; - readonly id?: string; - source?: Source; -} - -// @public (undocumented) -export type ResourceDetailsUnion = ResourceDetails | AzureResourceDetails | OnPremiseResourceDetailsUnion; +export type ResourceDetailsUnion = AzureResourceDetails | OnPremiseResourceDetailsUnion | ResourceDetails; // @public export interface ResourceIdentifier { - type: "AzureResource" | "LogAnalytics"; + type: ResourceIdentifierType; } // @public export type ResourceIdentifierType = string; -// @public (undocumented) -export type ResourceIdentifierUnion = ResourceIdentifier | AzureResourceIdentifier | LogAnalyticsIdentifier; +// @public +export type ResourceIdentifierUnion = AzureResourceIdentifier | LogAnalyticsIdentifier | ResourceIdentifier; + +// @public +export type ResourceIdentityType = "SystemAssigned"; // @public export type ResourcesCoverageStatus = string; @@ -5590,19 +4818,23 @@ export type ResourcesCoverageStatus = string; export type ResourceStatus = string; // @public -export interface Rule { - destinationPort?: number; - direction?: Direction; - ipAddresses?: string[]; - name?: string; - protocols?: TransportProtocol[]; +export function restorePoller(client: SecurityCenter, serializedState: string, sourceOperation: (...args: any[]) => PollerLike, TResult>, options?: RestorePollerOptions): PollerLike, TResult>; + +// @public (undocumented) +export interface RestorePollerOptions extends OperationOptions { + abortSignal?: AbortSignalLike; + processResponseBody?: (result: TResponse) => Promise; + updateIntervalInMs?: number; } +// @public +export type RiskLevel = string; + // @public export type RuleCategory = string; // @public -export interface RuleResults extends Resource { +export interface RuleResults extends ExtensionResource { properties?: RuleResultsProperties; } @@ -5614,6 +4846,7 @@ export interface RuleResultsInput { // @public export interface RuleResultsProperties { + latestScan?: boolean; results?: string[][]; } @@ -5622,15 +4855,15 @@ export type RuleSeverity = string; // @public export interface RulesResults { + // (undocumented) + nextLink?: string; value?: RuleResults[]; } // @public export interface RulesResultsInput { latestScan?: boolean; - results?: { - [propertyName: string]: string[][]; - }; + results?: Record; } // @public @@ -5643,15 +4876,13 @@ export type RuleStatus = string; export type RuleType = string; // @public -export interface Scan extends Resource { - properties?: ScanProperties; -} +export type ScanningMode = string; // @public -export type ScanningMode = string; +export type ScanOperationStatus = string; // @public -export interface ScanProperties { +export interface ScanPropertiesV2 { database?: string; endTime?: Date; highSeverityFailedRulesCount?: number; @@ -5670,7 +4901,7 @@ export interface ScanProperties { } // @public -export interface ScanResult extends Resource { +export interface ScanResult extends ExtensionResource { properties?: ScanResultProperties; } @@ -5686,27 +4917,36 @@ export interface ScanResultProperties { } // @public -export interface ScanResults { - value?: ScanResult[]; -} +export type ScanState = string; // @public -export interface Scans { - value?: Scan[]; +export interface ScanSummary { + blobs?: BlobsScanSummary; + estimatedScanCostUSD?: number; + files?: FilesScanSummary; } // @public -export type ScanState = string; +export type ScanTriggerType = string; // @public -export type ScanTriggerType = string; +export interface ScanV2 extends ExtensionResource { + properties?: ScanPropertiesV2; +} // @public export interface ScopeElement { - [property: string]: any; + additionalProperties?: Record; field?: string; } +// @public +export interface ScoreDetails { + readonly current?: number; + readonly max?: number; + readonly percentage?: number; +} + // @public export interface SecureScoreControlDefinitionItem extends Resource { readonly assessmentDefinitions?: AzureResourceLink[]; @@ -5717,45 +4957,28 @@ export interface SecureScoreControlDefinitionItem extends Resource { } // @public -export interface SecureScoreControlDefinitionList { - readonly nextLink?: string; - readonly value?: SecureScoreControlDefinitionItem[]; -} - -// @public -export interface SecureScoreControlDefinitions { - list(options?: SecureScoreControlDefinitionsListOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: SecureScoreControlDefinitionsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; +export interface SecureScoreControlDefinitionItemProperties { + readonly assessmentDefinitions?: AzureResourceLink[]; + readonly description?: string; + readonly displayName?: string; + readonly maxScore?: number; + readonly source?: SecureScoreControlDefinitionSource; } // @public -export interface SecureScoreControlDefinitionsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlDefinitionsListBySubscriptionOptionalParams extends OperationOptions { } // @public -export type SecureScoreControlDefinitionsListBySubscriptionNextResponse = SecureScoreControlDefinitionList; - -// @public -export interface SecureScoreControlDefinitionsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlDefinitionsListOptionalParams extends OperationOptions { } // @public -export type SecureScoreControlDefinitionsListBySubscriptionResponse = SecureScoreControlDefinitionList; - -// @public -export interface SecureScoreControlDefinitionsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlDefinitionsOperations { + list: (options?: SecureScoreControlDefinitionsListOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: SecureScoreControlDefinitionsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type SecureScoreControlDefinitionsListNextResponse = SecureScoreControlDefinitionList; - -// @public -export interface SecureScoreControlDefinitionsListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type SecureScoreControlDefinitionsListResponse = SecureScoreControlDefinitionList; - // @public export interface SecureScoreControlDefinitionSource { sourceType?: ControlType; @@ -5763,68 +4986,53 @@ export interface SecureScoreControlDefinitionSource { // @public export interface SecureScoreControlDetails extends Resource { - readonly current?: number; definition?: SecureScoreControlDefinitionItem; readonly displayName?: string; readonly healthyResourceCount?: number; - readonly max?: number; readonly notApplicableResourceCount?: number; - readonly percentage?: number; + score?: ScoreDetails; readonly unhealthyResourceCount?: number; readonly weight?: number; } // @public -export interface SecureScoreControlList { - readonly nextLink?: string; - readonly value?: SecureScoreControlDetails[]; -} - -// @public -export interface SecureScoreControls { - list(options?: SecureScoreControlsListOptionalParams): PagedAsyncIterableIterator; - listBySecureScore(secureScoreName: string, options?: SecureScoreControlsListBySecureScoreOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface SecureScoreControlScore { +export interface SecureScoreControlScoreDetails { readonly current?: number; + definition?: SecureScoreControlDefinitionItem; + readonly displayName?: string; + readonly healthyResourceCount?: number; readonly max?: number; + readonly notApplicableResourceCount?: number; readonly percentage?: number; + readonly unhealthyResourceCount?: number; + readonly weight?: number; } // @public -export interface SecureScoreControlsListBySecureScoreNextOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlsListBySecureScoreOptionalParams extends OperationOptions { + expand?: ExpandControlsEnum; } // @public -export type SecureScoreControlsListBySecureScoreNextResponse = SecureScoreControlList; - -// @public -export interface SecureScoreControlsListBySecureScoreOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlsListOptionalParams extends OperationOptions { expand?: ExpandControlsEnum; } // @public -export type SecureScoreControlsListBySecureScoreResponse = SecureScoreControlList; - -// @public -export interface SecureScoreControlsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecureScoreControlsOperations { + list: (options?: SecureScoreControlsListOptionalParams) => PagedAsyncIterableIterator; + listBySecureScore: (secureScoreName: string, options?: SecureScoreControlsListBySecureScoreOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SecureScoreControlsListNextResponse = SecureScoreControlList; - -// @public -export interface SecureScoreControlsListOptionalParams extends coreClient.OperationOptions { - expand?: ExpandControlsEnum; +export interface SecureScoreItem extends ProxyResource { + readonly displayName?: string; + readonly score?: ScoreDetails; + readonly weight?: number; } // @public -export type SecureScoreControlsListResponse = SecureScoreControlList; - -// @public -export interface SecureScoreItem extends Resource { +export interface SecureScoreItemProperties { readonly current?: number; readonly displayName?: string; readonly max?: number; @@ -5833,75 +5041,31 @@ export interface SecureScoreItem extends Resource { } // @public -export interface SecureScores { - get(secureScoreName: string, options?: SecureScoresGetOptionalParams): Promise; - list(options?: SecureScoresListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface SecureScoresGetOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type SecureScoresGetResponse = SecureScoreItem; - -// @public -export interface SecureScoresList { - readonly nextLink?: string; - readonly value?: SecureScoreItem[]; +export interface SecureScoresGetOptionalParams extends OperationOptions { } // @public -export interface SecureScoresListNextOptionalParams extends coreClient.OperationOptions { +export interface SecureScoresListOptionalParams extends OperationOptions { } // @public -export type SecureScoresListNextResponse = SecureScoresList; - -// @public -export interface SecureScoresListOptionalParams extends coreClient.OperationOptions { +export interface SecureScoresOperations { + get: (secureScoreName: string, options?: SecureScoresGetOptionalParams) => Promise; + list: (options?: SecureScoresListOptionalParams) => PagedAsyncIterableIterator; } -// @public -export type SecureScoresListResponse = SecureScoresList; - // @public export interface SecurityAssessment extends Resource { - additionalData?: { - [propertyName: string]: string; - }; + additionalData?: Record; readonly displayName?: string; readonly links?: AssessmentLinks; metadata?: SecurityAssessmentMetadataProperties; partnersData?: SecurityAssessmentPartnerData; resourceDetails?: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; status?: AssessmentStatus; } -// @public -export interface SecurityAssessmentList { - readonly nextLink?: string; - readonly value?: SecurityAssessmentResponse[]; -} - -// @public -export interface SecurityAssessmentMetadata extends Resource { - assessmentType?: AssessmentType; - // (undocumented) - categories?: Categories[]; - description?: string; - displayName?: string; - implementationEffort?: ImplementationEffort; - partnerData?: SecurityAssessmentMetadataPartnerData; - readonly policyDefinitionId?: string; - preview?: boolean; - remediationDescription?: string; - severity?: Severity; - // (undocumented) - threats?: Threats[]; - userImpact?: UserImpact; -} - // @public export interface SecurityAssessmentMetadataPartnerData { partnerName: string; @@ -5939,7 +5103,7 @@ export interface SecurityAssessmentMetadataPropertiesResponse extends SecurityAs techniques?: Techniques[]; } -// @public (undocumented) +// @public export interface SecurityAssessmentMetadataPropertiesResponsePublishDates { // (undocumented) ga?: string; @@ -5948,7 +5112,7 @@ export interface SecurityAssessmentMetadataPropertiesResponsePublishDates { } // @public -export interface SecurityAssessmentMetadataResponse extends Resource { +export interface SecurityAssessmentMetadataResponse extends ProxyResource { assessmentType?: AssessmentType; // (undocumented) categories?: Categories[]; @@ -5973,12 +5137,6 @@ export interface SecurityAssessmentMetadataResponse extends Resource { userImpact?: UserImpact; } -// @public -export interface SecurityAssessmentMetadataResponseList { - readonly nextLink?: string; - readonly value?: SecurityAssessmentMetadataResponse[]; -} - // @public export interface SecurityAssessmentPartnerData { partnerName: string; @@ -5992,14 +5150,44 @@ export interface SecurityAssessmentProperties extends SecurityAssessmentProperti // @public export interface SecurityAssessmentPropertiesBase { - additionalData?: { - [propertyName: string]: string; - }; + additionalData?: Record; readonly displayName?: string; readonly links?: AssessmentLinks; metadata?: SecurityAssessmentMetadataProperties; partnersData?: SecurityAssessmentPartnerData; resourceDetails: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRisk { + attackPathsReferences?: string[]; + isContextualRisk?: boolean; + level?: RiskLevel; + // (undocumented) + paths?: SecurityAssessmentPropertiesBaseRiskPathsItem[]; + riskFactors?: string[]; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItem { + edges?: SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[]; + id?: string; + // (undocumented) + nodes?: SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[]; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem { + id: string; + sourceId: string; + targetId: string; +} + +// @public +export interface SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem { + id?: string; + nodePropertiesLabel?: string[]; } // @public @@ -6008,301 +5196,213 @@ export interface SecurityAssessmentPropertiesResponse extends SecurityAssessment } // @public -export interface SecurityAssessmentResponse extends Resource { - additionalData?: { - [propertyName: string]: string; - }; +export interface SecurityAssessmentResponse extends ExtensionResource { + additionalData?: Record; readonly displayName?: string; readonly links?: AssessmentLinks; metadata?: SecurityAssessmentMetadataProperties; partnersData?: SecurityAssessmentPartnerData; resourceDetails?: ResourceDetailsUnion; + risk?: SecurityAssessmentPropertiesBaseRisk; status?: AssessmentStatusResponse; } // @public (undocumented) -export class SecurityCenter extends coreClient.ServiceClient { - // (undocumented) - $host: string; - constructor(credentials: coreAuth.TokenCredential, subscriptionId: string, options?: SecurityCenterOptionalParams); - constructor(credentials: coreAuth.TokenCredential, options?: SecurityCenterOptionalParams); - // (undocumented) - adaptiveApplicationControls: AdaptiveApplicationControls; - // (undocumented) - adaptiveNetworkHardenings: AdaptiveNetworkHardenings; - // (undocumented) - advancedThreatProtection: AdvancedThreatProtection; - // (undocumented) - alerts: Alerts; - // (undocumented) - alertsSuppressionRules: AlertsSuppressionRules; - // (undocumented) - allowedConnections: AllowedConnections; - // (undocumented) - aPICollections: APICollections; - // (undocumented) - applicationOperations: ApplicationOperations; - // (undocumented) - applications: Applications; - // (undocumented) - assessments: Assessments; - // (undocumented) - assessmentsMetadata: AssessmentsMetadata; - // (undocumented) - automations: Automations; - // (undocumented) - autoProvisioningSettings: AutoProvisioningSettings; - // (undocumented) - azureDevOpsOrgs: AzureDevOpsOrgs; - // (undocumented) - azureDevOpsProjects: AzureDevOpsProjects; - // (undocumented) - azureDevOpsRepos: AzureDevOpsRepos; - // (undocumented) - complianceResults: ComplianceResults; - // (undocumented) - compliances: Compliances; - // (undocumented) - connectors: Connectors; - // (undocumented) - customAssessmentAutomations: CustomAssessmentAutomations; - // (undocumented) - customEntityStoreAssignments: CustomEntityStoreAssignments; - // (undocumented) - defenderForStorage: DefenderForStorage; - // (undocumented) - deviceSecurityGroups: DeviceSecurityGroups; - // (undocumented) - devOpsConfigurations: DevOpsConfigurations; - // (undocumented) - devOpsOperationResults: DevOpsOperationResults; - // (undocumented) - discoveredSecuritySolutions: DiscoveredSecuritySolutions; - // (undocumented) - externalSecuritySolutions: ExternalSecuritySolutions; - getSensitivitySettings(options?: GetSensitivitySettingsOptionalParams): Promise; - // (undocumented) - gitHubOwners: GitHubOwners; - // (undocumented) - gitHubRepos: GitHubRepos; - // (undocumented) - gitLabGroups: GitLabGroups; - // (undocumented) - gitLabProjects: GitLabProjects; - // (undocumented) - gitLabSubgroups: GitLabSubgroups; - // (undocumented) - governanceAssignments: GovernanceAssignments; - // (undocumented) - governanceRules: GovernanceRules; - // (undocumented) - healthReports: HealthReports; - // (undocumented) - informationProtectionPolicies: InformationProtectionPolicies; - // (undocumented) - iotSecuritySolution: IotSecuritySolution; - // (undocumented) - iotSecuritySolutionAnalytics: IotSecuritySolutionAnalytics; - // (undocumented) - iotSecuritySolutionsAnalyticsAggregatedAlert: IotSecuritySolutionsAnalyticsAggregatedAlert; - // (undocumented) - iotSecuritySolutionsAnalyticsRecommendation: IotSecuritySolutionsAnalyticsRecommendation; - // (undocumented) - jitNetworkAccessPolicies: JitNetworkAccessPolicies; - // (undocumented) - locations: Locations; - // (undocumented) - mdeOnboardings: MdeOnboardings; - // (undocumented) - operations: Operations; - // (undocumented) - pricings: Pricings; - // (undocumented) - regulatoryComplianceAssessments: RegulatoryComplianceAssessments; - // (undocumented) - regulatoryComplianceControls: RegulatoryComplianceControls; - // (undocumented) - regulatoryComplianceStandards: RegulatoryComplianceStandards; - // (undocumented) - secureScoreControlDefinitions: SecureScoreControlDefinitions; - // (undocumented) - secureScoreControls: SecureScoreControls; - // (undocumented) - secureScores: SecureScores; - // (undocumented) - securityConnectorApplication: SecurityConnectorApplication; - // (undocumented) - securityConnectorApplications: SecurityConnectorApplications; - // (undocumented) - securityConnectors: SecurityConnectors; - // (undocumented) - securityContacts: SecurityContacts; - // (undocumented) - securityOperators: SecurityOperators; - // (undocumented) - securitySolutions: SecuritySolutions; - // (undocumented) - securitySolutionsReferenceDataOperations: SecuritySolutionsReferenceDataOperations; - // (undocumented) - sensitivitySettings: SensitivitySettings; - // (undocumented) - serverVulnerabilityAssessmentOperations: ServerVulnerabilityAssessmentOperations; - // (undocumented) - serverVulnerabilityAssessmentsSettings: ServerVulnerabilityAssessmentsSettings; - // (undocumented) - settings: Settings; - // (undocumented) - softwareInventories: SoftwareInventories; - // (undocumented) - sqlVulnerabilityAssessmentBaselineRules: SqlVulnerabilityAssessmentBaselineRules; - // (undocumented) - sqlVulnerabilityAssessmentScanResults: SqlVulnerabilityAssessmentScanResults; - // (undocumented) - sqlVulnerabilityAssessmentScans: SqlVulnerabilityAssessmentScans; - // (undocumented) - subAssessments: SubAssessments; - // (undocumented) - subscriptionId?: string; - // (undocumented) - tasks: Tasks; - // (undocumented) - topology: Topology; - updateSensitivitySettings(sensitivitySettings: UpdateSensitivitySettingsRequest, options?: UpdateSensitivitySettingsOptionalParams): Promise; - // (undocumented) - workspaceSettings: WorkspaceSettings; +export class SecurityCenter { + constructor(credential: TokenCredential, options?: SecurityCenterOptionalParams); + constructor(credential: TokenCredential, subscriptionId: string, options?: SecurityCenterOptionalParams); + readonly advancedThreatProtection: AdvancedThreatProtectionOperations; + readonly alerts: AlertsOperations; + readonly alertsSuppressionRules: AlertsSuppressionRulesOperations; + readonly allowedConnections: AllowedConnectionsOperations; + readonly apiCollections: APICollectionsOperations; + readonly application: ApplicationOperations; + readonly applications: ApplicationsOperations; + readonly assessments: AssessmentsOperations; + readonly assessmentsMetadata: AssessmentsMetadataOperations; + readonly assignments: AssignmentsOperations; + readonly automations: AutomationsOperations; + readonly autoProvisioningSettings: AutoProvisioningSettingsOperations; + readonly azureDevOpsOrgs: AzureDevOpsOrgsOperations; + readonly azureDevOpsProjects: AzureDevOpsProjectsOperations; + readonly azureDevOpsRepos: AzureDevOpsReposOperations; + readonly complianceResults: ComplianceResultsOperations; + readonly compliances: CompliancesOperations; + readonly customRecommendations: CustomRecommendationsOperations; + readonly defenderForStorage: DefenderForStorageOperations; + readonly deviceSecurityGroups: DeviceSecurityGroupsOperations; + readonly devOpsConfigurations: DevOpsConfigurationsOperations; + readonly devOpsOperationResults: DevOpsOperationResultsOperations; + readonly discoveredSecuritySolutions: DiscoveredSecuritySolutionsOperations; + readonly externalSecuritySolutions: ExternalSecuritySolutionsOperations; + readonly gitHubIssues: GitHubIssuesOperations; + readonly gitHubOwners: GitHubOwnersOperations; + readonly gitHubRepos: GitHubReposOperations; + readonly gitLabGroups: GitLabGroupsOperations; + readonly gitLabProjects: GitLabProjectsOperations; + readonly gitLabSubgroups: GitLabSubgroupsOperations; + readonly governanceAssignments: GovernanceAssignmentsOperations; + readonly governanceRules: GovernanceRulesOperations; + readonly healthReports: HealthReportsOperations; + readonly informationProtectionPolicies: InformationProtectionPoliciesOperations; + readonly iotSecuritySolution: IotSecuritySolutionOperations; + readonly iotSecuritySolutionAnalytics: IotSecuritySolutionAnalyticsOperations; + readonly iotSecuritySolutionsAnalyticsAggregatedAlert: IotSecuritySolutionsAnalyticsAggregatedAlertOperations; + readonly iotSecuritySolutionsAnalyticsRecommendation: IotSecuritySolutionsAnalyticsRecommendationOperations; + readonly jitNetworkAccessPolicies: JitNetworkAccessPoliciesOperations; + readonly locations: LocationsOperations; + readonly mdeOnboardings: MdeOnboardingsOperations; + readonly operationResults: OperationResultsOperations; + readonly operations: OperationsOperations; + readonly operationStatuses: OperationStatusesOperations; + readonly pipeline: Pipeline; + readonly pricings: PricingsOperations; + readonly privateEndpointConnections: PrivateEndpointConnectionsOperations; + readonly privateLinkResources: PrivateLinkResourcesOperations; + readonly privateLinks: PrivateLinksOperations; + readonly regulatoryComplianceAssessments: RegulatoryComplianceAssessmentsOperations; + readonly regulatoryComplianceControls: RegulatoryComplianceControlsOperations; + readonly regulatoryComplianceStandards: RegulatoryComplianceStandardsOperations; + readonly secureScoreControlDefinitions: SecureScoreControlDefinitionsOperations; + readonly secureScoreControls: SecureScoreControlsOperations; + readonly secureScores: SecureScoresOperations; + readonly securityConnectorApplication: SecurityConnectorApplicationOperations; + readonly securityConnectorApplications: SecurityConnectorApplicationsOperations; + readonly securityConnectors: SecurityConnectorsOperations; + readonly securityContacts: SecurityContactsOperations; + readonly securityOperators: SecurityOperatorsOperations; + readonly securitySolutions: SecuritySolutionsOperations; + readonly securitySolutionsReferenceData: SecuritySolutionsReferenceDataOperations; + readonly securityStandards: SecurityStandardsOperations; + readonly sensitivitySettings: SensitivitySettingsOperations; + readonly serverVulnerabilityAssessment: ServerVulnerabilityAssessmentOperations; + readonly serverVulnerabilityAssessmentsSettings: ServerVulnerabilityAssessmentsSettingsOperations; + readonly settings: SettingsOperations; + readonly sqlVulnerabilityAssessmentBaselineRules: SqlVulnerabilityAssessmentBaselineRulesOperations; + readonly sqlVulnerabilityAssessmentScanResults: SqlVulnerabilityAssessmentScanResultsOperations; + readonly sqlVulnerabilityAssessmentScans: SqlVulnerabilityAssessmentScansOperations; + readonly sqlVulnerabilityAssessmentSettings: SqlVulnerabilityAssessmentSettingsOperations; + readonly standardAssignments: StandardAssignmentsOperations; + readonly standards: StandardsOperations; + readonly subAssessments: SubAssessmentsOperations; + readonly tasks: TasksOperations; + readonly topology: TopologyOperations; + readonly workspaceSettings: WorkspaceSettingsOperations; +} + +// @public +export interface SecurityCenterOptionalParams extends ClientOptions { + cloudSetting?: AzureSupportedClouds; +} + +// @public +export interface SecurityCenterResourceDetails { + readonly connectorId?: string; + readonly id?: string; + source?: Source; } // @public -export interface SecurityCenterOptionalParams extends coreClient.ServiceClientOptions { - $host?: string; - endpoint?: string; -} +export type SecurityCenterStatus = string; // @public -export interface SecurityConnector extends TrackedResource { +export interface SecurityConnector extends ProxyResource { environmentData?: EnvironmentDataUnion; environmentName?: CloudName; + etag?: string; hierarchyIdentifier?: string; readonly hierarchyIdentifierTrialEndDate?: Date; + kind?: string; + location?: string; offerings?: CloudOfferingUnion[]; - readonly systemData?: SystemData; + tags?: Record; } // @public -export interface SecurityConnectorApplication { - createOrUpdate(resourceGroupName: string, securityConnectorName: string, applicationId: string, application: Application, options?: SecurityConnectorApplicationCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, securityConnectorName: string, applicationId: string, options?: SecurityConnectorApplicationDeleteOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, applicationId: string, options?: SecurityConnectorApplicationGetOptionalParams): Promise; +export interface SecurityConnectorApplicationCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface SecurityConnectorApplicationCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorApplicationDeleteOptionalParams extends OperationOptions { } // @public -export type SecurityConnectorApplicationCreateOrUpdateResponse = Application; - -// @public -export interface SecurityConnectorApplicationDeleteOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorApplicationGetOptionalParams extends OperationOptions { } // @public -export interface SecurityConnectorApplicationGetOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorApplicationOperations { + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, applicationId: string, application: Application, options?: SecurityConnectorApplicationCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, securityConnectorName: string, applicationId: string, options?: SecurityConnectorApplicationDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, securityConnectorName: string, applicationId: string, options?: SecurityConnectorApplicationGetOptionalParams) => Promise; } // @public -export type SecurityConnectorApplicationGetResponse = Application; - -// @public -export interface SecurityConnectorApplications { - list(resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorApplicationsListOptionalParams): PagedAsyncIterableIterator; +export interface SecurityConnectorApplicationsListOptionalParams extends OperationOptions { } // @public -export interface SecurityConnectorApplicationsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorApplicationsOperations { + list: (resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorApplicationsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SecurityConnectorApplicationsListNextResponse = ApplicationsList; - -// @public -export interface SecurityConnectorApplicationsListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type SecurityConnectorApplicationsListResponse = ApplicationsList; - -// @public -export interface SecurityConnectors { - createOrUpdate(resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsCreateOrUpdateOptionalParams): Promise; - delete(resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsDeleteOptionalParams): Promise; - get(resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsGetOptionalParams): Promise; - list(options?: SecurityConnectorsListOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, options?: SecurityConnectorsListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - update(resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsUpdateOptionalParams): Promise; -} - -// @public -export interface SecurityConnectorsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorProperties { + environmentData?: EnvironmentDataUnion; + environmentName?: CloudName; + hierarchyIdentifier?: string; + readonly hierarchyIdentifierTrialEndDate?: Date; + offerings?: CloudOfferingUnion[]; } // @public -export type SecurityConnectorsCreateOrUpdateResponse = SecurityConnector; - -// @public -export interface SecurityConnectorsDeleteOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface SecurityConnectorsGetOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsDeleteOptionalParams extends OperationOptions { } // @public -export type SecurityConnectorsGetResponse = SecurityConnector; - -// @public -export interface SecurityConnectorsList { - readonly nextLink?: string; - value: SecurityConnector[]; +export interface SecurityConnectorsGetOptionalParams extends OperationOptions { } // @public -export interface SecurityConnectorsListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsListByResourceGroupOptionalParams extends OperationOptions { } // @public -export type SecurityConnectorsListByResourceGroupNextResponse = SecurityConnectorsList; - -// @public -export interface SecurityConnectorsListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsListOptionalParams extends OperationOptions { } // @public -export type SecurityConnectorsListByResourceGroupResponse = SecurityConnectorsList; - -// @public -export interface SecurityConnectorsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsOperations { + createOrUpdate: (resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, securityConnectorName: string, options?: SecurityConnectorsGetOptionalParams) => Promise; + list: (options?: SecurityConnectorsListOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, options?: SecurityConnectorsListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + update: (resourceGroupName: string, securityConnectorName: string, securityConnector: SecurityConnector, options?: SecurityConnectorsUpdateOptionalParams) => Promise; } // @public -export type SecurityConnectorsListNextResponse = SecurityConnectorsList; - -// @public -export interface SecurityConnectorsListOptionalParams extends coreClient.OperationOptions { +export interface SecurityConnectorsUpdateOptionalParams extends OperationOptions { } // @public -export type SecurityConnectorsListResponse = SecurityConnectorsList; - -// @public -export interface SecurityConnectorsUpdateOptionalParams extends coreClient.OperationOptions { +export interface SecurityContact extends ProxyResource { + emails?: string; + isEnabled?: boolean; + notificationsByRole?: SecurityContactPropertiesNotificationsByRole; + notificationsSources?: NotificationsSourceUnion[]; + phone?: string; } // @public -export type SecurityConnectorsUpdateResponse = SecurityConnector; +export type SecurityContactName = string; // @public -export interface SecurityContact extends Resource { +export interface SecurityContactProperties { emails?: string; isEnabled?: boolean; notificationsByRole?: SecurityContactPropertiesNotificationsByRole; @@ -6310,15 +5410,6 @@ export interface SecurityContact extends Resource { phone?: string; } -// @public -export interface SecurityContactList { - readonly nextLink?: string; - value: SecurityContact[]; -} - -// @public -export type SecurityContactName = string; - // @public export interface SecurityContactPropertiesNotificationsByRole { roles?: SecurityContactRole[]; @@ -6329,135 +5420,133 @@ export interface SecurityContactPropertiesNotificationsByRole { export type SecurityContactRole = string; // @public -export interface SecurityContacts { - create(securityContactName: SecurityContactName, securityContact: SecurityContact, options?: SecurityContactsCreateOptionalParams): Promise; - delete(securityContactName: SecurityContactName, options?: SecurityContactsDeleteOptionalParams): Promise; - get(securityContactName: SecurityContactName, options?: SecurityContactsGetOptionalParams): Promise; - list(options?: SecurityContactsListOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface SecurityContactsCreateOptionalParams extends coreClient.OperationOptions { +export interface SecurityContactsCreateOptionalParams extends OperationOptions { } // @public -export type SecurityContactsCreateResponse = SecurityContact; - -// @public -export interface SecurityContactsDeleteOptionalParams extends coreClient.OperationOptions { +export interface SecurityContactsDeleteOptionalParams extends OperationOptions { } // @public -export interface SecurityContactsGetOptionalParams extends coreClient.OperationOptions { +export interface SecurityContactsGetOptionalParams extends OperationOptions { } // @public -export type SecurityContactsGetResponse = SecurityContact; - -// @public -export interface SecurityContactsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecurityContactsListOptionalParams extends OperationOptions { } // @public -export type SecurityContactsListNextResponse = SecurityContactList; - -// @public -export interface SecurityContactsListOptionalParams extends coreClient.OperationOptions { +export interface SecurityContactsOperations { + create: (securityContactName: SecurityContactName, securityContact: SecurityContact, options?: SecurityContactsCreateOptionalParams) => Promise; + delete: (securityContactName: SecurityContactName, options?: SecurityContactsDeleteOptionalParams) => Promise; + get: (securityContactName: SecurityContactName, options?: SecurityContactsGetOptionalParams) => Promise; + list: (options?: SecurityContactsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SecurityContactsListResponse = SecurityContactList; +export type SecurityFamily = string; // @public -export type SecurityFamily = string; +export type SecurityIssue = string; // @public -export interface SecurityOperator extends Resource { +export interface SecurityOperator extends ProxyResource { identity?: Identity; } // @public -export interface SecurityOperatorList { - value: SecurityOperator[]; +export interface SecurityOperatorsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface SecurityOperators { - createOrUpdate(pricingName: string, securityOperatorName: string, options?: SecurityOperatorsCreateOrUpdateOptionalParams): Promise; - delete(pricingName: string, securityOperatorName: string, options?: SecurityOperatorsDeleteOptionalParams): Promise; - get(pricingName: string, securityOperatorName: string, options?: SecurityOperatorsGetOptionalParams): Promise; - list(pricingName: string, options?: SecurityOperatorsListOptionalParams): Promise; +export interface SecurityOperatorsDeleteOptionalParams extends OperationOptions { } // @public -export interface SecurityOperatorsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface SecurityOperatorsGetOptionalParams extends OperationOptions { } // @public -export type SecurityOperatorsCreateOrUpdateResponse = SecurityOperator; - -// @public -export interface SecurityOperatorsDeleteOptionalParams extends coreClient.OperationOptions { +export interface SecurityOperatorsListOptionalParams extends OperationOptions { } // @public -export interface SecurityOperatorsGetOptionalParams extends coreClient.OperationOptions { +export interface SecurityOperatorsOperations { + createOrUpdate: (pricingName: string, securityOperatorName: string, options?: SecurityOperatorsCreateOrUpdateOptionalParams) => Promise; + delete: (pricingName: string, securityOperatorName: string, options?: SecurityOperatorsDeleteOptionalParams) => Promise; + get: (pricingName: string, securityOperatorName: string, options?: SecurityOperatorsGetOptionalParams) => Promise; + list: (pricingName: string, options?: SecurityOperatorsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SecurityOperatorsGetResponse = SecurityOperator; - -// @public -export interface SecurityOperatorsListOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type SecurityOperatorsListResponse = SecurityOperatorList; - -// @public (undocumented) -export interface SecuritySolution extends Resource, Location { +export interface SecuritySolution extends ProxyResource { + readonly location: string; protectionStatus?: string; provisioningState?: ProvisioningState; securityFamily?: SecurityFamily; template?: string; } -// @public (undocumented) -export interface SecuritySolutionList { - readonly nextLink?: string; - // (undocumented) - value?: SecuritySolution[]; +// @public +export interface SecuritySolutionProperties { + protectionStatus: string; + provisioningState: ProvisioningState; + securityFamily: SecurityFamily; + template: string; +} + +// @public +export interface SecuritySolutionsGetOptionalParams extends OperationOptions { } // @public -export interface SecuritySolutions { - get(resourceGroupName: string, ascLocation: string, securitySolutionName: string, options?: SecuritySolutionsGetOptionalParams): Promise; - list(options?: SecuritySolutionsListOptionalParams): PagedAsyncIterableIterator; +export interface SecuritySolutionsListOptionalParams extends OperationOptions { } // @public -export interface SecuritySolutionsGetOptionalParams extends coreClient.OperationOptions { +export interface SecuritySolutionsOperations { + get: (resourceGroupName: string, ascLocation: string, securitySolutionName: string, options?: SecuritySolutionsGetOptionalParams) => Promise; + list: (options?: SecuritySolutionsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SecuritySolutionsGetResponse = SecuritySolution; +export interface SecuritySolutionsReferenceData { + alertVendorName: string; + readonly id?: string; + readonly location?: string; + readonly name?: string; + packageInfoUrl: string; + productName: string; + publisher: string; + publisherDisplayName: string; + securityFamily: SecurityFamily; + readonly systemData?: SystemData; + template: string; + readonly type?: string; +} // @public -export interface SecuritySolutionsListNextOptionalParams extends coreClient.OperationOptions { +export interface SecuritySolutionsReferenceDataList { + // (undocumented) + value?: SecuritySolutionsReferenceData[]; } // @public -export type SecuritySolutionsListNextResponse = SecuritySolutionList; +export interface SecuritySolutionsReferenceDataListByHomeRegionOptionalParams extends OperationOptions { +} // @public -export interface SecuritySolutionsListOptionalParams extends coreClient.OperationOptions { +export interface SecuritySolutionsReferenceDataListOptionalParams extends OperationOptions { } // @public -export type SecuritySolutionsListResponse = SecuritySolutionList; +export interface SecuritySolutionsReferenceDataOperations { + list: (options?: SecuritySolutionsReferenceDataListOptionalParams) => Promise; + listByHomeRegion: (ascLocation: string, options?: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams) => Promise; +} -// @public (undocumented) -export interface SecuritySolutionsReferenceData extends Resource, Location { +// @public +export interface SecuritySolutionsReferenceDataProperties { alertVendorName: string; packageInfoUrl: string; productName: string; @@ -6467,37 +5556,57 @@ export interface SecuritySolutionsReferenceData extends Resource, Location { template: string; } -// @public (undocumented) -export interface SecuritySolutionsReferenceDataList { - // (undocumented) - value?: SecuritySolutionsReferenceData[]; +// @public +export type SecuritySolutionStatus = string; + +// @public +export interface SecurityStandard extends ExtensionResource { + assessments?: PartialAssessmentProperties[]; + cloudProviders?: StandardSupportedCloud[]; + description?: string; + displayName?: string; + metadata?: StandardMetadata; + policySetDefinitionId?: string; + readonly standardType?: StandardType; } // @public -export interface SecuritySolutionsReferenceDataListByHomeRegionOptionalParams extends coreClient.OperationOptions { +export interface SecurityStandardProperties { + assessments?: PartialAssessmentProperties[]; + cloudProviders?: StandardSupportedCloud[]; + description?: string; + displayName?: string; + metadata?: StandardMetadata; + policySetDefinitionId?: string; + readonly standardType?: StandardType; } // @public -export type SecuritySolutionsReferenceDataListByHomeRegionResponse = SecuritySolutionsReferenceDataList; +export interface SecurityStandardsCreateOrUpdateOptionalParams extends OperationOptions { +} // @public -export interface SecuritySolutionsReferenceDataListOptionalParams extends coreClient.OperationOptions { +export interface SecurityStandardsDeleteOptionalParams extends OperationOptions { } // @public -export type SecuritySolutionsReferenceDataListResponse = SecuritySolutionsReferenceDataList; +export interface SecurityStandardsGetOptionalParams extends OperationOptions { +} // @public -export interface SecuritySolutionsReferenceDataOperations { - list(options?: SecuritySolutionsReferenceDataListOptionalParams): Promise; - listByHomeRegion(ascLocation: string, options?: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams): Promise; +export interface SecurityStandardsListOptionalParams extends OperationOptions { } // @public -export type SecuritySolutionStatus = string; +export interface SecurityStandardsOperations { + createOrUpdate: (scope: string, standardId: string, standard: SecurityStandard, options?: SecurityStandardsCreateOrUpdateOptionalParams) => Promise; + delete: (scope: string, standardId: string, options?: SecurityStandardsDeleteOptionalParams) => Promise; + get: (scope: string, standardId: string, options?: SecurityStandardsGetOptionalParams) => Promise; + list: (scope: string, options?: SecurityStandardsListOptionalParams) => PagedAsyncIterableIterator; +} // @public -export interface SecuritySubAssessment extends Resource { +export interface SecuritySubAssessment extends ExtensionResource { additionalData?: AdditionalDataUnion; readonly category?: string; readonly description?: string; @@ -6511,13 +5620,21 @@ export interface SecuritySubAssessment extends Resource { } // @public -export interface SecuritySubAssessmentList { - readonly nextLink?: string; - readonly value?: SecuritySubAssessment[]; +export interface SecuritySubAssessmentProperties { + additionalData?: AdditionalDataUnion; + readonly category?: string; + readonly description?: string; + readonly displayName?: string; + readonly id?: string; + readonly impact?: string; + readonly remediation?: string; + resourceDetails?: ResourceDetailsUnion; + status?: SubAssessmentStatus; + readonly timeGenerated?: Date; } // @public -export interface SecurityTask extends Resource { +export interface SecurityTask extends ProxyResource { readonly creationTimeUtc?: Date; readonly lastStateChangeTimeUtc?: Date; securityTaskParameters?: SecurityTaskParameters; @@ -6526,15 +5643,24 @@ export interface SecurityTask extends Resource { } // @public -export interface SecurityTaskList { - readonly nextLink?: string; - readonly value?: SecurityTask[]; +export interface SecurityTaskParameters { + additionalProperties?: Record; + readonly name?: string; } // @public -export interface SecurityTaskParameters { - [property: string]: any; - readonly name?: string; +export interface SecurityTaskProperties { + readonly creationTimeUtc?: Date; + readonly lastStateChangeTimeUtc?: Date; + securityTaskParameters?: SecurityTaskParameters; + readonly state?: string; + readonly subState?: string; +} + +// @public +export interface SensitiveDataDiscoveryProperties { + isEnabled?: boolean; + readonly operationStatus?: OperationStatus; } // @public @@ -6547,61 +5673,71 @@ export interface SensitivityLabel { } // @public -export interface SensitivitySettings { - list(options?: SensitivitySettingsListOptionalParams): Promise; +export interface SensitivitySettingsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface SensitivitySettingsListOptionalParams extends coreClient.OperationOptions { +export interface SensitivitySettingsGetOptionalParams extends OperationOptions { } // @public -export type SensitivitySettingsListResponse = GetSensitivitySettingsListResponse; +export interface SensitivitySettingsListOptionalParams extends OperationOptions { +} // @public -export interface ServerVulnerabilityAssessment extends Resource { - readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; +export interface SensitivitySettingsOperations { + createOrUpdate: (sensitivitySettings: UpdateSensitivitySettingsRequest, options?: SensitivitySettingsCreateOrUpdateOptionalParams) => Promise; + get: (options?: SensitivitySettingsGetOptionalParams) => Promise; + list: (options?: SensitivitySettingsListOptionalParams) => Promise; } // @public -export interface ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessment extends ProxyResource { + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; } // @public -export type ServerVulnerabilityAssessmentCreateOrUpdateResponse = ServerVulnerabilityAssessment; +export interface ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams extends OperationOptions { +} // @public -export interface ServerVulnerabilityAssessmentDeleteOptionalParams extends coreClient.OperationOptions { - resumeFrom?: string; +export interface ServerVulnerabilityAssessmentDeleteOptionalParams extends OperationOptions { updateIntervalInMs?: number; } // @public -export interface ServerVulnerabilityAssessmentGetOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentGetOptionalParams extends OperationOptions { } // @public -export type ServerVulnerabilityAssessmentGetResponse = ServerVulnerabilityAssessment; - -// @public -export interface ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams extends OperationOptions { } // @public -export type ServerVulnerabilityAssessmentListByExtendedResourceResponse = ServerVulnerabilityAssessmentsList; +export interface ServerVulnerabilityAssessmentOperations { + // @deprecated (undocumented) + beginDelete: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams) => Promise, void>>; + // @deprecated (undocumented) + beginDeleteAndWait: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams) => Promise; + createOrUpdate: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams) => PollerLike, void>; + get: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentGetOptionalParams) => Promise; + listByExtendedResource: (resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams) => Promise; +} // @public -export interface ServerVulnerabilityAssessmentOperations { - beginDelete(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams): Promise, void>>; - beginDeleteAndWait(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentDeleteOptionalParams): Promise; - createOrUpdate(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams): Promise; - get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentGetOptionalParams): Promise; - listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams): Promise; +export interface ServerVulnerabilityAssessmentProperties { + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; } // @public export type ServerVulnerabilityAssessmentPropertiesProvisioningState = string; +// @public +export interface ServerVulnerabilityAssessmentsAzureSettingProperties { + selectedProvider: ServerVulnerabilityAssessmentsAzureSettingSelectedProvider; +} + // @public export type ServerVulnerabilityAssessmentsAzureSettingSelectedProvider = string; @@ -6612,8 +5748,9 @@ export interface ServerVulnerabilityAssessmentsList { } // @public -export interface ServerVulnerabilityAssessmentsSetting extends ResourceAutoGenerated2 { +export interface ServerVulnerabilityAssessmentsSetting extends ProxyResource { kind: ServerVulnerabilityAssessmentsSettingKind; + properties?: Record; } // @public @@ -6623,77 +5760,49 @@ export type ServerVulnerabilityAssessmentsSettingKind = string; export type ServerVulnerabilityAssessmentsSettingKindName = string; // @public -export interface ServerVulnerabilityAssessmentsSettings { - createOrUpdate(settingKind: ServerVulnerabilityAssessmentsSettingKindName, serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, options?: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams): Promise; - delete(settingKind: ServerVulnerabilityAssessmentsSettingKindName, options?: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams): Promise; - get(settingKind: ServerVulnerabilityAssessmentsSettingKindName, options?: ServerVulnerabilityAssessmentsSettingsGetOptionalParams): Promise; - listBySubscription(options?: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type ServerVulnerabilityAssessmentsSettingsCreateOrUpdateResponse = ServerVulnerabilityAssessmentsSettingUnion; - -// @public -export interface ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams extends OperationOptions { } // @public -export interface ServerVulnerabilityAssessmentsSettingsGetOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams extends OperationOptions { } // @public -export type ServerVulnerabilityAssessmentsSettingsGetResponse = ServerVulnerabilityAssessmentsSettingUnion; - -// @public -export interface ServerVulnerabilityAssessmentsSettingsList { - readonly nextLink?: string; - readonly value?: ServerVulnerabilityAssessmentsSettingUnion[]; +export interface ServerVulnerabilityAssessmentsSettingsGetOptionalParams extends OperationOptions { } // @public -export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams extends OperationOptions { } // @public -export type ServerVulnerabilityAssessmentsSettingsListBySubscriptionNextResponse = ServerVulnerabilityAssessmentsSettingsList; - -// @public -export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface ServerVulnerabilityAssessmentsSettingsOperations { + createOrUpdate: (settingKind: ServerVulnerabilityAssessmentsSettingKindName, serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, options?: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams) => Promise; + delete: (settingKind: ServerVulnerabilityAssessmentsSettingKindName, options?: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams) => Promise; + get: (settingKind: ServerVulnerabilityAssessmentsSettingKindName, options?: ServerVulnerabilityAssessmentsSettingsGetOptionalParams) => Promise; + listBySubscription: (options?: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type ServerVulnerabilityAssessmentsSettingsListBySubscriptionResponse = ServerVulnerabilityAssessmentsSettingsList; - -// @public (undocumented) -export type ServerVulnerabilityAssessmentsSettingUnion = ServerVulnerabilityAssessmentsSetting | AzureServersSetting; +export type ServerVulnerabilityAssessmentsSettingUnion = AzureServersSetting | ServerVulnerabilityAssessmentsSetting; // @public export interface ServerVulnerabilityProperties extends AdditionalData { assessedResourceType: "ServerVulnerabilityAssessment"; readonly cve?: Cve[]; - readonly cvss?: { - [propertyName: string]: Cvss; - }; + readonly cvss?: Record; readonly patchable?: boolean; readonly publishedTime?: Date; readonly threat?: string; readonly type?: string; + // (undocumented) readonly vendorReferences?: VendorReference[]; } // @public -export interface ServicePrincipalProperties { - applicationId?: string; - secret?: string; -} - -// @public -export interface Setting extends Resource { +export interface Setting extends ProxyResource { kind: SettingKind; + properties?: Record; } // @public @@ -6703,281 +5812,386 @@ export type SettingKind = string; export type SettingName = string; // @public -export type SettingNameAutoGenerated = string; - -// @public -export interface Settings { - get(settingName: SettingNameAutoGenerated, options?: SettingsGetOptionalParams): Promise; - list(options?: SettingsListOptionalParams): PagedAsyncIterableIterator; - update(settingName: SettingNameAutoGenerated, setting: SettingUnion, options?: SettingsUpdateOptionalParams): Promise; +export interface SettingsGetOptionalParams extends OperationOptions { } // @public -export interface SettingsGetOptionalParams extends coreClient.OperationOptions { +export interface SettingsListOptionalParams extends OperationOptions { } // @public -export type SettingsGetResponse = SettingUnion; - -// @public -export interface SettingsList { - readonly nextLink?: string; - value?: SettingUnion[]; +export interface SettingsOperations { + get: (settingName: SettingName, options?: SettingsGetOptionalParams) => Promise; + list: (options?: SettingsListOptionalParams) => PagedAsyncIterableIterator; + update: (settingName: SettingName, setting: SettingUnion, options?: SettingsUpdateOptionalParams) => Promise; } // @public -export interface SettingsListNextOptionalParams extends coreClient.OperationOptions { +export interface SettingsUpdateOptionalParams extends OperationOptions { } // @public -export type SettingsListNextResponse = SettingsList; +export type SettingUnion = DataExportSettings | AlertSyncSettings | Setting; // @public -export interface SettingsListOptionalParams extends coreClient.OperationOptions { -} +export type Severity = string; // @public -export type SettingsListResponse = SettingsList; +export type SeverityEnum = string; // @public -export interface SettingsUpdateOptionalParams extends coreClient.OperationOptions { +export interface SimplePollerLike, TResult> { + getOperationState(): TState; + getResult(): TResult | undefined; + isDone(): boolean; + // @deprecated + isStopped(): boolean; + onProgress(callback: (state: TState) => void): CancelOnProgress; + poll(options?: { + abortSignal?: AbortSignalLike; + }): Promise; + pollUntilDone(pollOptions?: { + abortSignal?: AbortSignalLike; + }): Promise; + serialize(): Promise; + // @deprecated + stopPolling(): void; + submitted(): Promise; + // @deprecated + toString(): string; } // @public -export type SettingsUpdateResponse = SettingUnion; - -// @public (undocumented) -export type SettingUnion = Setting | DataExportSettings | AlertSyncSettings; +export type Source = string; // @public -export type Severity = string; +export type SourceType = string; // @public -export type SeverityEnum = string; +export interface SqlServerVulnerabilityProperties extends AdditionalData { + assessedResourceType: "SqlServerVulnerability"; + readonly query?: string; + readonly type?: string; +} // @public -export interface Software extends Resource { - deviceId?: string; - endOfSupportDate?: string; - endOfSupportStatus?: EndOfSupportStatus; - firstSeenAt?: string; - numberOfKnownVulnerabilities?: number; - osPlatform?: string; - softwareName?: string; - vendor?: string; - version?: string; +export interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams extends OperationOptions { + body?: RulesResultsInput; + databaseName?: string; } // @public -export interface SoftwareInventories { - get(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, softwareName: string, options?: SoftwareInventoriesGetOptionalParams): Promise; - listByExtendedResource(resourceGroupName: string, resourceNamespace: string, resourceType: string, resourceName: string, options?: SoftwareInventoriesListByExtendedResourceOptionalParams): PagedAsyncIterableIterator; - listBySubscription(options?: SoftwareInventoriesListBySubscriptionOptionalParams): PagedAsyncIterableIterator; +export interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams extends OperationOptions { + body?: RuleResultsInput; + databaseName?: string; } // @public -export interface SoftwareInventoriesGetOptionalParams extends coreClient.OperationOptions { +export interface SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams extends OperationOptions { + databaseName?: string; } // @public -export type SoftwareInventoriesGetResponse = Software; +export interface SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams extends OperationOptions { + databaseName?: string; +} // @public -export interface SoftwareInventoriesListByExtendedResourceNextOptionalParams extends coreClient.OperationOptions { +export interface SqlVulnerabilityAssessmentBaselineRulesListOptionalParams extends OperationOptions { + databaseName?: string; } // @public -export type SoftwareInventoriesListByExtendedResourceNextResponse = SoftwaresList; +export interface SqlVulnerabilityAssessmentBaselineRulesOperations { + add: (resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams) => Promise; + createOrUpdate: (resourceId: string, ruleId: string, options?: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams) => Promise; + delete: (resourceId: string, ruleId: string, options?: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams) => Promise; + get: (resourceId: string, ruleId: string, options?: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams) => Promise; + list: (resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams) => PagedAsyncIterableIterator; +} // @public -export interface SoftwareInventoriesListByExtendedResourceOptionalParams extends coreClient.OperationOptions { +export interface SqlVulnerabilityAssessmentScanOperationResult extends Resource { + properties?: SqlVulnerabilityAssessmentScanOperationResultProperties; } // @public -export type SoftwareInventoriesListByExtendedResourceResponse = SoftwaresList; +export interface SqlVulnerabilityAssessmentScanOperationResultProperties { + operationId?: string; + scanStatus?: ScanOperationStatus; +} // @public -export interface SoftwareInventoriesListBySubscriptionNextOptionalParams extends coreClient.OperationOptions { +export interface SqlVulnerabilityAssessmentScanResultsGetOptionalParams extends OperationOptions { + // (undocumented) + databaseName?: string; } // @public -export type SoftwareInventoriesListBySubscriptionNextResponse = SoftwaresList; +export interface SqlVulnerabilityAssessmentScanResultsListOptionalParams extends OperationOptions { + // (undocumented) + databaseName?: string; +} // @public -export interface SoftwareInventoriesListBySubscriptionOptionalParams extends coreClient.OperationOptions { +export interface SqlVulnerabilityAssessmentScanResultsOperations { + get: (scanId: string, scanResultId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsGetOptionalParams) => Promise; + list: (scanId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SoftwareInventoriesListBySubscriptionResponse = SoftwaresList; +export interface SqlVulnerabilityAssessmentScansGetOptionalParams extends OperationOptions { + // (undocumented) + databaseName?: string; +} // @public -export interface SoftwaresList { - readonly nextLink?: string; +export interface SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams extends OperationOptions { // (undocumented) - value?: Software[]; + databaseName?: string; } // @public -export type Source = string; +export interface SqlVulnerabilityAssessmentScansInitiateScanOptionalParams extends OperationOptions { + // (undocumented) + databaseName?: string; + updateIntervalInMs?: number; +} // @public -export type SourceSystem = string; +export interface SqlVulnerabilityAssessmentScansListOptionalParams extends OperationOptions { + databaseName?: string; +} // @public -export type SourceType = string; +export interface SqlVulnerabilityAssessmentScansOperations { + // @deprecated (undocumented) + beginInitiateScan: (resourceId: string, options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams) => Promise, SqlVulnerabilityAssessmentScanOperationResult>>; + // @deprecated (undocumented) + beginInitiateScanAndWait: (resourceId: string, options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams) => Promise; + get: (scanId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScansGetOptionalParams) => Promise; + getScanOperationResult: (resourceId: string, operationId: string, options?: SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams) => Promise; + initiateScan: (resourceId: string, options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams) => PollerLike, SqlVulnerabilityAssessmentScanOperationResult>; + list: (resourceId: string, options?: SqlVulnerabilityAssessmentScansListOptionalParams) => PagedAsyncIterableIterator; +} // @public -export interface SqlServerVulnerabilityProperties extends AdditionalData { - assessedResourceType: "SqlServerVulnerability"; - readonly query?: string; - readonly type?: string; +export interface SqlVulnerabilityAssessmentSettings extends ExtensionResource { + properties?: SqlVulnerabilityAssessmentSettingsProperties; } // @public -export interface SqlVulnerabilityAssessmentBaselineRules { - add(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams): Promise; - createOrUpdate(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams): Promise; - delete(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams): Promise; - get(ruleId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams): Promise; - list(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams): Promise; +export interface SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams extends OperationOptions { + body?: SqlVulnerabilityAssessmentSettings; } // @public -export interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams extends coreClient.OperationOptions { - body?: RulesResultsInput; +export interface SqlVulnerabilityAssessmentSettingsDeleteOptionalParams extends OperationOptions { } // @public -export type SqlVulnerabilityAssessmentBaselineRulesAddResponse = RulesResults; +export interface SqlVulnerabilityAssessmentSettingsGetOptionalParams extends OperationOptions { +} // @public -export interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams extends coreClient.OperationOptions { - body?: RuleResultsInput; +export interface SqlVulnerabilityAssessmentSettingsOperations { + createOrUpdate: (resourceId: string, options?: SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceId: string, options?: SqlVulnerabilityAssessmentSettingsDeleteOptionalParams) => Promise; + get: (resourceId: string, options?: SqlVulnerabilityAssessmentSettingsGetOptionalParams) => Promise; } // @public -export type SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateResponse = RuleResults; +export interface SqlVulnerabilityAssessmentSettingsProperties { + readonly creationTime?: Date; + state?: SqlVulnerabilityAssessmentState; +} // @public -export interface SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams extends coreClient.OperationOptions { -} +export type SqlVulnerabilityAssessmentState = string; // @public -export interface SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams extends coreClient.OperationOptions { +export interface Standard extends ProxyResource { + category?: string; + components?: StandardComponentProperties[]; + description?: string; + displayName?: string; + etag?: string; + kind?: string; + location?: string; + readonly standardType?: string; + supportedClouds?: StandardSupportedClouds[]; + tags?: Record; } // @public -export type SqlVulnerabilityAssessmentBaselineRulesGetResponse = RuleResults; +export interface StandardAssignment extends ExtensionResource { + assignedStandard?: AssignedStandardItem; + attestationData?: StandardAssignmentPropertiesAttestationData; + description?: string; + displayName?: string; + effect?: Effect; + excludedScopes?: string[]; + exemptionData?: StandardAssignmentPropertiesExemptionData; + expiresOn?: Date; + metadata?: StandardAssignmentMetadata; +} // @public -export interface SqlVulnerabilityAssessmentBaselineRulesListOptionalParams extends coreClient.OperationOptions { +export interface StandardAssignmentMetadata { + readonly createdBy?: string; + readonly createdOn?: Date; + readonly lastUpdatedBy?: string; + readonly lastUpdatedOn?: Date; } // @public -export type SqlVulnerabilityAssessmentBaselineRulesListResponse = RulesResults; +export interface StandardAssignmentProperties { + assignedStandard?: AssignedStandardItem; + attestationData?: StandardAssignmentPropertiesAttestationData; + description?: string; + displayName?: string; + effect?: Effect; + excludedScopes?: string[]; + exemptionData?: StandardAssignmentPropertiesExemptionData; + expiresOn?: Date; + metadata?: StandardAssignmentMetadata; +} // @public -export interface SqlVulnerabilityAssessmentScanResults { - get(scanId: string, scanResultId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsGetOptionalParams): Promise; - list(scanId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScanResultsListOptionalParams): Promise; +export interface StandardAssignmentPropertiesAttestationData { + assignedAssessment?: AssignedAssessmentItem; + readonly complianceDate?: Date; + complianceState?: AttestationComplianceState; + evidence?: AttestationEvidence[]; } // @public -export interface SqlVulnerabilityAssessmentScanResultsGetOptionalParams extends coreClient.OperationOptions { +export interface StandardAssignmentPropertiesExemptionData { + assignedAssessment?: AssignedAssessmentItem; + exemptionCategory?: ExemptionCategory; } // @public -export type SqlVulnerabilityAssessmentScanResultsGetResponse = ScanResult; +export interface StandardAssignmentsCreateOptionalParams extends OperationOptions { +} // @public -export interface SqlVulnerabilityAssessmentScanResultsListOptionalParams extends coreClient.OperationOptions { +export interface StandardAssignmentsDeleteOptionalParams extends OperationOptions { } // @public -export type SqlVulnerabilityAssessmentScanResultsListResponse = ScanResults; +export interface StandardAssignmentsGetOptionalParams extends OperationOptions { +} // @public -export interface SqlVulnerabilityAssessmentScans { - get(scanId: string, workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScansGetOptionalParams): Promise; - list(workspaceId: string, resourceId: string, options?: SqlVulnerabilityAssessmentScansListOptionalParams): Promise; +export interface StandardAssignmentsListOptionalParams extends OperationOptions { } // @public -export interface SqlVulnerabilityAssessmentScansGetOptionalParams extends coreClient.OperationOptions { +export interface StandardAssignmentsOperations { + create: (resourceId: string, standardAssignmentName: string, standardAssignment: StandardAssignment, options?: StandardAssignmentsCreateOptionalParams) => Promise; + delete: (resourceId: string, standardAssignmentName: string, options?: StandardAssignmentsDeleteOptionalParams) => Promise; + get: (resourceId: string, standardAssignmentName: string, options?: StandardAssignmentsGetOptionalParams) => Promise; + list: (scope: string, options?: StandardAssignmentsListOptionalParams) => PagedAsyncIterableIterator; } // @public -export type SqlVulnerabilityAssessmentScansGetResponse = Scan; +export interface StandardComponentProperties { + key?: string; +} // @public -export interface SqlVulnerabilityAssessmentScansListOptionalParams extends coreClient.OperationOptions { +export interface StandardMetadata { + readonly createdBy?: string; + readonly createdOn?: Date; + readonly lastUpdatedBy?: string; + readonly lastUpdatedOn?: Date; } // @public -export type SqlVulnerabilityAssessmentScansListResponse = Scans; +export interface StandardProperties { + category?: string; + components?: StandardComponentProperties[]; + description?: string; + displayName?: string; + readonly standardType?: string; + supportedClouds?: StandardSupportedClouds[]; +} // @public -export type State = string; +export interface StandardsCreateOrUpdateOptionalParams extends OperationOptions { +} // @public -export type Status = string; +export interface StandardsDeleteOptionalParams extends OperationOptions { +} // @public -export interface StatusAutoGenerated { - code?: StatusName; - readonly firstEvaluationDate?: Date; - readonly lastScannedDate?: Date; - readonly reason?: string; - readonly statusChangeDate?: Date; +export interface StandardsGetOptionalParams extends OperationOptions { } // @public -export type StatusName = string; +export interface StandardsListBySubscriptionOptionalParams extends OperationOptions { +} // @public -export type StatusReason = string; +export interface StandardsListOptionalParams extends OperationOptions { +} // @public -export interface SubAssessments { - get(scope: string, assessmentName: string, subAssessmentName: string, options?: SubAssessmentsGetOptionalParams): Promise; - list(scope: string, assessmentName: string, options?: SubAssessmentsListOptionalParams): PagedAsyncIterableIterator; - listAll(scope: string, options?: SubAssessmentsListAllOptionalParams): PagedAsyncIterableIterator; +export interface StandardsOperations { + createOrUpdate: (resourceGroupName: string, standardId: string, standard: Standard, options?: StandardsCreateOrUpdateOptionalParams) => Promise; + delete: (resourceGroupName: string, standardId: string, options?: StandardsDeleteOptionalParams) => Promise; + get: (resourceGroupName: string, standardId: string, options?: StandardsGetOptionalParams) => Promise; + list: (resourceGroupName: string, options?: StandardsListOptionalParams) => PagedAsyncIterableIterator; + listBySubscription: (options?: StandardsListBySubscriptionOptionalParams) => PagedAsyncIterableIterator; } // @public -export interface SubAssessmentsGetOptionalParams extends coreClient.OperationOptions { -} +export type StandardSupportedCloud = string; // @public -export type SubAssessmentsGetResponse = SecuritySubAssessment; +export type StandardSupportedClouds = "AWS" | "GCP"; // @public -export interface SubAssessmentsListAllNextOptionalParams extends coreClient.OperationOptions { -} +export type StandardType = string; // @public -export type SubAssessmentsListAllNextResponse = SecuritySubAssessmentList; +export type State = string; // @public -export interface SubAssessmentsListAllOptionalParams extends coreClient.OperationOptions { +export interface Status { + code?: StatusName; + readonly firstEvaluationDate?: Date; + readonly lastScannedDate?: Date; + readonly reason?: string; + readonly statusChangeDate?: Date; } // @public -export type SubAssessmentsListAllResponse = SecuritySubAssessmentList; +export type StatusName = string; + +// @public +export type StatusReason = string; // @public -export interface SubAssessmentsListNextOptionalParams extends coreClient.OperationOptions { +export interface SubAssessmentsGetOptionalParams extends OperationOptions { } // @public -export type SubAssessmentsListNextResponse = SecuritySubAssessmentList; +export interface SubAssessmentsListAllOptionalParams extends OperationOptions { +} // @public -export interface SubAssessmentsListOptionalParams extends coreClient.OperationOptions { +export interface SubAssessmentsListOptionalParams extends OperationOptions { } // @public -export type SubAssessmentsListResponse = SecuritySubAssessmentList; +export interface SubAssessmentsOperations { + get: (scope: string, assessmentName: string, subAssessmentName: string, options?: SubAssessmentsGetOptionalParams) => Promise; + list: (scope: string, assessmentName: string, options?: SubAssessmentsListOptionalParams) => PagedAsyncIterableIterator; + listAll: (scope: string, options?: SubAssessmentsListAllOptionalParams) => PagedAsyncIterableIterator; +} // @public export interface SubAssessmentStatus { @@ -6994,9 +6208,6 @@ export type SubAssessmentStatusCode = string; export type SubPlan = string; // @public -export type SupportedCloudEnum = string; - -// @public (undocumented) export interface SuppressionAlertsScope { allOf: ScopeElement[]; } @@ -7016,16 +6227,12 @@ export type Tactics = string; // @public export interface Tags { - tags?: { - [propertyName: string]: string; - }; + tags?: Record; } // @public export interface TagsResource { - tags?: { - [propertyName: string]: string; - }; + tags?: Record; } // @public @@ -7035,81 +6242,45 @@ export interface TargetBranchConfiguration { } // @public -export interface Tasks { - getResourceGroupLevelTask(resourceGroupName: string, ascLocation: string, taskName: string, options?: TasksGetResourceGroupLevelTaskOptionalParams): Promise; - getSubscriptionLevelTask(ascLocation: string, taskName: string, options?: TasksGetSubscriptionLevelTaskOptionalParams): Promise; - list(options?: TasksListOptionalParams): PagedAsyncIterableIterator; - listByHomeRegion(ascLocation: string, options?: TasksListByHomeRegionOptionalParams): PagedAsyncIterableIterator; - listByResourceGroup(resourceGroupName: string, ascLocation: string, options?: TasksListByResourceGroupOptionalParams): PagedAsyncIterableIterator; - updateResourceGroupLevelTaskState(resourceGroupName: string, ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateResourceGroupLevelTaskStateOptionalParams): Promise; - updateSubscriptionLevelTaskState(ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateSubscriptionLevelTaskStateOptionalParams): Promise; -} - -// @public -export interface TasksGetResourceGroupLevelTaskOptionalParams extends coreClient.OperationOptions { +export interface TasksGetResourceGroupLevelTaskOptionalParams extends OperationOptions { } // @public -export type TasksGetResourceGroupLevelTaskResponse = SecurityTask; - -// @public -export interface TasksGetSubscriptionLevelTaskOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type TasksGetSubscriptionLevelTaskResponse = SecurityTask; - -// @public -export interface TasksListByHomeRegionNextOptionalParams extends coreClient.OperationOptions { +export interface TasksGetSubscriptionLevelTaskOptionalParams extends OperationOptions { } // @public -export type TasksListByHomeRegionNextResponse = SecurityTaskList; - -// @public -export interface TasksListByHomeRegionOptionalParams extends coreClient.OperationOptions { +export interface TasksListByHomeRegionOptionalParams extends OperationOptions { filter?: string; } // @public -export type TasksListByHomeRegionResponse = SecurityTaskList; - -// @public -export interface TasksListByResourceGroupNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type TasksListByResourceGroupNextResponse = SecurityTaskList; - -// @public -export interface TasksListByResourceGroupOptionalParams extends coreClient.OperationOptions { +export interface TasksListByResourceGroupOptionalParams extends OperationOptions { filter?: string; } // @public -export type TasksListByResourceGroupResponse = SecurityTaskList; - -// @public -export interface TasksListNextOptionalParams extends coreClient.OperationOptions { -} - -// @public -export type TasksListNextResponse = SecurityTaskList; - -// @public -export interface TasksListOptionalParams extends coreClient.OperationOptions { +export interface TasksListOptionalParams extends OperationOptions { filter?: string; } // @public -export type TasksListResponse = SecurityTaskList; +export interface TasksOperations { + getResourceGroupLevelTask: (resourceGroupName: string, ascLocation: string, taskName: string, options?: TasksGetResourceGroupLevelTaskOptionalParams) => Promise; + getSubscriptionLevelTask: (ascLocation: string, taskName: string, options?: TasksGetSubscriptionLevelTaskOptionalParams) => Promise; + list: (options?: TasksListOptionalParams) => PagedAsyncIterableIterator; + listByHomeRegion: (ascLocation: string, options?: TasksListByHomeRegionOptionalParams) => PagedAsyncIterableIterator; + listByResourceGroup: (resourceGroupName: string, ascLocation: string, options?: TasksListByResourceGroupOptionalParams) => PagedAsyncIterableIterator; + updateResourceGroupLevelTaskState: (resourceGroupName: string, ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateResourceGroupLevelTaskStateOptionalParams) => Promise; + updateSubscriptionLevelTaskState: (ascLocation: string, taskName: string, taskUpdateActionType: TaskUpdateActionType, options?: TasksUpdateSubscriptionLevelTaskStateOptionalParams) => Promise; +} // @public -export interface TasksUpdateResourceGroupLevelTaskStateOptionalParams extends coreClient.OperationOptions { +export interface TasksUpdateResourceGroupLevelTaskStateOptionalParams extends OperationOptions { } // @public -export interface TasksUpdateSubscriptionLevelTaskStateOptionalParams extends coreClient.OperationOptions { +export interface TasksUpdateSubscriptionLevelTaskStateOptionalParams extends OperationOptions { } // @public @@ -7125,76 +6296,53 @@ export type Threats = string; export interface ThresholdCustomAlertRule extends CustomAlertRule { maxThreshold: number; minThreshold: number; - ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange"; + // (undocumented) + ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule"; } -// @public (undocumented) -export type ThresholdCustomAlertRuleUnion = ThresholdCustomAlertRule | TimeWindowCustomAlertRuleUnion; +// @public +export type ThresholdCustomAlertRuleUnion = TimeWindowCustomAlertRule | ThresholdCustomAlertRule; // @public export interface TimeWindowCustomAlertRule extends ThresholdCustomAlertRule { - ruleType: "TimeWindowCustomAlertRule" | "ActiveConnectionsNotInAllowedRange" | "AmqpC2DMessagesNotInAllowedRange" | "MqttC2DMessagesNotInAllowedRange" | "HttpC2DMessagesNotInAllowedRange" | "AmqpC2DRejectedMessagesNotInAllowedRange" | "MqttC2DRejectedMessagesNotInAllowedRange" | "HttpC2DRejectedMessagesNotInAllowedRange" | "AmqpD2CMessagesNotInAllowedRange" | "MqttD2CMessagesNotInAllowedRange" | "HttpD2CMessagesNotInAllowedRange" | "DirectMethodInvokesNotInAllowedRange" | "FailedLocalLoginsNotInAllowedRange" | "FileUploadsNotInAllowedRange" | "QueuePurgesNotInAllowedRange" | "TwinUpdatesNotInAllowedRange" | "UnauthorizedOperationsNotInAllowedRange"; + // (undocumented) + ruleType: "TimeWindowCustomAlertRule"; timeWindowSize: string; } -// @public (undocumented) -export type TimeWindowCustomAlertRuleUnion = TimeWindowCustomAlertRule | ActiveConnectionsNotInAllowedRange | AmqpC2DMessagesNotInAllowedRange | MqttC2DMessagesNotInAllowedRange | HttpC2DMessagesNotInAllowedRange | AmqpC2DRejectedMessagesNotInAllowedRange | MqttC2DRejectedMessagesNotInAllowedRange | HttpC2DRejectedMessagesNotInAllowedRange | AmqpD2CMessagesNotInAllowedRange | MqttD2CMessagesNotInAllowedRange | HttpD2CMessagesNotInAllowedRange | DirectMethodInvokesNotInAllowedRange | FailedLocalLoginsNotInAllowedRange | FileUploadsNotInAllowedRange | QueuePurgesNotInAllowedRange | TwinUpdatesNotInAllowedRange | UnauthorizedOperationsNotInAllowedRange; - -// @public -export interface Topology { - get(resourceGroupName: string, ascLocation: string, topologyResourceName: string, options?: TopologyGetOptionalParams): Promise; - list(options?: TopologyListOptionalParams): PagedAsyncIterableIterator; - listByHomeRegion(ascLocation: string, options?: TopologyListByHomeRegionOptionalParams): PagedAsyncIterableIterator; -} - -// @public -export interface TopologyGetOptionalParams extends coreClient.OperationOptions { -} - // @public -export type TopologyGetResponse = TopologyResource; - -// @public (undocumented) -export interface TopologyList { - readonly nextLink?: string; - readonly value?: TopologyResource[]; +export interface TopologyGetOptionalParams extends OperationOptions { } // @public -export interface TopologyListByHomeRegionNextOptionalParams extends coreClient.OperationOptions { +export interface TopologyListByHomeRegionOptionalParams extends OperationOptions { } // @public -export type TopologyListByHomeRegionNextResponse = TopologyList; - -// @public -export interface TopologyListByHomeRegionOptionalParams extends coreClient.OperationOptions { +export interface TopologyListOptionalParams extends OperationOptions { } // @public -export type TopologyListByHomeRegionResponse = TopologyList; - -// @public -export interface TopologyListNextOptionalParams extends coreClient.OperationOptions { +export interface TopologyOperations { + get: (resourceGroupName: string, ascLocation: string, topologyResourceName: string, options?: TopologyGetOptionalParams) => Promise; + list: (options?: TopologyListOptionalParams) => PagedAsyncIterableIterator; + listByHomeRegion: (ascLocation: string, options?: TopologyListByHomeRegionOptionalParams) => PagedAsyncIterableIterator; } // @public -export type TopologyListNextResponse = TopologyList; - -// @public -export interface TopologyListOptionalParams extends coreClient.OperationOptions { +export interface TopologyResource extends ProxyResource { + readonly calculatedDateTime?: Date; + readonly location: string; + readonly topologyResources?: TopologySingleResource[]; } // @public -export type TopologyListResponse = TopologyList; - -// @public (undocumented) -export interface TopologyResource extends Resource, Location { +export interface TopologyResourceProperties { readonly calculatedDateTime?: Date; readonly topologyResources?: TopologySingleResource[]; } -// @public (undocumented) +// @public export interface TopologySingleResource { readonly children?: TopologySingleResourceChild[]; readonly location?: string; @@ -7206,47 +6354,38 @@ export interface TopologySingleResource { readonly topologyScore?: number; } -// @public (undocumented) +// @public export interface TopologySingleResourceChild { readonly resourceId?: string; } -// @public (undocumented) +// @public export interface TopologySingleResourceParent { readonly resourceId?: string; } // @public -export interface TrackedResource extends Resource, AzureTrackedResourceLocation, KindAutoGenerated, ETag, Tags { -} - -// @public -export type TransportProtocol = string; - -// @public -export interface TwinUpdatesNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "TwinUpdatesNotInAllowedRange"; +export interface TrackedResource extends Resource { + location: string; + tags?: Record; } // @public export type Type = string; -// @public -export interface UnauthorizedOperationsNotInAllowedRange extends TimeWindowCustomAlertRule { - ruleType: "UnauthorizedOperationsNotInAllowedRange"; -} - // @public export type UnmaskedIpLoggingStatus = string; -// @public (undocumented) +// @public export interface UpdateIotSecuritySolutionData extends TagsResource { recommendationsConfiguration?: RecommendationConfigurationProperties[]; userDefinedResources?: UserDefinedResourcesProperties; } // @public -export interface UpdateSensitivitySettingsOptionalParams extends coreClient.OperationOptions { +export interface UpdateIoTSecuritySolutionProperties { + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + userDefinedResources?: UserDefinedResourcesProperties; } // @public @@ -7256,9 +6395,6 @@ export interface UpdateSensitivitySettingsRequest { sensitivityThresholdLabelOrder?: number; } -// @public -export type UpdateSensitivitySettingsResponse = GetSensitivitySettingsResponse; - // @public export interface UserDefinedResourcesProperties { query: string | null; @@ -7268,12 +6404,6 @@ export interface UserDefinedResourcesProperties { // @public export type UserImpact = string; -// @public -export interface UserRecommendation { - recommendationAction?: RecommendationAction; - username?: string; -} - // @public export type ValueType = string; @@ -7297,72 +6427,66 @@ export interface VendorReference { } // @public -export interface VmRecommendation { - configurationStatus?: ConfigurationStatus; - enforcementSupport?: EnforcementSupport; - recommendationAction?: RecommendationAction; - resourceId?: string; +export interface VmScannersAws extends VmScannersBase { + cloudRoleArn?: string; } // @public -export interface WorkspaceSetting extends Resource { - scope?: string; - workspaceId?: string; +export interface VmScannersBase { + configuration?: VmScannersBaseConfiguration; + enabled?: boolean; } // @public -export interface WorkspaceSettingList { - readonly nextLink?: string; - value: WorkspaceSetting[]; +export interface VmScannersBaseConfiguration { + exclusionTags?: Record; + scanningMode?: ScanningMode; } // @public -export interface WorkspaceSettings { - create(workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsCreateOptionalParams): Promise; - delete(workspaceSettingName: string, options?: WorkspaceSettingsDeleteOptionalParams): Promise; - get(workspaceSettingName: string, options?: WorkspaceSettingsGetOptionalParams): Promise; - list(options?: WorkspaceSettingsListOptionalParams): PagedAsyncIterableIterator; - update(workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsUpdateOptionalParams): Promise; +export interface VmScannersGcp extends VmScannersBase { } // @public -export interface WorkspaceSettingsCreateOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSetting extends ProxyResource { + scope?: string; + workspaceId?: string; } // @public -export type WorkspaceSettingsCreateResponse = WorkspaceSetting; - -// @public -export interface WorkspaceSettingsDeleteOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSettingProperties { + scope: string; + workspaceId: string; } // @public -export interface WorkspaceSettingsGetOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSettingsCreateOptionalParams extends OperationOptions { } // @public -export type WorkspaceSettingsGetResponse = WorkspaceSetting; - -// @public -export interface WorkspaceSettingsListNextOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSettingsDeleteOptionalParams extends OperationOptions { } // @public -export type WorkspaceSettingsListNextResponse = WorkspaceSettingList; - -// @public -export interface WorkspaceSettingsListOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSettingsGetOptionalParams extends OperationOptions { } // @public -export type WorkspaceSettingsListResponse = WorkspaceSettingList; +export interface WorkspaceSettingsListOptionalParams extends OperationOptions { +} // @public -export interface WorkspaceSettingsUpdateOptionalParams extends coreClient.OperationOptions { +export interface WorkspaceSettingsOperations { + create: (workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsCreateOptionalParams) => Promise; + delete: (workspaceSettingName: string, options?: WorkspaceSettingsDeleteOptionalParams) => Promise; + get: (workspaceSettingName: string, options?: WorkspaceSettingsGetOptionalParams) => Promise; + list: (options?: WorkspaceSettingsListOptionalParams) => PagedAsyncIterableIterator; + update: (workspaceSettingName: string, workspaceSetting: WorkspaceSetting, options?: WorkspaceSettingsUpdateOptionalParams) => Promise; } // @public -export type WorkspaceSettingsUpdateResponse = WorkspaceSetting; +export interface WorkspaceSettingsUpdateOptionalParams extends OperationOptions { +} // (No @packageDocumentation comment for this package) diff --git a/sdk/security/arm-security/sample.env b/sdk/security/arm-security/sample.env deleted file mode 100644 index 672847a3fea0..000000000000 --- a/sdk/security/arm-security/sample.env +++ /dev/null @@ -1,4 +0,0 @@ -# App registration secret for AAD authentication -AZURE_CLIENT_SECRET= -AZURE_CLIENT_ID= -AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsDeleteSample.ts b/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsDeleteSample.ts deleted file mode 100644 index a331cf3fff19..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete an application control machine group - * - * @summary Delete an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAnApplicationControlMachineGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "GROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.delete(ascLocation, groupName); - console.log(result); -} - -async function main(): Promise { - await deleteAnApplicationControlMachineGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsGetSample.ts b/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsGetSample.ts deleted file mode 100644 index fb92e316cbe8..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets an application control VM/server group. - * - * @summary Gets an application control VM/server group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAConfiguredApplicationControlVMOrServerGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.get(ascLocation, groupName); - console.log(result); -} - -async function main(): Promise { - await getsAConfiguredApplicationControlVMOrServerGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsListSample.ts b/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsListSample.ts deleted file mode 100644 index 2ecd2e37872d..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of application control machine groups for the subscription. - * - * @summary Gets a list of application control machine groups for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json - */ - -import type { AdaptiveApplicationControlsListOptionalParams } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAListOfApplicationControlGroupsOfMachinesForTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const includePathRecommendations = true; - const summary = false; - const options: AdaptiveApplicationControlsListOptionalParams = { - includePathRecommendations, - summary, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.list(options); - console.log(result); -} - -async function main(): Promise { - await getsAListOfApplicationControlGroupsOfMachinesForTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsPutSample.ts b/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsPutSample.ts deleted file mode 100644 index 66ee67c12b00..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveApplicationControlsPutSample.ts +++ /dev/null @@ -1,117 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update an application control machine group - * - * @summary Update an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json - */ - -import type { AdaptiveApplicationControlGroup } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateAnApplicationControlMachineGroupByAddingANewApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const body: AdaptiveApplicationControlGroup = { - enforcementMode: "Audit", - pathRecommendations: [ - { - type: "PublisherSignature", - path: "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [{ recommendationAction: "Recommended", username: "Everyone" }], - }, - { - type: "ProductSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "MICROSOFT® COREXT", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "PublisherSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "File", - path: "C:\\directory\\file.exe", - action: "Add", - common: true, - }, - ], - protectionMode: { exe: "Audit", msi: "None", script: "None" }, - vmRecommendations: [ - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - }, - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.put(ascLocation, groupName, body); - console.log(result); -} - -async function main(): Promise { - await updateAnApplicationControlMachineGroupByAddingANewApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsEnforceSample.ts b/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsEnforceSample.ts deleted file mode 100644 index 30ce7a561470..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsEnforceSample.ts +++ /dev/null @@ -1,63 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Enforces the given rules on the NSG(s) listed in the request - * - * @summary Enforces the given rules on the NSG(s) listed in the request - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json - */ - -import type { AdaptiveNetworkHardeningEnforceRequest } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function enforcesTheGivenRulesOnTheNsgSListedInTheRequest(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const body: AdaptiveNetworkHardeningEnforceRequest = { - networkSecurityGroups: [ - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg2", - ], - rules: [ - { - name: "rule1", - destinationPort: 3389, - direction: "Inbound", - ipAddresses: ["100.10.1.1", "200.20.2.2", "81.199.3.0/24"], - protocols: ["TCP"], - }, - { - name: "rule2", - destinationPort: 22, - direction: "Inbound", - ipAddresses: [], - protocols: ["TCP"], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.beginEnforceAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - body, - ); - console.log(result); -} - -async function main(): Promise { - await enforcesTheGivenRulesOnTheNsgSListedInTheRequest(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsGetSample.ts b/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsGetSample.ts deleted file mode 100644 index e5a78be321c8..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsGetSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a single Adaptive Network Hardening resource - * - * @summary Gets a single Adaptive Network Hardening resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getASingleAdaptiveNetworkHardeningResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - ); - console.log(result); -} - -async function main(): Promise { - await getASingleAdaptiveNetworkHardeningResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsListByExtendedResourceSample.ts b/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsListByExtendedResourceSample.ts deleted file mode 100644 index 4ca4f7a96fb2..000000000000 --- a/sdk/security/arm-security/samples-dev/adaptiveNetworkHardeningsListByExtendedResourceSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * - * @summary Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.adaptiveNetworkHardenings.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/advancedThreatProtectionCreateSample.ts b/sdk/security/arm-security/samples-dev/advancedThreatProtectionCreateSample.ts deleted file mode 100644 index ed356d408f43..000000000000 --- a/sdk/security/arm-security/samples-dev/advancedThreatProtectionCreateSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates the Advanced Threat Protection settings on a specified resource. - * - * @summary Creates or updates the Advanced Threat Protection settings on a specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json - */ - -import type { AdvancedThreatProtectionSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const advancedThreatProtectionSetting: AdvancedThreatProtectionSetting = { - name: "current", - type: "Microsoft.Security/advancedThreatProtectionSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", - isEnabled: true, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.create( - resourceId, - advancedThreatProtectionSetting, - ); - console.log(result); -} - -async function main(): Promise { - await createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/advancedThreatProtectionGetSample.ts b/sdk/security/arm-security/samples-dev/advancedThreatProtectionGetSample.ts deleted file mode 100644 index 7ebe43a68899..000000000000 --- a/sdk/security/arm-security/samples-dev/advancedThreatProtectionGetSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the Advanced Threat Protection settings for the specified resource. - * - * @summary Gets the Advanced Threat Protection settings for the specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.get(resourceId); - console.log(result); -} - -async function main(): Promise { - await getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsGetResourceGroupLevelSample.ts b/sdk/security/arm-security/samples-dev/alertsGetResourceGroupLevelSample.ts deleted file mode 100644 index bafdc21e9d73..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsGetResourceGroupLevelSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get an alert that is associated a resource group or a resource in a resource group - * - * @summary Get an alert that is associated a resource group or a resource in a resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getResourceGroupLevel( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await getSecurityAlertOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsGetSubscriptionLevelSample.ts b/sdk/security/arm-security/samples-dev/alertsGetSubscriptionLevelSample.ts deleted file mode 100644 index 1d440ec1c2b4..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsGetSubscriptionLevelSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get an alert that is associated with a subscription - * - * @summary Get an alert that is associated with a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518770965529163669_F144EE95-A3E5-42DA-A279-967D115809AA"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getSubscriptionLevel(ascLocation, alertName); - console.log(result); -} - -async function main(): Promise { - await getSecurityAlertOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/alertsListByResourceGroupSample.ts deleted file mode 100644 index b13c7300e807..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsListByResourceGroupSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group - * - * @summary List all the alerts that are associated with the resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertsOnAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alerts.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityAlertsOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsListResourceGroupLevelByRegionSample.ts b/sdk/security/arm-security/samples-dev/alertsListResourceGroupLevelByRegionSample.ts deleted file mode 100644 index 8f08c81b0866..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsListResourceGroupLevelByRegionSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group that are stored in a specific location - * - * @summary List all the alerts that are associated with the resource group that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertsOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alerts.listResourceGroupLevelByRegion( - ascLocation, - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityAlertsOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsListSample.ts b/sdk/security/arm-security/samples-dev/alertsListSample.ts deleted file mode 100644 index 64ad87c3cd4b..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription - * - * @summary List all the alerts that are associated with the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alerts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsListSubscriptionLevelByRegionSample.ts b/sdk/security/arm-security/samples-dev/alertsListSubscriptionLevelByRegionSample.ts deleted file mode 100644 index 7c69636c7345..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsListSubscriptionLevelByRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription that are stored in a specific location - * - * @summary List all the alerts that are associated with the subscription that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAlertsOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alerts.listSubscriptionLevelByRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityAlertsOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsSimulateSample.ts b/sdk/security/arm-security/samples-dev/alertsSimulateSample.ts deleted file mode 100644 index f932017283c4..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsSimulateSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Simulate security alerts - * - * @summary Simulate security alerts - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json - */ - -import type { AlertSimulatorRequestBody } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function simulateSecurityAlertsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const alertSimulatorRequestBody: AlertSimulatorRequestBody = { - properties: { - bundles: [ - "AppServices", - "DNS", - "KeyVaults", - "KubernetesService", - "ResourceManager", - "SqlServers", - "StorageAccounts", - "VirtualMachines", - "CosmosDbs", - ], - kind: "Bundles", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.beginSimulateAndWait(ascLocation, alertSimulatorRequestBody); - console.log(result); -} - -async function main(): Promise { - await simulateSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesDeleteSample.ts b/sdk/security/arm-security/samples-dev/alertsSuppressionRulesDeleteSample.ts deleted file mode 100644 index 80e4c1a0160c..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete dismiss alert rule for this subscription. - * - * @summary Delete dismiss alert rule for this subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteSuppressionRuleDataForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.delete(alertsSuppressionRuleName); - console.log(result); -} - -async function main(): Promise { - await deleteSuppressionRuleDataForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesGetSample.ts b/sdk/security/arm-security/samples-dev/alertsSuppressionRulesGetSample.ts deleted file mode 100644 index 74f15df8f480..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * - * @summary Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSuppressionAlertRuleForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.get(alertsSuppressionRuleName); - console.log(result); -} - -async function main(): Promise { - await getSuppressionAlertRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesListSample.ts b/sdk/security/arm-security/samples-dev/alertsSuppressionRulesListSample.ts deleted file mode 100644 index 3b7910581842..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesListSample.ts +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSuppressionAlertRuleForSubscriptionFilteredByAlertType(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json - */ -async function getSuppressionRulesForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSuppressionAlertRuleForSubscriptionFilteredByAlertType(); - await getSuppressionRulesForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesUpdateSample.ts b/sdk/security/arm-security/samples-dev/alertsSuppressionRulesUpdateSample.ts deleted file mode 100644 index df6f941d4579..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsSuppressionRulesUpdateSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update existing rule or create new rule if it doesn't exist - * - * @summary Update existing rule or create new rule if it doesn't exist - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json - */ - -import type { AlertsSuppressionRule } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateOrCreateSuppressionRuleForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const alertsSuppressionRule: AlertsSuppressionRule = { - alertType: "IpAnomaly", - comment: "Test VM", - expirationDateUtc: new Date("2019-12-01T19:50:47.083633Z"), - reason: "FalsePositive", - state: "Enabled", - suppressionAlertsScope: { - allOf: [{ field: "entities.ip.address" }, { field: "entities.process.commandline" }], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.update( - alertsSuppressionRuleName, - alertsSuppressionRule, - ); - console.log(result); -} - -async function main(): Promise { - await updateOrCreateSuppressionRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToActivateSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToActivateSample.ts deleted file mode 100644 index 8707416e8006..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToActivateSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToActivate( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToDismissSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToDismissSample.ts deleted file mode 100644 index eacde8015168..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToDismissSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToDismiss( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToInProgressSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToInProgressSample.ts deleted file mode 100644 index a9a42fe35c97..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToInProgressSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToInProgress( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToResolveSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToResolveSample.ts deleted file mode 100644 index 1a9e2502ab0e..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateResourceGroupLevelStateToResolveSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToResolve( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToActivateSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToActivateSample.ts deleted file mode 100644 index 4bb48ad3c4da..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToActivateSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToActivate(ascLocation, alertName); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToDismissSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToDismissSample.ts deleted file mode 100644 index ffe9c82be0eb..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToDismissSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToDismiss(ascLocation, alertName); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToInProgressSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToInProgressSample.ts deleted file mode 100644 index 908a15bca054..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToInProgressSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToInProgress( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToResolveSample.ts b/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToResolveSample.ts deleted file mode 100644 index a23284f9687e..000000000000 --- a/sdk/security/arm-security/samples-dev/alertsUpdateSubscriptionLevelStateToResolveSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToResolve(ascLocation, alertName); - console.log(result); -} - -async function main(): Promise { - await updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/allowedConnectionsGetSample.ts b/sdk/security/arm-security/samples-dev/allowedConnectionsGetSample.ts deleted file mode 100644 index 17c7b248baca..000000000000 --- a/sdk/security/arm-security/samples-dev/allowedConnectionsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllowedConnections(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myResourceGroup"; - const ascLocation = "centralus"; - const connectionType = "Internal"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.allowedConnections.get( - resourceGroupName, - ascLocation, - connectionType, - ); - console.log(result); -} - -async function main(): Promise { - await getAllowedConnections(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/allowedConnectionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/allowedConnectionsListByHomeRegionSample.ts deleted file mode 100644 index 7d879b210277..000000000000 --- a/sdk/security/arm-security/samples-dev/allowedConnectionsListByHomeRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllowedConnectionsOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.allowedConnections.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllowedConnectionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/allowedConnectionsListSample.ts b/sdk/security/arm-security/samples-dev/allowedConnectionsListSample.ts deleted file mode 100644 index 81e8e443b21a..000000000000 --- a/sdk/security/arm-security/samples-dev/allowedConnectionsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription - * - * @summary Gets the list of all possible traffic between resources for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllowedConnectionsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.allowedConnections.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllowedConnectionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsGetByAzureApiManagementServiceSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsGetByAzureApiManagementServiceSample.ts deleted file mode 100644 index 314d13c7bd35..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsGetByAzureApiManagementServiceSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.getByAzureApiManagementService( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - await getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsListByAzureApiManagementServiceSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsListByAzureApiManagementServiceSample.ts deleted file mode 100644 index b18007319c9a..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsListByAzureApiManagementServiceSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.aPICollections.listByAzureApiManagementService( - resourceGroupName, - serviceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsListByResourceGroupSample.ts deleted file mode 100644 index a37c4fdf8cd9..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsListByResourceGroupSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.aPICollections.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsListBySubscriptionSample.ts deleted file mode 100644 index d81854add63f..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.aPICollections.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsOffboardAzureApiManagementApiSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsOffboardAzureApiManagementApiSample.ts deleted file mode 100644 index 2e6d46154cb7..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsOffboardAzureApiManagementApiSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * - * @summary Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.offboardAzureApiManagementApi( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - await offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/apiCollectionsOnboardAzureApiManagementApiSample.ts b/sdk/security/arm-security/samples-dev/apiCollectionsOnboardAzureApiManagementApiSample.ts deleted file mode 100644 index f7dbaa3ca13e..000000000000 --- a/sdk/security/arm-security/samples-dev/apiCollectionsOnboardAzureApiManagementApiSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.beginOnboardAzureApiManagementApiAndWait( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - await onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/applicationCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/applicationCreateOrUpdateSample.ts deleted file mode 100644 index 598242a4e3be..000000000000 --- a/sdk/security/arm-security/samples-dev/applicationCreateOrUpdateSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or update a security application on the given subscription. - * - * @summary Creates or update a security application on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json - */ - -import type { Application } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application: Application = { - description: "An application on critical recommendations", - conditionSets: [ - { - conditions: [{ operator: "contains", property: "$.Id", value: "-bil-" }], - }, - ], - displayName: "Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.createOrUpdate(applicationId, application); - console.log(result); -} - -async function main(): Promise { - await createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/applicationDeleteSample.ts b/sdk/security/arm-security/samples-dev/applicationDeleteSample.ts deleted file mode 100644 index 3576144c3cdc..000000000000 --- a/sdk/security/arm-security/samples-dev/applicationDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteSecurityApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.delete(applicationId); - console.log(result); -} - -async function main(): Promise { - await deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/applicationGetSample.ts b/sdk/security/arm-security/samples-dev/applicationGetSample.ts deleted file mode 100644 index 3d08c847d3c9..000000000000 --- a/sdk/security/arm-security/samples-dev/applicationGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityApplicationBySpecificApplicationId(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.get(applicationId); - console.log(result); -} - -async function main(): Promise { - await getSecurityApplicationBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/applicationsListSample.ts b/sdk/security/arm-security/samples-dev/applicationsListSample.ts deleted file mode 100644 index 1f6d431763ed..000000000000 --- a/sdk/security/arm-security/samples-dev/applicationsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a list of all relevant applications over a subscription level scope - * - * @summary Get a list of all relevant applications over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listApplicationsSecurityBySubscriptionLevelScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.applications.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listApplicationsSecurityBySubscriptionLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/assessmentsCreateOrUpdateSample.ts deleted file mode 100644 index 40f3cb49fbab..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsCreateOrUpdateSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/PutAssessment_example.json - */ - -import type { SecurityAssessment } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createSecurityRecommendationTaskOnAResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const assessment: SecurityAssessment = { - resourceDetails: { source: "Azure" }, - status: { code: "Healthy" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.createOrUpdate(resourceId, assessmentName, assessment); - console.log(result); -} - -async function main(): Promise { - await createSecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsDeleteSample.ts b/sdk/security/arm-security/samples-dev/assessmentsDeleteSample.ts deleted file mode 100644 index ecc7b982d791..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/DeleteAssessment_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteASecurityRecommendationTaskOnAResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.delete(resourceId, assessmentName); - console.log(result); -} - -async function main(): Promise { - await deleteASecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsGetSample.ts b/sdk/security/arm-security/samples-dev/assessmentsGetSample.ts deleted file mode 100644 index 4b051cf55b87..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsGetSample.ts +++ /dev/null @@ -1,49 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessment_example.json - */ - -import type { AssessmentsGetOptionalParams } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get(resourceId, assessmentName); - console.log(result); -} - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessmentWithExpand_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const expand = "links"; - const options: AssessmentsGetOptionalParams = { expand }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get(resourceId, assessmentName, options); - console.log(result); -} - -async function main(): Promise { - await getSecurityRecommendationTaskFromSecurityDataLocation(); - await getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsListSample.ts b/sdk/security/arm-security/samples-dev/assessmentsListSample.ts deleted file mode 100644 index 3f385dd732cb..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsListSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get security assessments on all your scanned resources inside a scope - * - * @summary Get security assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/ListAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.assessments.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataCreateInSubscriptionSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataCreateInSubscriptionSample.ts deleted file mode 100644 index ddc933b86ea2..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataCreateInSubscriptionSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Create metadata information on an assessment type in a specific subscription - * - * @summary Create metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json - */ - -import type { SecurityAssessmentMetadataResponse } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const assessmentMetadata: SecurityAssessmentMetadataResponse = { - description: - "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", - assessmentType: "CustomerManaged", - categories: ["Compute"], - displayName: "Install endpoint protection solution on virtual machine scale sets", - implementationEffort: "Low", - remediationDescription: - 'To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set', - severity: "Medium", - threats: ["dataExfiltration", "dataSpillage", "maliciousInsider"], - userImpact: "Low", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.createInSubscription( - assessmentMetadataName, - assessmentMetadata, - ); - console.log(result); -} - -async function main(): Promise { - await createSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataDeleteInSubscriptionSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataDeleteInSubscriptionSample.ts deleted file mode 100644 index c9225065d906..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataDeleteInSubscriptionSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteASecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.deleteInSubscription(assessmentMetadataName); - console.log(result); -} - -async function main(): Promise { - await deleteASecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataGetInSubscriptionSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataGetInSubscriptionSample.ts deleted file mode 100644 index 2805d99ae3bb..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataGetInSubscriptionSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get metadata information on an assessment type in a specific subscription - * - * @summary Get metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.getInSubscription(assessmentMetadataName); - console.log(result); -} - -async function main(): Promise { - await getSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataGetSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataGetSample.ts deleted file mode 100644 index ddb8e9ccaa74..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataGetSample.ts +++ /dev/null @@ -1,27 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get metadata information on an assessment type - * - * @summary Get metadata information on an assessment type - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityAssessmentMetadata(): Promise { - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessmentsMetadata.get(assessmentMetadataName); - console.log(result); -} - -async function main(): Promise { - await getSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataListBySubscriptionSample.ts deleted file mode 100644 index cff28408e28f..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get metadata information on all assessment types in a specific subscription - * - * @summary Get metadata information on all assessment types in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.assessmentsMetadata.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/assessmentsMetadataListSample.ts b/sdk/security/arm-security/samples-dev/assessmentsMetadataListSample.ts deleted file mode 100644 index 0f381295282b..000000000000 --- a/sdk/security/arm-security/samples-dev/assessmentsMetadataListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get metadata information on all assessment types - * - * @summary Get metadata information on all assessment types - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityAssessmentMetadata(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.assessmentsMetadata.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsCreateSample.ts b/sdk/security/arm-security/samples-dev/autoProvisioningSettingsCreateSample.ts deleted file mode 100644 index efe153e9b8cb..000000000000 --- a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsCreateSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json - */ - -import type { AutoProvisioningSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createAutoProvisioningSettingsForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const setting: AutoProvisioningSetting = { - name: "default", - type: "Microsoft.Security/autoProvisioningSettings", - autoProvision: "On", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/autoProvisioningSettings/default", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.create(settingName, setting); - console.log(result); -} - -async function main(): Promise { - await createAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsGetSample.ts b/sdk/security/arm-security/samples-dev/autoProvisioningSettingsGetSample.ts deleted file mode 100644 index 286a966c6d64..000000000000 --- a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAnAutoProvisioningSettingForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.get(settingName); - console.log(result); -} - -async function main(): Promise { - await getAnAutoProvisioningSettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsListSample.ts b/sdk/security/arm-security/samples-dev/autoProvisioningSettingsListSample.ts deleted file mode 100644 index 27dd2a22584c..000000000000 --- a/sdk/security/arm-security/samples-dev/autoProvisioningSettingsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Exposes the auto provisioning settings of the subscriptions - * - * @summary Exposes the auto provisioning settings of the subscriptions - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAutoProvisioningSettingsForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.autoProvisioningSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/automationsCreateOrUpdateSample.ts deleted file mode 100644 index b37085138159..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsCreateOrUpdateSample.ts +++ /dev/null @@ -1,186 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json - */ - -import type { Automation } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationHighSeverityAssessments_example.json - */ -async function createOrUpdateASecurityAutomationForAllHighSeverityAssessments(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any high severity security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "High", - operator: "Equals", - propertyJPath: "properties.metadata.severity", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutDisableAutomation_example.json - */ -async function disableOrEnableASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: false, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities(); - await createOrUpdateASecurityAutomationForAllHighSeverityAssessments(); - await disableOrEnableASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsDeleteSample.ts b/sdk/security/arm-security/samples-dev/automationsDeleteSample.ts deleted file mode 100644 index d63e341011d6..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a security automation. - * - * @summary Deletes a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const automationName = "myAutomationName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.delete(resourceGroupName, automationName); - console.log(result); -} - -async function main(): Promise { - await deleteASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsGetSample.ts b/sdk/security/arm-security/samples-dev/automationsGetSample.ts deleted file mode 100644 index 9d6af63afcdb..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Retrieves information about the model of a security automation. - * - * @summary Retrieves information about the model of a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function retrieveASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.get(resourceGroupName, automationName); - console.log(result); -} - -async function main(): Promise { - await retrieveASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/automationsListByResourceGroupSample.ts deleted file mode 100644 index 5518f037a701..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsListByResourceGroupSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllSecurityAutomationsOfASpecifiedResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.automations.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllSecurityAutomationsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsListSample.ts b/sdk/security/arm-security/samples-dev/automationsListSample.ts deleted file mode 100644 index 9c5cf40deb07..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllSecurityAutomationsOfASpecifiedSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.automations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllSecurityAutomationsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsUpdateSample.ts b/sdk/security/arm-security/samples-dev/automationsUpdateSample.ts deleted file mode 100644 index f3e1a5d5677f..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsUpdateSample.ts +++ /dev/null @@ -1,53 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a security automation - * - * @summary Updates a security automation - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json - */ - -import type { AutomationUpdateModel } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: AutomationUpdateModel = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: { example: "exampleTag" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.update(resourceGroupName, automationName, automation); - console.log(result); -} - -async function main(): Promise { - await updateASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/automationsValidateSample.ts b/sdk/security/arm-security/samples-dev/automationsValidateSample.ts deleted file mode 100644 index 267bcd444191..000000000000 --- a/sdk/security/arm-security/samples-dev/automationsValidateSample.ts +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Validates the security automation model before create or update. Any validation errors are returned to the client. - * - * @summary Validates the security automation model before create or update. Any validation errors are returned to the client. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json - */ - -import type { Automation } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function validateTheSecurityAutomationModelBeforeCreateOrUpdate(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.validate(resourceGroupName, automationName, automation); - console.log(result); -} - -async function main(): Promise { - await validateTheSecurityAutomationModelBeforeCreateOrUpdate(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsOrgsCreateOrUpdateSample.ts deleted file mode 100644 index 74e416688e36..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsCreateOrUpdateSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates monitored Azure DevOps organization details. - * - * @summary Creates or updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json - */ - -import type { AzureDevOpsOrg } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg: AzureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsGetSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsOrgsGetSample.ts deleted file mode 100644 index 35a9ce6bd320..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps organization resource. - * - * @summary Returns a monitored Azure DevOps organization resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.get( - resourceGroupName, - securityConnectorName, - orgName, - ); - console.log(result); -} - -async function main(): Promise { - await getAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListAvailableSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListAvailableSample.ts deleted file mode 100644 index 36ca2ca24857..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListAvailableSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * - * @summary Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAvailableAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.listAvailable( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - await listAvailableAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListSample.ts deleted file mode 100644 index 4de5f20a3409..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsListSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of Azure DevOps organizations onboarded to the connector. - * - * @summary Returns a list of Azure DevOps organizations onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.azureDevOpsOrgs.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsOrgsUpdateSample.ts deleted file mode 100644 index 1f2d3108f074..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsOrgsUpdateSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates monitored Azure DevOps organization details. - * - * @summary Updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json - */ - -import type { AzureDevOpsOrg } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg: AzureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main(): Promise { - await updateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsProjectsCreateOrUpdateSample.ts deleted file mode 100644 index 926a55e3f3ef..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsCreateOrUpdateSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps project resource. - * - * @summary Creates or updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json - */ - -import type { AzureDevOpsProject } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject: AzureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsGetSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsProjectsGetSample.ts deleted file mode 100644 index 02ef5db112f1..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps project resource. - * - * @summary Returns a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - ); - console.log(result); -} - -async function main(): Promise { - await getAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsListSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsProjectsListSample.ts deleted file mode 100644 index cea4db6211c7..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of Azure DevOps projects onboarded to the connector. - * - * @summary Returns a list of Azure DevOps projects onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.azureDevOpsProjects.list( - resourceGroupName, - securityConnectorName, - orgName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsProjectsUpdateSample.ts deleted file mode 100644 index 44606ea57491..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsProjectsUpdateSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps project resource. - * - * @summary Updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json - */ - -import type { AzureDevOpsProject } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject: AzureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main(): Promise { - await updateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsReposCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsReposCreateOrUpdateSample.ts deleted file mode 100644 index d36b3dd812b5..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsReposCreateOrUpdateSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps repository resource. - * - * @summary Creates or updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json - */ - -import type { AzureDevOpsRepository } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository: AzureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsReposGetSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsReposGetSample.ts deleted file mode 100644 index 83e3f2f7dd55..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsReposGetSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps repository resource. - * - * @summary Returns a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - ); - console.log(result); -} - -async function main(): Promise { - await getAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsReposListSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsReposListSample.ts deleted file mode 100644 index e62fec7c35ca..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsReposListSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of Azure DevOps repositories onboarded to the connector. - * - * @summary Returns a list of Azure DevOps repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.azureDevOpsRepos.list( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/azureDevOpsReposUpdateSample.ts b/sdk/security/arm-security/samples-dev/azureDevOpsReposUpdateSample.ts deleted file mode 100644 index 739f94febb01..000000000000 --- a/sdk/security/arm-security/samples-dev/azureDevOpsReposUpdateSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps repository resource. - * - * @summary Updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json - */ - -import type { AzureDevOpsRepository } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository: AzureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main(): Promise { - await updateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/complianceResultsGetSample.ts b/sdk/security/arm-security/samples-dev/complianceResultsGetSample.ts deleted file mode 100644 index e09307b33915..000000000000 --- a/sdk/security/arm-security/samples-dev/complianceResultsGetSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Security Compliance Result - * - * @summary Security Compliance Result - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getComplianceResultsOnSubscription(): Promise { - const resourceId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceResultName = "DesignateMoreThanOneOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.complianceResults.get(resourceId, complianceResultName); - console.log(result); -} - -async function main(): Promise { - await getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/complianceResultsListSample.ts b/sdk/security/arm-security/samples-dev/complianceResultsListSample.ts deleted file mode 100644 index 5f99835673e2..000000000000 --- a/sdk/security/arm-security/samples-dev/complianceResultsListSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Security compliance results in the subscription - * - * @summary Security compliance results in the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getComplianceResultsOnSubscription(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.complianceResults.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/compliancesGetSample.ts b/sdk/security/arm-security/samples-dev/compliancesGetSample.ts deleted file mode 100644 index 003a12eb361b..000000000000 --- a/sdk/security/arm-security/samples-dev/compliancesGetSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of a specific Compliance. - * - * @summary Details of a specific Compliance. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityComplianceDataForADay(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceName = "2018-01-01Z"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.compliances.get(scope, complianceName); - console.log(result); -} - -async function main(): Promise { - await getSecurityComplianceDataForADay(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/compliancesListSample.ts b/sdk/security/arm-security/samples-dev/compliancesListSample.ts deleted file mode 100644 index e9a4dec6eb55..000000000000 --- a/sdk/security/arm-security/samples-dev/compliancesListSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to The Compliance scores of the specific management group. - * - * @summary The Compliance scores of the specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityComplianceDataOverTime(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.compliances.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityComplianceDataOverTime(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/connectorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/connectorsCreateOrUpdateSample.ts deleted file mode 100644 index e4387e4338d2..000000000000 --- a/sdk/security/arm-security/samples-dev/connectorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,116 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json - */ - -import type { ConnectorSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function awsAssumeRoleCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev2"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - authenticationType: "awsAssumeRole", - awsAssumeRoleArn: "arn:aws:iam::81231569658:role/AscConnector", - awsExternalId: "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsCredConnectorSubscription_example.json - */ -async function awsCredCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - authenticationType: "awsCreds", - awsAccessKeyId: "AKIARPZCNODDNAEQFSOE", - awsSecretAccessKey: "", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateGcpCredentialsConnectorSubscription_example.json - */ -async function gcpCredentialsCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "gcp_dev"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - type: "service_account", - authProviderX509CertUrl: "https://www.googleapis.com/oauth2/v1/certs", - authUri: "https://accounts.google.com/o/oauth2/auth", - authenticationType: "gcpCredentials", - clientEmail: "asc-135@asc-project-1234.iam.gserviceaccount.com", - clientId: "105889053725632919854", - clientX509CertUrl: - "https://www.googleapis.com/robot/v1/metadata/x509/asc-135%40asc-project-1234.iam.gserviceaccount.com", - organizationId: "AscDemoOrg", - privateKey: "******", - privateKeyId: "6efg587hra2568as34d22326b044cc20dc2af", - projectId: "asc-project-1234", - tokenUri: "https://oauth2.googleapis.com/token", - }, - hybridComputeSettings: { autoProvision: "Off" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -async function main(): Promise { - await awsAssumeRoleCreateACloudAccountConnectorForASubscription(); - await awsCredCreateACloudAccountConnectorForASubscription(); - await gcpCredentialsCreateACloudAccountConnectorForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/connectorsDeleteSample.ts b/sdk/security/arm-security/samples-dev/connectorsDeleteSample.ts deleted file mode 100644 index 49289d8d3d84..000000000000 --- a/sdk/security/arm-security/samples-dev/connectorsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete a cloud account connector from a subscription - * - * @summary Delete a cloud account connector from a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteACloudAccountConnectorFromASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.delete(connectorName); - console.log(result); -} - -async function main(): Promise { - await deleteACloudAccountConnectorFromASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/connectorsGetSample.ts b/sdk/security/arm-security/samples-dev/connectorsGetSample.ts deleted file mode 100644 index aa3211c97c8a..000000000000 --- a/sdk/security/arm-security/samples-dev/connectorsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of a specific cloud account connector - * - * @summary Details of a specific cloud account connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function detailsOfASpecificCloudAccountConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.get(connectorName); - console.log(result); -} - -async function main(): Promise { - await detailsOfASpecificCloudAccountConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/connectorsListSample.ts b/sdk/security/arm-security/samples-dev/connectorsListSample.ts deleted file mode 100644 index 66fe65d25fe3..000000000000 --- a/sdk/security/arm-security/samples-dev/connectorsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Cloud accounts connectors of a subscription - * - * @summary Cloud accounts connectors of a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllCloudAccountsConnectorsOfASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.connectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllCloudAccountsConnectorsOfASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsCreateSample.ts b/sdk/security/arm-security/samples-dev/customAssessmentAutomationsCreateSample.ts deleted file mode 100644 index 591151110e80..000000000000 --- a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsCreateSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * - * @summary Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json - */ - -import type { CustomAssessmentAutomationRequest } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const customAssessmentAutomationBody: CustomAssessmentAutomationRequest = { - description: "Data should be encrypted", - compressedQuery: - "DQAKAEkAYQBtAF8ARwByAG8AdQBwAA0ACgB8ACAAZQB4AHQAZQBuAGQAIABIAGUAYQBsAHQAaABTAHQAYQB0AHUAcwAgAD0AIABpAGYAZgAoAHQAbwBzAHQAcgBpAG4AZwAoAFIAZQBjAG8AcgBkAC4AVQBzAGUAcgBOAGEAbQBlACkAIABjAG8AbgB0AGEAaQBuAHMAIAAnAHUAcwBlAHIAJwAsACAAJwBVAE4ASABFAEEATABUAEgAWQAnACwAIAAnAEgARQBBAEwAVABIAFkAJwApAA0ACgA=", - displayName: "Password Policy", - remediationDescription: "Encrypt store by...", - severity: "Medium", - supportedCloud: "AWS", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.create( - resourceGroupName, - customAssessmentAutomationName, - customAssessmentAutomationBody, - ); - console.log(result); -} - -async function main(): Promise { - await createACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsDeleteSample.ts b/sdk/security/arm-security/samples-dev/customAssessmentAutomationsDeleteSample.ts deleted file mode 100644 index 4e2c928f453b..000000000000 --- a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsDeleteSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a custom assessment automation by name for a provided subscription - * - * @summary Deletes a custom assessment automation by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.delete( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main(): Promise { - await deleteACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsGetSample.ts b/sdk/security/arm-security/samples-dev/customAssessmentAutomationsGetSample.ts deleted file mode 100644 index c9f7e5c3a006..000000000000 --- a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsGetSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a single custom assessment automation by name for the provided subscription and resource group. - * - * @summary Gets a single custom assessment automation by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.get( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main(): Promise { - await getACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListByResourceGroupSample.ts deleted file mode 100644 index 46cbf4eea3f4..000000000000 --- a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListByResourceGroupSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription and resource group - * - * @summary List custom assessment automations by provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.customAssessmentAutomations.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListBySubscriptionSample.ts deleted file mode 100644 index 412131251c46..000000000000 --- a/sdk/security/arm-security/samples-dev/customAssessmentAutomationsListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription - * - * @summary List custom assessment automations by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listCustomAssessmentAutomationsInASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.customAssessmentAutomations.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listCustomAssessmentAutomationsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsCreateSample.ts b/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsCreateSample.ts deleted file mode 100644 index 6e5a0f29fd80..000000000000 --- a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsCreateSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates a custom entity store assignment for the provided subscription, if not already exists. - * - * @summary Creates a custom entity store assignment for the provided subscription, if not already exists. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json - */ - -import type { CustomEntityStoreAssignmentRequest } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const customEntityStoreAssignmentRequestBody: CustomEntityStoreAssignmentRequest = { - principal: "aaduser=f3923a3e-ad57-4752-b1a9-fbf3c8e5e082;72f988bf-86f1-41af-91ab-2d7cd011db47", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.create( - resourceGroupName, - customEntityStoreAssignmentName, - customEntityStoreAssignmentRequestBody, - ); - console.log(result); -} - -async function main(): Promise { - await createACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsDeleteSample.ts b/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsDeleteSample.ts deleted file mode 100644 index 3ffc49038b6e..000000000000 --- a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsDeleteSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete a custom entity store assignment by name for a provided subscription - * - * @summary Delete a custom entity store assignment by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.delete( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main(): Promise { - await deleteACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsGetSample.ts b/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsGetSample.ts deleted file mode 100644 index d6a53aeb35f8..000000000000 --- a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsGetSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a single custom entity store assignment by name for the provided subscription and resource group. - * - * @summary Gets a single custom entity store assignment by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.get( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main(): Promise { - await getACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListByResourceGroupSample.ts deleted file mode 100644 index 4b474997b859..000000000000 --- a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListByResourceGroupSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List custom entity store assignments by a provided subscription and resource group - * - * @summary List custom entity store assignments by a provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.customEntityStoreAssignments.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListBySubscriptionSample.ts deleted file mode 100644 index 51dbb4e63670..000000000000 --- a/sdk/security/arm-security/samples-dev/customEntityStoreAssignmentsListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List custom entity store assignments by provided subscription - * - * @summary List custom entity store assignments by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listCustomEntityStoreAssignmentsInASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.customEntityStoreAssignments.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listCustomEntityStoreAssignmentsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/defenderForStorageCreateSample.ts b/sdk/security/arm-security/samples-dev/defenderForStorageCreateSample.ts deleted file mode 100644 index 04ec3af27e12..000000000000 --- a/sdk/security/arm-security/samples-dev/defenderForStorageCreateSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates the Defender for Storage settings on a specified storage account. - * - * @summary Creates or updates the Defender for Storage settings on a specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json - */ - -import type { DefenderForStorageSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const defenderForStorageSetting: DefenderForStorageSetting = { - capGBPerMonth: -1, - isEnabledPropertiesMalwareScanningOnUploadIsEnabled: true, - overrideSubscriptionLevelSettings: true, - scanResultsEventGridTopicResourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.EventGrid/topics/sampletopic", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.create( - resourceId, - settingName, - defenderForStorageSetting, - ); - console.log(result); -} - -async function main(): Promise { - await createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/defenderForStorageGetSample.ts b/sdk/security/arm-security/samples-dev/defenderForStorageGetSample.ts deleted file mode 100644 index 022545f9c46d..000000000000 --- a/sdk/security/arm-security/samples-dev/defenderForStorageGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the Defender for Storage settings for the specified storage account. - * - * @summary Gets the Defender for Storage settings for the specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsTheDefenderForStorageSettingsForTheSpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.get(resourceId, settingName); - console.log(result); -} - -async function main(): Promise { - await getsTheDefenderForStorageSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsConfigurationsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/devOpsConfigurationsCreateOrUpdateSample.ts deleted file mode 100644 index 5fb37415e2f4..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsConfigurationsCreateOrUpdateSample.ts +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json - */ - -import type { DevOpsConfiguration } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Enabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardCurrentOnly(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardSelected(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - topLevelInventoryList: ["org1", "org2"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture(); - await createOrUpdateDevOpsConfigurationsOnboardCurrentOnly(); - await createOrUpdateDevOpsConfigurationsOnboardSelected(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsConfigurationsDeleteSample.ts b/sdk/security/arm-security/samples-dev/devOpsConfigurationsDeleteSample.ts deleted file mode 100644 index 5615905940db..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsConfigurationsDeleteSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a DevOps Connector. - * - * @summary Deletes a DevOps Connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginDeleteAndWait( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - await deleteDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsConfigurationsGetSample.ts b/sdk/security/arm-security/samples-dev/devOpsConfigurationsGetSample.ts deleted file mode 100644 index 048fcc0f8b7f..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsConfigurationsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a DevOps Configuration. - * - * @summary Gets a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.get(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main(): Promise { - await getDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsConfigurationsListSample.ts b/sdk/security/arm-security/samples-dev/devOpsConfigurationsListSample.ts deleted file mode 100644 index 28f1cca8cc5b..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsConfigurationsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List DevOps Configurations. - * - * @summary List DevOps Configurations. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.devOpsConfigurations.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsConfigurationsUpdateSample.ts b/sdk/security/arm-security/samples-dev/devOpsConfigurationsUpdateSample.ts deleted file mode 100644 index 34b74654fe92..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsConfigurationsUpdateSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a DevOps Configuration. - * - * @summary Updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json - */ - -import type { DevOpsConfiguration } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { autoDiscovery: "Enabled" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main(): Promise { - await updateDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/devOpsOperationResultsGetSample.ts b/sdk/security/arm-security/samples-dev/devOpsOperationResultsGetSample.ts deleted file mode 100644 index ef000ef05730..000000000000 --- a/sdk/security/arm-security/samples-dev/devOpsOperationResultsGetSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getDevOpsOperationResultsFailed(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "8d4caace-e7b3-4b3e-af99-73f76829ebcf"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json - */ -async function getDevOpsOperationResultsSucceeded(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "4e826cf1-5c36-4808-a7d2-fb4f5170978b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -async function main(): Promise { - await getDevOpsOperationResultsFailed(); - await getDevOpsOperationResultsSucceeded(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/deviceSecurityGroupsCreateOrUpdateSample.ts deleted file mode 100644 index dc7d9f2f2d0f..000000000000 --- a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsCreateOrUpdateSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to creates or updates the device security group on a specified IoT Hub resource. - * - * @summary Use this method to creates or updates the device security group on a specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json - */ - -import type { DeviceSecurityGroup } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const deviceSecurityGroup: DeviceSecurityGroup = { - timeWindowRules: [ - { - isEnabled: true, - maxThreshold: 30, - minThreshold: 0, - ruleType: "ActiveConnectionsNotInAllowedRange", - timeWindowSize: "PT05M", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.createOrUpdate( - resourceId, - deviceSecurityGroupName, - deviceSecurityGroup, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsDeleteSample.ts b/sdk/security/arm-security/samples-dev/deviceSecurityGroupsDeleteSample.ts deleted file mode 100644 index fa981d249df6..000000000000 --- a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to User this method to deletes the device security group. - * - * @summary User this method to deletes the device security group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.delete(resourceId, deviceSecurityGroupName); - console.log(result); -} - -async function main(): Promise { - await deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsGetSample.ts b/sdk/security/arm-security/samples-dev/deviceSecurityGroupsGetSample.ts deleted file mode 100644 index 3b1205750fc1..000000000000 --- a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the device security group for the specified IoT Hub resource. - * - * @summary Use this method to get the device security group for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.get(resourceId, deviceSecurityGroupName); - console.log(result); -} - -async function main(): Promise { - await getADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsListSample.ts b/sdk/security/arm-security/samples-dev/deviceSecurityGroupsListSample.ts deleted file mode 100644 index 8f0566895f5a..000000000000 --- a/sdk/security/arm-security/samples-dev/deviceSecurityGroupsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method get the list of device security groups for the specified IoT Hub resource. - * - * @summary Use this method get the list of device security groups for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.deviceSecurityGroups.list(resourceId)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsGetSample.ts b/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsGetSample.ts deleted file mode 100644 index a0545b80c348..000000000000 --- a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a specific discovered Security Solution. - * - * @summary Gets a specific discovered Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getDiscoveredSecuritySolutionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const discoveredSecuritySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.discoveredSecuritySolutions.get( - resourceGroupName, - ascLocation, - discoveredSecuritySolutionName, - ); - console.log(result); -} - -async function main(): Promise { - await getDiscoveredSecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListByHomeRegionSample.ts deleted file mode 100644 index c18963eb1ac2..000000000000 --- a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListByHomeRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription and location. - * - * @summary Gets a list of discovered Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getDiscoveredSecuritySolutionsFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.discoveredSecuritySolutions.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getDiscoveredSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListSample.ts b/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListSample.ts deleted file mode 100644 index 6a2e0360e584..000000000000 --- a/sdk/security/arm-security/samples-dev/discoveredSecuritySolutionsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription. - * - * @summary Gets a list of discovered Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getDiscoveredSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.discoveredSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getDiscoveredSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsGetSample.ts b/sdk/security/arm-security/samples-dev/externalSecuritySolutionsGetSample.ts deleted file mode 100644 index 4e2089c66c2c..000000000000 --- a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a specific external Security Solution. - * - * @summary Gets a specific external Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getExternalSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "defaultresourcegroup-eus"; - const ascLocation = "centralus"; - const externalSecuritySolutionsName = - "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.externalSecuritySolutions.get( - resourceGroupName, - ascLocation, - externalSecuritySolutionsName, - ); - console.log(result); -} - -async function main(): Promise { - await getExternalSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListByHomeRegionSample.ts deleted file mode 100644 index 7e97280a7ab9..000000000000 --- a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListByHomeRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of external Security Solutions for the subscription and location. - * - * @summary Gets a list of external Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.externalSecuritySolutions.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListSample.ts b/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListSample.ts deleted file mode 100644 index 2cef9c460141..000000000000 --- a/sdk/security/arm-security/samples-dev/externalSecuritySolutionsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of external security solutions for the subscription. - * - * @summary Gets a list of external security solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getExternalSecuritySolutionsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.externalSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getExternalSecuritySolutionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/getSensitivitySettingsSample.ts b/sdk/security/arm-security/samples-dev/getSensitivitySettingsSample.ts deleted file mode 100644 index 92aab7f47639..000000000000 --- a/sdk/security/arm-security/samples-dev/getSensitivitySettingsSample.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets data sensitivity settings for sensitive data discovery - * - * @summary Gets data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSensitivitySettings(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.getSensitivitySettings(); - console.log(result); -} - -async function main(): Promise { - await getSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitHubOwnersGetSample.ts b/sdk/security/arm-security/samples-dev/gitHubOwnersGetSample.ts deleted file mode 100644 index c3e54bcdb2b9..000000000000 --- a/sdk/security/arm-security/samples-dev/gitHubOwnersGetSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored GitHub owner. - * - * @summary Returns a monitored GitHub owner. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.get(resourceGroupName, securityConnectorName, ownerName); - console.log(result); -} - -async function main(): Promise { - await getGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitHubOwnersListAvailableSample.ts b/sdk/security/arm-security/samples-dev/gitHubOwnersListAvailableSample.ts deleted file mode 100644 index f8a1d33d19d0..000000000000 --- a/sdk/security/arm-security/samples-dev/gitHubOwnersListAvailableSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAvailableGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.listAvailable(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main(): Promise { - await listAvailableGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitHubOwnersListSample.ts b/sdk/security/arm-security/samples-dev/gitHubOwnersListSample.ts deleted file mode 100644 index 09f73798d594..000000000000 --- a/sdk/security/arm-security/samples-dev/gitHubOwnersListSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of GitHub owners onboarded to the connector. - * - * @summary Returns a list of GitHub owners onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.gitHubOwners.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitHubReposGetSample.ts b/sdk/security/arm-security/samples-dev/gitHubReposGetSample.ts deleted file mode 100644 index f57fb3734716..000000000000 --- a/sdk/security/arm-security/samples-dev/gitHubReposGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored GitHub repository. - * - * @summary Returns a monitored GitHub repository. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGitHubRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const repoName = "myGitHubRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubRepos.get( - resourceGroupName, - securityConnectorName, - ownerName, - repoName, - ); - console.log(result); -} - -async function main(): Promise { - await getGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitHubReposListSample.ts b/sdk/security/arm-security/samples-dev/gitHubReposListSample.ts deleted file mode 100644 index f36b0fc99ee3..000000000000 --- a/sdk/security/arm-security/samples-dev/gitHubReposListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of GitHub repositories onboarded to the connector. - * - * @summary Returns a list of GitHub repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGitHubRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.gitHubRepos.list( - resourceGroupName, - securityConnectorName, - ownerName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabGroupsGetSample.ts b/sdk/security/arm-security/samples-dev/gitLabGroupsGetSample.ts deleted file mode 100644 index 868bdf6ffc65..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabGroupsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored GitLab Group resource for a given fully-qualified name. - * - * @summary Returns a monitored GitLab Group resource for a given fully-qualified name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.get( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main(): Promise { - await getGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabGroupsListAvailableSample.ts b/sdk/security/arm-security/samples-dev/gitLabGroupsListAvailableSample.ts deleted file mode 100644 index c67364ff8447..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabGroupsListAvailableSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAvailableGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.listAvailable(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main(): Promise { - await listAvailableGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabGroupsListSample.ts b/sdk/security/arm-security/samples-dev/gitLabGroupsListSample.ts deleted file mode 100644 index 95dcb89b6671..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabGroupsListSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a list of GitLab groups onboarded to the connector. - * - * @summary Returns a list of GitLab groups onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.gitLabGroups.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabProjectsGetSample.ts b/sdk/security/arm-security/samples-dev/gitLabProjectsGetSample.ts deleted file mode 100644 index 9abdc44deaae..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabProjectsGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * - * @summary Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGitLabProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const projectName = "myGitLabProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabProjects.get( - resourceGroupName, - securityConnectorName, - groupFQName, - projectName, - ); - console.log(result); -} - -async function main(): Promise { - await getGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabProjectsListSample.ts b/sdk/security/arm-security/samples-dev/gitLabProjectsListSample.ts deleted file mode 100644 index 7d4f0eb7cfd2..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabProjectsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * - * @summary Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGitLabProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.gitLabProjects.list( - resourceGroupName, - securityConnectorName, - groupFQName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/gitLabSubgroupsListSample.ts b/sdk/security/arm-security/samples-dev/gitLabSubgroupsListSample.ts deleted file mode 100644 index 30ed65b3a9d6..000000000000 --- a/sdk/security/arm-security/samples-dev/gitLabSubgroupsListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * - * @summary Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGitLabSubgroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabSubgroups.list( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main(): Promise { - await listGitLabSubgroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceAssignmentsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/governanceAssignmentsCreateOrUpdateSample.ts deleted file mode 100644 index ab8a92bb3ae8..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceAssignmentsCreateOrUpdateSample.ts +++ /dev/null @@ -1,54 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a governance assignment on the given subscription. - * - * @summary Creates or updates a governance assignment on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json - */ - -import type { GovernanceAssignment } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createGovernanceAssignment(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const governanceAssignment: GovernanceAssignment = { - additionalData: { - ticketLink: "https://snow.com", - ticketNumber: 123123, - ticketStatus: "Active", - }, - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isGracePeriod: true, - owner: "user@contoso.com", - remediationDueDate: new Date("2022-01-07T13:00:00.0000000Z"), - remediationEta: { - eta: new Date("2022-01-08T13:00:00.0000000Z"), - justification: "Justification of ETA", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.createOrUpdate( - scope, - assessmentName, - assignmentKey, - governanceAssignment, - ); - console.log(result); -} - -async function main(): Promise { - await createGovernanceAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceAssignmentsDeleteSample.ts b/sdk/security/arm-security/samples-dev/governanceAssignmentsDeleteSample.ts deleted file mode 100644 index 446641b85898..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceAssignmentsDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete a GovernanceAssignment over a given scope - * - * @summary Delete a GovernanceAssignment over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteSecurityAssignment(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.delete(scope, assessmentName, assignmentKey); - console.log(result); -} - -async function main(): Promise { - await deleteSecurityAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceAssignmentsGetSample.ts b/sdk/security/arm-security/samples-dev/governanceAssignmentsGetSample.ts deleted file mode 100644 index 33231cb65ae6..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceAssignmentsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a specific governanceAssignment for the requested scope by AssignmentKey - * - * @summary Get a specific governanceAssignment for the requested scope by AssignmentKey - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGovernanceAssignmentBySpecificGovernanceAssignmentKey(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.get(scope, assessmentName, assignmentKey); - console.log(result); -} - -async function main(): Promise { - await getGovernanceAssignmentBySpecificGovernanceAssignmentKey(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceAssignmentsListSample.ts b/sdk/security/arm-security/samples-dev/governanceAssignmentsListSample.ts deleted file mode 100644 index e1d0ac060dd3..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceAssignmentsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get governance assignments on all of your resources inside a scope - * - * @summary Get governance assignments on all of your resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGovernanceAssignments(): Promise { - const scope = "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.governanceAssignments.list(scope, assessmentName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGovernanceAssignments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesCreateOrUpdateSample.ts deleted file mode 100644 index fa0e55adc254..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesCreateOrUpdateSample.ts +++ /dev/null @@ -1,144 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json - */ - -import type { GovernanceRule } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule for a management group", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Management group rule", - excludedScopes: ["/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"], - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule on critical GCP recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "GCP Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule for critical recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateGovernanceRuleOverManagementGroupScope(); - await createOrUpdateGovernanceRuleOverSecurityConnectorScope(); - await createOrUpdateGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesDeleteSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesDeleteSample.ts deleted file mode 100644 index 4eaa0e8bbebf..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesDeleteSample.ts +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -async function main(): Promise { - await deleteAGovernanceRuleOverManagementGroupScope(); - await deleteAGovernanceRuleOverSecurityConnectorScope(); - await deleteAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesExecuteSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesExecuteSample.ts deleted file mode 100644 index e91824e6b1b8..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesExecuteSample.ts +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function executeGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json - */ -async function executeGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json - */ -async function executeGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -async function main(): Promise { - await executeGovernanceRuleOverSubscriptionScope(); - await executeGovernanceRuleOverManagementGroupScope(); - await executeGovernanceRuleOverSecurityConnectorScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesGetSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesGetSample.ts deleted file mode 100644 index e4ad04a57394..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesGetSample.ts +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -async function main(): Promise { - await getAGovernanceRuleOverManagementGroupScope(); - await getAGovernanceRuleOverSecurityConnectorScope(); - await getAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesListSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesListSample.ts deleted file mode 100644 index e7684c16d352..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesListSample.ts +++ /dev/null @@ -1,67 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listGovernanceRulesByManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json - */ -async function listGovernanceRulesBySecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json - */ -async function listGovernanceRulesBySubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listGovernanceRulesByManagementGroupScope(); - await listGovernanceRulesBySecurityConnectorScope(); - await listGovernanceRulesBySubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/governanceRulesOperationResultsSample.ts b/sdk/security/arm-security/samples-dev/governanceRulesOperationResultsSample.ts deleted file mode 100644 index d7ab92ae864b..000000000000 --- a/sdk/security/arm-security/samples-dev/governanceRulesOperationResultsSample.ts +++ /dev/null @@ -1,64 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getGovernanceRulesLongRunOperationResultOverManagementGroup(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSecurityConnector(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSubscription(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -async function main(): Promise { - await getGovernanceRulesLongRunOperationResultOverManagementGroup(); - await getGovernanceRulesLongRunOperationResultOverSecurityConnector(); - await getGovernanceRulesLongRunOperationResultOverSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/healthReportsGetSample.ts b/sdk/security/arm-security/samples-dev/healthReportsGetSample.ts deleted file mode 100644 index d8f88aa31c49..000000000000 --- a/sdk/security/arm-security/samples-dev/healthReportsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get health report of resource - * - * @summary Get health report of resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getHealthReportOfResource(): Promise { - const resourceId = - "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2/resourcegroups/E2E-IBB0WX/providers/Microsoft.Security/securityconnectors/AwsConnectorAllOfferings"; - const healthReportName = "909c629a-bf39-4521-8e4f-10b443a0bc02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.healthReports.get(resourceId, healthReportName); - console.log(result); -} - -async function main(): Promise { - await getHealthReportOfResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/healthReportsListSample.ts b/sdk/security/arm-security/samples-dev/healthReportsListSample.ts deleted file mode 100644 index 7381b21b7b54..000000000000 --- a/sdk/security/arm-security/samples-dev/healthReportsListSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * - * @summary Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listHealthReports(): Promise { - const scope = "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.healthReports.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listHealthReports(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/informationProtectionPoliciesCreateOrUpdateSample.ts deleted file mode 100644 index 49bfa4138253..000000000000 --- a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesCreateOrUpdateSample.ts +++ /dev/null @@ -1,71 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json - */ - -import type { InformationProtectionPolicy } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateAnInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const informationProtectionPolicy: InformationProtectionPolicy = { - informationTypes: { - "3bf3549199b841f286d5C1200a7df658": { - custom: true, - displayName: "Custom", - enabled: true, - keywords: [{ canBeNumeric: true, custom: true, pattern: "%custom%" }], - order: 1400, - recommendedLabelId: "7aa516c7-5a53-4857-bc6e-6808c6acd542", - }, - "7fb9419d24734ad88e11B25cc8cf6a07": { - custom: false, - displayName: "Networking", - enabled: true, - keywords: [{ canBeNumeric: false, custom: true, pattern: "%networking%" }], - order: 100, - recommendedLabelId: "575739d2-3d53-4df0-9042-4c7772d5c7b1", - }, - }, - labels: { - "1345da73Bc5a4a8fB7dd3820eb713da8": { - displayName: "Public", - enabled: true, - order: 100, - }, - "575739d23d534df090424c7772d5c7b1": { - displayName: "Confidential", - enabled: true, - order: 300, - }, - "7aa516c75a534857Bc6e6808c6acd542": { - displayName: "General", - enabled: true, - order: 200, - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.createOrUpdate( - scope, - informationProtectionPolicyName, - informationProtectionPolicy, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateAnInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesGetSample.ts b/sdk/security/arm-security/samples-dev/informationProtectionPoliciesGetSample.ts deleted file mode 100644 index 1d9d255589be..000000000000 --- a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesGetSample.ts +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheCustomizedInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json - */ -async function getTheEffectiveInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "effective"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - await getTheCustomizedInformationProtectionPolicyForAManagementGroup(); - await getTheEffectiveInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesListSample.ts b/sdk/security/arm-security/samples-dev/informationProtectionPoliciesListSample.ts deleted file mode 100644 index ef4284733a83..000000000000 --- a/sdk/security/arm-security/samples-dev/informationProtectionPoliciesListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Information protection policies of a specific management group. - * - * @summary Information protection policies of a specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getInformationProtectionPolicies(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.informationProtectionPolicies.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getInformationProtectionPolicies(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsGetSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsGetSample.ts deleted file mode 100644 index fc3cd16da678..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get IoT Security Analytics metrics. - * - * @summary Use this method to get IoT Security Analytics metrics. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecuritySolutionAnalytics(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.get(resourceGroupName, solutionName); - console.log(result); -} - -async function main(): Promise { - await getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsListSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsListSample.ts deleted file mode 100644 index 7ad71972e55b..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionAnalyticsListSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get IoT security Analytics metrics in an array. - * - * @summary Use this method to get IoT security Analytics metrics in an array. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecuritySolutionAnalytics(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.list(resourceGroupName, solutionName); - console.log(result); -} - -async function main(): Promise { - await getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionCreateOrUpdateSample.ts deleted file mode 100644 index 9d70e1171cde..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionCreateOrUpdateSample.ts +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to create or update yours IoT Security solution - * - * @summary Use this method to create or update yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json - */ - -import type { IoTSecuritySolutionModel } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateAIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const iotSecuritySolutionData: IoTSecuritySolutionModel = { - disabledDataSources: [], - displayName: "Solution Default", - export: [], - iotHubs: [ - "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub", - ], - location: "East Us", - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - status: "Enabled", - tags: {}, - unmaskedIpLoggingStatus: "Enabled", - userDefinedResources: { - query: 'where type != "microsoft.devices/iothubs" | where name contains "iot"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - workspace: - "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.createOrUpdate( - resourceGroupName, - solutionName, - iotSecuritySolutionData, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionDeleteSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionDeleteSample.ts deleted file mode 100644 index abef0c89355e..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to delete yours IoT Security solution - * - * @summary Use this method to delete yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAnIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.delete(resourceGroupName, solutionName); - console.log(result); -} - -async function main(): Promise { - await deleteAnIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionGetSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionGetSample.ts deleted file mode 100644 index 60d5e431126b..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to User this method to get details of a specific IoT Security solution based on solution name - * - * @summary User this method to get details of a specific IoT Security solution based on solution name - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.get(resourceGroupName, solutionName); - console.log(result); -} - -async function main(): Promise { - await getAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionListByResourceGroupSample.ts deleted file mode 100644 index 657e1ceab603..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionListByResourceGroupSample.ts +++ /dev/null @@ -1,61 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json - */ - -import type { IotSecuritySolutionListByResourceGroupOptionalParams } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listIoTSecuritySolutionsByResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolution.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json - */ -async function listIoTSecuritySolutionsByResourceGroupAndIoTHub(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyRg"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options: IotSecuritySolutionListByResourceGroupOptionalParams = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolution.listByResourceGroup( - resourceGroupName, - options, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listIoTSecuritySolutionsByResourceGroup(); - await listIoTSecuritySolutionsByResourceGroupAndIoTHub(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionListBySubscriptionSample.ts deleted file mode 100644 index 0ea44f2b968f..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionListBySubscriptionSample.ts +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json - */ - -import type { IotSecuritySolutionListBySubscriptionOptionalParams } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listIoTSecuritySolutionsByIoTHub(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options: IotSecuritySolutionListBySubscriptionOptionalParams = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolution.listBySubscription(options)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json - */ -async function listIoTSecuritySolutionsBySubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolution.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listIoTSecuritySolutionsByIoTHub(); - await listIoTSecuritySolutionsBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionUpdateSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionUpdateSample.ts deleted file mode 100644 index 06952dacafee..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionUpdateSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * - * @summary Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json - */ - -import type { UpdateIotSecuritySolutionData } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function useThisMethodToUpdateExistingIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const solutionName = "default"; - const updateIotSecuritySolutionData: UpdateIotSecuritySolutionData = { - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - tags: { foo: "bar" }, - userDefinedResources: { - query: 'where type != "microsoft.devices/iothubs" | where name contains "v2"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.update( - resourceGroupName, - solutionName, - updateIotSecuritySolutionData, - ); - console.log(result); -} - -async function main(): Promise { - await useThisMethodToUpdateExistingIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts deleted file mode 100644 index 11ad92d379d5..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to dismiss an aggregated IoT Security Solution Alert. - * - * @summary Use this method to dismiss an aggregated IoT Security Solution Alert. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function dismissAnAggregatedIoTSecuritySolutionAlert(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02/dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsAggregatedAlert.dismiss( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main(): Promise { - await dismissAnAggregatedIoTSecuritySolutionAlert(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts deleted file mode 100644 index eff6bc118a91..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * - * @summary Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsAggregatedAlert.get( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main(): Promise { - await getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts deleted file mode 100644 index 91f1dd621b9f..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the aggregated alert list of yours IoT Security solution. - * - * @summary Use this method to get the aggregated alert list of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheAggregatedAlertListOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolutionsAnalyticsAggregatedAlert.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getTheAggregatedAlertListOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts deleted file mode 100644 index 4e721829bcaf..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * - * @summary Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedRecommendationName = "OpenPortsOnDevice"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsRecommendation.get( - resourceGroupName, - solutionName, - aggregatedRecommendationName, - ); - console.log(result); -} - -async function main(): Promise { - await getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationListSample.ts b/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationListSample.ts deleted file mode 100644 index 9b7abaeaf847..000000000000 --- a/sdk/security/arm-security/samples-dev/iotSecuritySolutionsAnalyticsRecommendationListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * - * @summary Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.iotSecuritySolutionsAnalyticsRecommendation.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesCreateOrUpdateSample.ts deleted file mode 100644 index 0c2db6b6e17c..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesCreateOrUpdateSample.ts +++ /dev/null @@ -1,84 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Create a policy for protecting resources using Just-in-Time access control - * - * @summary Create a policy for protecting resources using Just-in-Time access control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json - */ - -import type { JitNetworkAccessPolicy } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body: JitNetworkAccessPolicy = { - name: "default", - type: "Microsoft.Security/locations/jitNetworkAccessPolicies", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", - kind: "Basic", - location: "westeurope", - provisioningState: "Succeeded", - requests: [ - { - requestor: "barbara@contoso.com", - startTimeUtc: new Date("2018-05-17T08:06:45.5691611Z"), - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "192.127.0.2", - endTimeUtc: new Date("2018-05-17T09:06:45.5691611Z"), - number: 3389, - status: "Initiated", - statusReason: "UserRequested", - }, - ], - }, - ], - }, - ], - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 22, - protocol: "*", - }, - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 3389, - protocol: "*", - }, - ], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.createOrUpdate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main(): Promise { - await createJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesDeleteSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesDeleteSample.ts deleted file mode 100644 index 26fe2dc5b192..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesDeleteSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete a Just-in-Time access control policy. - * - * @summary Delete a Just-in-Time access control policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.delete( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - await deleteAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesGetSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesGetSample.ts deleted file mode 100644 index 2e60ced9701d..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.get( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - await getJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesInitiateSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesInitiateSample.ts deleted file mode 100644 index b141a15ab74c..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesInitiateSample.ts +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Initiate a JIT access from a specific Just-in-Time policy configuration. - * - * @summary Initiate a JIT access from a specific Just-in-Time policy configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json - */ - -import type { JitNetworkAccessPolicyInitiateRequest } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function initiateAnActionOnAJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body: JitNetworkAccessPolicyInitiateRequest = { - justification: "testing a new version of the product", - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { allowedSourceAddressPrefix: "192.127.0.2", number: 3389, endTimeUtc: new Date() }, - ], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.initiate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main(): Promise { - await initiateAnActionOnAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByRegionSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByRegionSample.ts deleted file mode 100644 index 729de73b5971..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.jitNetworkAccessPolicies.listByRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts deleted file mode 100644 index 7b614f93c7e1..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.jitNetworkAccessPolicies.listByResourceGroupAndRegion( - resourceGroupName, - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupSample.ts deleted file mode 100644 index 24bbe6fe3e1d..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListByResourceGroupSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getJitNetworkAccessPoliciesOnAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.jitNetworkAccessPolicies.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getJitNetworkAccessPoliciesOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListSample.ts b/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListSample.ts deleted file mode 100644 index 792c0c577ad1..000000000000 --- a/sdk/security/arm-security/samples-dev/jitNetworkAccessPoliciesListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control. - * - * @summary Policies for protecting resources using Just-in-Time access control. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getJitNetworkAccessPoliciesOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.jitNetworkAccessPolicies.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getJitNetworkAccessPoliciesOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/locationsGetSample.ts b/sdk/security/arm-security/samples-dev/locationsGetSample.ts deleted file mode 100644 index daf904b780fa..000000000000 --- a/sdk/security/arm-security/samples-dev/locationsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details of a specific location - * - * @summary Details of a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.locations.get(ascLocation); - console.log(result); -} - -async function main(): Promise { - await getSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/locationsListSample.ts b/sdk/security/arm-security/samples-dev/locationsListSample.ts deleted file mode 100644 index 2da8fee6b75b..000000000000 --- a/sdk/security/arm-security/samples-dev/locationsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * - * @summary The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityDataLocations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.locations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityDataLocations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/mdeOnboardingsGetSample.ts b/sdk/security/arm-security/samples-dev/mdeOnboardingsGetSample.ts deleted file mode 100644 index fc285659600d..000000000000 --- a/sdk/security/arm-security/samples-dev/mdeOnboardingsGetSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to The default configuration or data needed to onboard the machine to MDE - * - * @summary The default configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.get(); - console.log(result); -} - -async function main(): Promise { - await theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/mdeOnboardingsListSample.ts b/sdk/security/arm-security/samples-dev/mdeOnboardingsListSample.ts deleted file mode 100644 index 7783fcb7a710..000000000000 --- a/sdk/security/arm-security/samples-dev/mdeOnboardingsListSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to The configuration or data needed to onboard the machine to MDE - * - * @summary The configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function theConfigurationOrDataNeededToOnboardTheMachineToMde(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.list(); - console.log(result); -} - -async function main(): Promise { - await theConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/pricingsDeleteSample.ts b/sdk/security/arm-security/samples-dev/pricingsDeleteSample.ts deleted file mode 100644 index a9d1ac326c20..000000000000 --- a/sdk/security/arm-security/samples-dev/pricingsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * - * @summary Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAPricingOnResource(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.delete(scopeId, pricingName); - console.log(result); -} - -async function main(): Promise { - await deleteAPricingOnResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/pricingsGetSample.ts b/sdk/security/arm-security/samples-dev/pricingsGetSample.ts deleted file mode 100644 index 64bf2ae06500..000000000000 --- a/sdk/security/arm-security/samples-dev/pricingsGetSample.ts +++ /dev/null @@ -1,109 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getPricingsOnResourceVirtualMachinesPlan(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json - */ -async function getPricingsOnSubscriptionCloudPosturePlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json - */ -async function getPricingsOnSubscriptionContainersPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Containers"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json - */ -async function getPricingsOnSubscriptionDnsPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Dns"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json - */ -async function getPricingsOnSubscriptionStorageAccountsPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "StorageAccounts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json - */ -async function getPricingsOnSubscriptionVirtualMachinesPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -async function main(): Promise { - await getPricingsOnResourceVirtualMachinesPlan(); - await getPricingsOnSubscriptionCloudPosturePlan(); - await getPricingsOnSubscriptionContainersPlan(); - await getPricingsOnSubscriptionDnsPlan(); - await getPricingsOnSubscriptionStorageAccountsPlan(); - await getPricingsOnSubscriptionVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/pricingsListSample.ts b/sdk/security/arm-security/samples-dev/pricingsListSample.ts deleted file mode 100644 index 668133c1b7ba..000000000000 --- a/sdk/security/arm-security/samples-dev/pricingsListSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getPricingsOnResource(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json - */ -async function getPricingsOnSubscription(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json - */ -async function getPricingsOnSubscriptionWithPlansFilter(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -async function main(): Promise { - await getPricingsOnResource(); - await getPricingsOnSubscription(); - await getPricingsOnSubscriptionWithPlansFilter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/pricingsUpdateSample.ts b/sdk/security/arm-security/samples-dev/pricingsUpdateSample.ts deleted file mode 100644 index 034f86c27a93..000000000000 --- a/sdk/security/arm-security/samples-dev/pricingsUpdateSample.ts +++ /dev/null @@ -1,86 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json - */ - -import type { Pricing } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updatePricingOnResourceExampleForVirtualMachinesPlan(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "virtualMachines"; - const pricing: Pricing = { pricingTier: "Standard", subPlan: "P1" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing: Pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing: Pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json - */ -async function updatePricingOnSubscriptionExampleForVirtualMachinesPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const pricing: Pricing = { - enforce: "True", - pricingTier: "Standard", - subPlan: "P2", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -async function main(): Promise { - await updatePricingOnResourceExampleForVirtualMachinesPlan(); - await updatePricingOnSubscriptionExampleForCloudPosturePlan(); - await updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess(); - await updatePricingOnSubscriptionExampleForVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsGetSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsGetSample.ts deleted file mode 100644 index 5a59a76a87d4..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Supported regulatory compliance details and state for selected assessment - * - * @summary Supported regulatory compliance details and state for selected assessment - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSelectedRegulatoryComplianceAssessmentDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const regulatoryComplianceAssessmentName = "968548cb-02b3-8cd2-11f8-0cf64ab1a347"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceAssessments.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - regulatoryComplianceAssessmentName, - ); - console.log(result); -} - -async function main(): Promise { - await getSelectedRegulatoryComplianceAssessmentDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsListSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsListSample.ts deleted file mode 100644 index 30e218d3f79d..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceAssessmentsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Details and state of assessments mapped to selected regulatory compliance control - * - * @summary Details and state of assessments mapped to selected regulatory compliance control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllAssessmentsMappedToSelectedRegulatoryComplianceControl(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.regulatoryComplianceAssessments.list( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllAssessmentsMappedToSelectedRegulatoryComplianceControl(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsGetSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsGetSample.ts deleted file mode 100644 index 566b9aeb158f..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsGetSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Selected regulatory compliance control details and state - * - * @summary Selected regulatory compliance control details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSelectedRegulatoryComplianceControlDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceControls.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - ); - console.log(result); -} - -async function main(): Promise { - await getSelectedRegulatoryComplianceControlDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsListSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsListSample.ts deleted file mode 100644 index d0333ab184f0..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceControlsListSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to All supported regulatory compliance controls details and state for selected standard - * - * @summary All supported regulatory compliance controls details and state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.regulatoryComplianceControls.list( - regulatoryComplianceStandardName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsGetSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsGetSample.ts deleted file mode 100644 index 6bcbef49d164..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Supported regulatory compliance details state for selected standard - * - * @summary Supported regulatory compliance details state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSelectedRegulatoryComplianceStandardDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceStandards.get(regulatoryComplianceStandardName); - console.log(result); -} - -async function main(): Promise { - await getSelectedRegulatoryComplianceStandardDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsListSample.ts b/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsListSample.ts deleted file mode 100644 index c1fa6afa81d1..000000000000 --- a/sdk/security/arm-security/samples-dev/regulatoryComplianceStandardsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Supported regulatory compliance standards details and state - * - * @summary Supported regulatory compliance standards details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAllSupportedRegulatoryComplianceStandardsDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.regulatoryComplianceStandards.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getAllSupportedRegulatoryComplianceStandardsDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListBySubscriptionSample.ts deleted file mode 100644 index 11b39c393dd3..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to For a specified subscription, list the available security controls, their assessments, and the max score - * - * @summary For a specified subscription, list the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityControlsDefinitionBySubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.secureScoreControlDefinitions.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityControlsDefinitionBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListSample.ts b/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListSample.ts deleted file mode 100644 index 7f5c65aa36dd..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoreControlDefinitionsListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List the available security controls, their assessments, and the max score - * - * @summary List the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityControlsDefinition(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.secureScoreControlDefinitions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityControlsDefinition(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoreControlsListBySecureScoreSample.ts b/sdk/security/arm-security/samples-dev/secureScoreControlsListBySecureScoreSample.ts deleted file mode 100644 index 12e03683ab99..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoreControlsListBySecureScoreSample.ts +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json - */ - -import type { SecureScoreControlsListBySecureScoreOptionalParams } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.secureScoreControls.listBySecureScore(secureScoreName)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json - */ -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const expand = "definition"; - const options: SecureScoreControlsListBySecureScoreOptionalParams = { - expand, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.secureScoreControls.listBySecureScore(secureScoreName, options)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative(); - await getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoreControlsListSample.ts b/sdk/security/arm-security/samples-dev/secureScoreControlsListSample.ts deleted file mode 100644 index 1f6a839f3144..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoreControlsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get all security controls within a scope - * - * @summary Get all security controls within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllSecureScoresControls(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.secureScoreControls.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllSecureScoresControls(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoresGetSample.ts b/sdk/security/arm-security/samples-dev/secureScoresGetSample.ts deleted file mode 100644 index 171d8e042b5b..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoresGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * - * @summary Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSingleSecureScore(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.secureScores.get(secureScoreName); - console.log(result); -} - -async function main(): Promise { - await getSingleSecureScore(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/secureScoresListSample.ts b/sdk/security/arm-security/samples-dev/secureScoresListSample.ts deleted file mode 100644 index 485d72632e27..000000000000 --- a/sdk/security/arm-security/samples-dev/secureScoresListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * - * @summary List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecureScores(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.secureScores.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecureScores(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorApplicationCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorApplicationCreateOrUpdateSample.ts deleted file mode 100644 index 48c07ccd794c..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorApplicationCreateOrUpdateSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or update a security Application on the given security connector. - * - * @summary Creates or update a security Application on the given security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json - */ - -import type { Application } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application: Application = { - description: "An application on critical GCP recommendations", - conditionSets: [ - { - conditions: [{ operator: "contains", property: "$.Id", value: "-prod-" }], - }, - ], - displayName: "GCP Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.createOrUpdate( - resourceGroupName, - securityConnectorName, - applicationId, - application, - ); - console.log(result); -} - -async function main(): Promise { - await createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorApplicationDeleteSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorApplicationDeleteSample.ts deleted file mode 100644 index 07986dbec00c..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorApplicationDeleteSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteSecurityApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.delete( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main(): Promise { - await deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorApplicationGetSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorApplicationGetSample.ts deleted file mode 100644 index a145515f3911..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorApplicationGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityApplicationsBySpecificApplicationId(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.get( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main(): Promise { - await getSecurityApplicationsBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorApplicationsListSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorApplicationsListSample.ts deleted file mode 100644 index 49fb798ac016..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorApplicationsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a list of all relevant applications over a security connector level scope - * - * @summary Get a list of all relevant applications over a security connector level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityApplicationsBySecurityConnectorLevelScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.securityConnectorApplications.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityApplicationsBySecurityConnectorLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsCreateOrUpdateSample.ts deleted file mode 100644 index a168e54b47bd..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * - * @summary Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json - */ - -import type { SecurityConnector } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createOrUpdateASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector: SecurityConnector = { - environmentData: { environmentType: "AwsAccount", scanInterval: 4 }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.createOrUpdate( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main(): Promise { - await createOrUpdateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsDeleteSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsDeleteSample.ts deleted file mode 100644 index 58afe337585f..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a security connector. - * - * @summary Deletes a security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.delete(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main(): Promise { - await deleteASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsGetSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsGetSample.ts deleted file mode 100644 index 99aae56a4cac..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Retrieves details of a specific security connector - * - * @summary Retrieves details of a specific security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function retrieveASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.get(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main(): Promise { - await retrieveASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsListByResourceGroupSample.ts deleted file mode 100644 index ffb0ab5fe4fa..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsListByResourceGroupSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * - * @summary Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllSecurityConnectorsOfASpecifiedResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.securityConnectors.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllSecurityConnectorsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsListSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsListSample.ts deleted file mode 100644 index f3c5f511fcd4..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * - * @summary Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listAllSecurityConnectorsOfASpecifiedSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.securityConnectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listAllSecurityConnectorsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityConnectorsUpdateSample.ts b/sdk/security/arm-security/samples-dev/securityConnectorsUpdateSample.ts deleted file mode 100644 index 0a3ff1422f67..000000000000 --- a/sdk/security/arm-security/samples-dev/securityConnectorsUpdateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates a security connector - * - * @summary Updates a security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json - */ - -import type { SecurityConnector } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector: SecurityConnector = { - environmentData: { environmentType: "AwsAccount" }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.update( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main(): Promise { - await updateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityContactsCreateSample.ts b/sdk/security/arm-security/samples-dev/securityContactsCreateSample.ts deleted file mode 100644 index c900f04b505f..000000000000 --- a/sdk/security/arm-security/samples-dev/securityContactsCreateSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Create security contact configurations for the subscription - * - * @summary Create security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json - */ - -import type { SecurityContact } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createSecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const securityContact: SecurityContact = { - emails: "john@contoso.com;jane@contoso.com", - isEnabled: true, - notificationsByRole: { roles: ["Owner"], state: "On" }, - notificationsSources: [ - { minimalRiskLevel: "Critical", sourceType: "AttackPath" }, - { minimalSeverity: "Medium", sourceType: "Alert" }, - ], - phone: "(214)275-4038", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.create(securityContactName, securityContact); - console.log(result); -} - -async function main(): Promise { - await createSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityContactsDeleteSample.ts b/sdk/security/arm-security/samples-dev/securityContactsDeleteSample.ts deleted file mode 100644 index e09e6a861d7a..000000000000 --- a/sdk/security/arm-security/samples-dev/securityContactsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete security contact configurations for the subscription - * - * @summary Delete security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deletesASecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.delete(securityContactName); - console.log(result); -} - -async function main(): Promise { - await deletesASecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityContactsGetSample.ts b/sdk/security/arm-security/samples-dev/securityContactsGetSample.ts deleted file mode 100644 index e1dacdcc1ab2..000000000000 --- a/sdk/security/arm-security/samples-dev/securityContactsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get Default Security contact configurations for the subscription - * - * @summary Get Default Security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getASecurityContact(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.get(securityContactName); - console.log(result); -} - -async function main(): Promise { - await getASecurityContact(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityContactsListSample.ts b/sdk/security/arm-security/samples-dev/securityContactsListSample.ts deleted file mode 100644 index f645828a32d2..000000000000 --- a/sdk/security/arm-security/samples-dev/securityContactsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to List all security contact configurations for the subscription - * - * @summary List all security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.securityContacts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityOperatorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/securityOperatorsCreateOrUpdateSample.ts deleted file mode 100644 index 28c8015d343a..000000000000 --- a/sdk/security/arm-security/samples-dev/securityOperatorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates Microsoft Defender for Cloud security operator on the given scope. - * - * @summary Creates Microsoft Defender for Cloud security operator on the given scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createASecurityOperatorOnTheGivenScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.createOrUpdate(pricingName, securityOperatorName); - console.log(result); -} - -async function main(): Promise { - await createASecurityOperatorOnTheGivenScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityOperatorsDeleteSample.ts b/sdk/security/arm-security/samples-dev/securityOperatorsDeleteSample.ts deleted file mode 100644 index d75e715cc8dc..000000000000 --- a/sdk/security/arm-security/samples-dev/securityOperatorsDeleteSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete Microsoft Defender for Cloud securityOperator in the subscription. - * - * @summary Delete Microsoft Defender for Cloud securityOperator in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteSecurityOperatorOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.delete(pricingName, securityOperatorName); - console.log(result); -} - -async function main(): Promise { - await deleteSecurityOperatorOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityOperatorsGetSample.ts b/sdk/security/arm-security/samples-dev/securityOperatorsGetSample.ts deleted file mode 100644 index 574e6c7fea03..000000000000 --- a/sdk/security/arm-security/samples-dev/securityOperatorsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a specific security operator for the requested scope. - * - * @summary Get a specific security operator for the requested scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getASpecificSecurityOperatorByScopeAndSecurityOperatorName(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.get(pricingName, securityOperatorName); - console.log(result); -} - -async function main(): Promise { - await getASpecificSecurityOperatorByScopeAndSecurityOperatorName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securityOperatorsListSample.ts b/sdk/security/arm-security/samples-dev/securityOperatorsListSample.ts deleted file mode 100644 index b256aae01f76..000000000000 --- a/sdk/security/arm-security/samples-dev/securityOperatorsListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud securityOperators in the subscription. - * - * @summary Lists Microsoft Defender for Cloud securityOperators in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecurityOperators(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.list(pricingName); - console.log(result); -} - -async function main(): Promise { - await listSecurityOperators(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securitySolutionsGetSample.ts b/sdk/security/arm-security/samples-dev/securitySolutionsGetSample.ts deleted file mode 100644 index 06673aacdefb..000000000000 --- a/sdk/security/arm-security/samples-dev/securitySolutionsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a specific Security Solution. - * - * @summary Gets a specific Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getASecuritySolutionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const securitySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutions.get( - resourceGroupName, - ascLocation, - securitySolutionName, - ); - console.log(result); -} - -async function main(): Promise { - await getASecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securitySolutionsListSample.ts b/sdk/security/arm-security/samples-dev/securitySolutionsListSample.ts deleted file mode 100644 index 53c25a893218..000000000000 --- a/sdk/security/arm-security/samples-dev/securitySolutionsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of Security Solutions for the subscription. - * - * @summary Gets a list of Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.securitySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListByHomeRegionSample.ts deleted file mode 100644 index d49196e4fd18..000000000000 --- a/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListByHomeRegionSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets list of all supported Security Solutions for subscription and location. - * - * @summary Gets list of all supported Security Solutions for subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecuritySolutionsFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westcentralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.securitySolutionsReferenceDataOperations.listByHomeRegion(ascLocation); - console.log(result); -} - -async function main(): Promise { - await getSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListSample.ts b/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListSample.ts deleted file mode 100644 index 4afc198cc312..000000000000 --- a/sdk/security/arm-security/samples-dev/securitySolutionsReferenceDataListSample.ts +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of all supported Security Solutions for the subscription. - * - * @summary Gets a list of all supported Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutionsReferenceDataOperations.list(); - console.log(result); -} - -async function main(): Promise { - await getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sensitivitySettingsListSample.ts b/sdk/security/arm-security/samples-dev/sensitivitySettingsListSample.ts deleted file mode 100644 index ccf2fffa9b5a..000000000000 --- a/sdk/security/arm-security/samples-dev/sensitivitySettingsListSample.ts +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list with a single sensitivity settings resource - * - * @summary Gets a list with a single sensitivity settings resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSensitivitySettingsList(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sensitivitySettings.list(); - console.log(result); -} - -async function main(): Promise { - await getSensitivitySettingsList(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentCreateOrUpdateSample.ts deleted file mode 100644 index f59c3f78e9fe..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentCreateOrUpdateSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * - * @summary Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.createOrUpdate( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - await createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentDeleteSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentDeleteSample.ts deleted file mode 100644 index a81beec898f6..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentDeleteSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Removing server vulnerability assessment from a resource. - * - * @summary Removing server vulnerability assessment from a resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.beginDeleteAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - await deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentGetSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentGetSample.ts deleted file mode 100644 index cb06312069aa..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - await getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentListByExtendedResourceSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentListByExtendedResourceSample.ts deleted file mode 100644 index 38c45c08c4b0..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentListByExtendedResourceSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - await getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts deleted file mode 100644 index 7c7de745f0c1..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Create or update a server vulnerability assessments setting of the requested kind on the subscription - * - * @summary Create or update a server vulnerability assessments setting of the requested kind on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json - */ - -import type { AzureServersSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const serverVulnerabilityAssessmentsSetting: AzureServersSetting = { - kind: "AzureServersSetting", - selectedProvider: "MdeTvm", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.createOrUpdate( - settingKind, - serverVulnerabilityAssessmentsSetting, - ); - console.log(result); -} - -async function main(): Promise { - await setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsDeleteSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsDeleteSample.ts deleted file mode 100644 index 5c6a68d0e557..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Delete the server vulnerability assessments setting of the requested kind from the subscription - * - * @summary Delete the server vulnerability assessments setting of the requested kind from the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.delete(settingKind); - console.log(result); -} - -async function main(): Promise { - await deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsGetSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsGetSample.ts deleted file mode 100644 index 34cd03a1f9f8..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * - * @summary Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.get(settingKind); - console.log(result); -} - -async function main(): Promise { - await getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts deleted file mode 100644 index 2c717fe1054c..000000000000 --- a/sdk/security/arm-security/samples-dev/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a list of all the server vulnerability assessments settings over a subscription level scope - * - * @summary Get a list of all the server vulnerability assessments settings over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.serverVulnerabilityAssessmentsSettings.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/settingsGetSample.ts b/sdk/security/arm-security/samples-dev/settingsGetSample.ts deleted file mode 100644 index 875ada5202e9..000000000000 --- a/sdk/security/arm-security/samples-dev/settingsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Settings of different configurations in Microsoft Defender for Cloud - * - * @summary Settings of different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getASettingOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.get(settingName); - console.log(result); -} - -async function main(): Promise { - await getASettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/settingsListSample.ts b/sdk/security/arm-security/samples-dev/settingsListSample.ts deleted file mode 100644 index 74f65bd3f60a..000000000000 --- a/sdk/security/arm-security/samples-dev/settingsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Settings about different configurations in Microsoft Defender for Cloud - * - * @summary Settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSettingsOfSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.settings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSettingsOfSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/settingsUpdateSample.ts b/sdk/security/arm-security/samples-dev/settingsUpdateSample.ts deleted file mode 100644 index 4652afc820ec..000000000000 --- a/sdk/security/arm-security/samples-dev/settingsUpdateSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to updating settings about different configurations in Microsoft Defender for Cloud - * - * @summary updating settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json - */ - -import type { DataExportSettings } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateASettingForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const setting: DataExportSettings = { - enabled: true, - kind: "DataExportSettings", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.update(settingName, setting); - console.log(result); -} - -async function main(): Promise { - await updateASettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/softwareInventoriesGetSample.ts b/sdk/security/arm-security/samples-dev/softwareInventoriesGetSample.ts deleted file mode 100644 index eac73926b748..000000000000 --- a/sdk/security/arm-security/samples-dev/softwareInventoriesGetSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a single software data of the virtual machine. - * - * @summary Gets a single software data of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsASingleSoftwareDataOfTheVirtualMachine(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const softwareName = "outlook_16.0.10371.20060"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.softwareInventories.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - softwareName, - ); - console.log(result); -} - -async function main(): Promise { - await getsASingleSoftwareDataOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/softwareInventoriesListByExtendedResourceSample.ts b/sdk/security/arm-security/samples-dev/softwareInventoriesListByExtendedResourceSample.ts deleted file mode 100644 index e2dd851b2ad5..000000000000 --- a/sdk/security/arm-security/samples-dev/softwareInventoriesListByExtendedResourceSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the software inventory of the virtual machine. - * - * @summary Gets the software inventory of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsTheSoftwareInventoryOfTheVirtualMachine(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.softwareInventories.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getsTheSoftwareInventoryOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/softwareInventoriesListBySubscriptionSample.ts b/sdk/security/arm-security/samples-dev/softwareInventoriesListBySubscriptionSample.ts deleted file mode 100644 index dd7589c5fb83..000000000000 --- a/sdk/security/arm-security/samples-dev/softwareInventoriesListBySubscriptionSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the software inventory of all virtual machines in the subscriptions. - * - * @summary Gets the software inventory of all virtual machines in the subscriptions. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.softwareInventories.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts deleted file mode 100644 index f2e12a3fa007..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts +++ /dev/null @@ -1,75 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json - */ - -import type { - RulesResultsInput, - SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, -} from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createABaselineForAllRules(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RulesResultsInput = { - latestScan: false, - results: { - va1234: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - va5678: [["Test", "0.0.0.0", "125.125.125.125"]], - }, - }; - const options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_AddLatest.json - */ -async function createABaselineForAllRulesUsingTheLatestScanResults(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RulesResultsInput = { latestScan: true, results: {} }; - const options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main(): Promise { - await createABaselineForAllRules(); - await createABaselineForAllRulesUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts deleted file mode 100644 index 2c4d419315b3..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts +++ /dev/null @@ -1,72 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json - */ - -import type { - RuleResultsInput, - SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, -} from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createABaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RuleResultsInput = { - latestScan: false, - results: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - }; - const options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_PutLatest.json - */ -async function createABaselineUsingTheLatestScanResults(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RuleResultsInput = { latestScan: true, results: [] }; - const options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main(): Promise { - await createABaseline(); - await createABaselineUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts deleted file mode 100644 index 22ee0e47b75a..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes a rule from the Baseline of a given database. - * - * @summary Deletes a rule from the Baseline of a given database. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteTheBaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.delete( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - await deleteTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts deleted file mode 100644 index 60d7090c17db..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the results for a given rule in the Baseline. - * - * @summary Gets the results for a given rule in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTheBaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.get( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - await getTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesListSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesListSample.ts deleted file mode 100644 index b2167843a0c3..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentBaselineRulesListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the results for all rules in the Baseline. - * - * @summary Gets the results for all rules in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listBaselineForAllRules(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.list(workspaceId, resourceId); - console.log(result); -} - -async function main(): Promise { - await listBaselineForAllRules(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsGetSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsGetSample.ts deleted file mode 100644 index 4ffe0221c6a6..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsGetSample.ts +++ /dev/null @@ -1,60 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getScanDetailsOfAScanRecord(): Promise { - const scanId = "Scheduled-20200623"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord(): Promise { - const scanId = "latest"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - await getScanDetailsOfAScanRecord(); - await getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsListSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsListSample.ts deleted file mode 100644 index e4735a8c99ec..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScanResultsListSample.ts +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listScanResults(): Promise { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_ListLatest.json - */ -async function listScanResultsOfTheLatestScan(): Promise { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - await listScanResults(); - await listScanResultsOfTheLatestScan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansGetSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansGetSample.ts deleted file mode 100644 index 62d788462b00..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansGetSample.ts +++ /dev/null @@ -1,48 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getScanDetailsOfAScanRecord(): Promise { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get(scanId, workspaceId, resourceId); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord(): Promise { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get(scanId, workspaceId, resourceId); - console.log(result); -} - -async function main(): Promise { - await getScanDetailsOfAScanRecord(); - await getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansListSample.ts b/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansListSample.ts deleted file mode 100644 index 1decc1dbce23..000000000000 --- a/sdk/security/arm-security/samples-dev/sqlVulnerabilityAssessmentScansListSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list of scan records. - * - * @summary Gets a list of scan records. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listScanDetails(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.list(workspaceId, resourceId); - console.log(result); -} - -async function main(): Promise { - await listScanDetails(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/subAssessmentsGetSample.ts b/sdk/security/arm-security/samples-dev/subAssessmentsGetSample.ts deleted file mode 100644 index e46c035cdb8f..000000000000 --- a/sdk/security/arm-security/samples-dev/subAssessmentsGetSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get a security sub-assessment on your scanned resource - * - * @summary Get a security sub-assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const scope = - "subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/DEMORG/providers/Microsoft.Compute/virtualMachines/vm2"; - const assessmentName = "1195afff-c881-495e-9bc5-1486211ae03f"; - const subAssessmentName = "95f7da9c-a2a4-1322-0758-fcd24ef09b85"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.subAssessments.get(scope, assessmentName, subAssessmentName); - console.log(result); -} - -async function main(): Promise { - await getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/subAssessmentsListAllSample.ts b/sdk/security/arm-security/samples-dev/subAssessmentsListAllSample.ts deleted file mode 100644 index 24796ce68e6c..000000000000 --- a/sdk/security/arm-security/samples-dev/subAssessmentsListAllSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a subscription scope - * - * @summary Get security sub-assessments on all your scanned resources inside a subscription scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecuritySubAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.subAssessments.listAll(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/subAssessmentsListSample.ts b/sdk/security/arm-security/samples-dev/subAssessmentsListSample.ts deleted file mode 100644 index 3f1d899de3c6..000000000000 --- a/sdk/security/arm-security/samples-dev/subAssessmentsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a scope - * - * @summary Get security sub-assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function listSecuritySubAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const assessmentName = "82e20e14-edc5-4373-bfc4-f13121257c37"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (const item of client.subAssessments.list(scope, assessmentName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksGetResourceGroupLevelTaskSample.ts b/sdk/security/arm-security/samples-dev/tasksGetResourceGroupLevelTaskSample.ts deleted file mode 100644 index 1d4815c77bb5..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksGetResourceGroupLevelTaskSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationTaskInAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getResourceGroupLevelTask( - resourceGroupName, - ascLocation, - taskName, - ); - console.log(result); -} - -async function main(): Promise { - await getSecurityRecommendationTaskInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksGetSubscriptionLevelTaskSample.ts b/sdk/security/arm-security/samples-dev/tasksGetSubscriptionLevelTaskSample.ts deleted file mode 100644 index 55c96f87b0c6..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksGetSubscriptionLevelTaskSample.ts +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getSubscriptionLevelTask(ascLocation, taskName); - console.log(result); -} - -async function main(): Promise { - await getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/tasksListByHomeRegionSample.ts deleted file mode 100644 index ad506fc5e232..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksListByHomeRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationsTasksFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.tasks.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityRecommendationsTasksFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksListByResourceGroupSample.ts b/sdk/security/arm-security/samples-dev/tasksListByResourceGroupSample.ts deleted file mode 100644 index d3a516b3eae8..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksListByResourceGroupSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationTasksInAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.tasks.listByResourceGroup(resourceGroupName, ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityRecommendationTasksInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksListSample.ts b/sdk/security/arm-security/samples-dev/tasksListSample.ts deleted file mode 100644 index 7000175f0057..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getSecurityRecommendationsTasks(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.tasks.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getSecurityRecommendationsTasks(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksUpdateResourceGroupLevelTaskStateSample.ts b/sdk/security/arm-security/samples-dev/tasksUpdateResourceGroupLevelTaskStateSample.ts deleted file mode 100644 index c101e22984eb..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksUpdateResourceGroupLevelTaskStateSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function changeSecurityRecommendationTaskState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateResourceGroupLevelTaskState( - resourceGroupName, - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main(): Promise { - await changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/tasksUpdateSubscriptionLevelTaskStateSample.ts b/sdk/security/arm-security/samples-dev/tasksUpdateSubscriptionLevelTaskStateSample.ts deleted file mode 100644 index d294e7f2e217..000000000000 --- a/sdk/security/arm-security/samples-dev/tasksUpdateSubscriptionLevelTaskStateSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function changeSecurityRecommendationTaskState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateSubscriptionLevelTaskState( - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main(): Promise { - await changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/topologyGetSample.ts b/sdk/security/arm-security/samples-dev/topologyGetSample.ts deleted file mode 100644 index 692893bf1665..000000000000 --- a/sdk/security/arm-security/samples-dev/topologyGetSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a specific topology component. - * - * @summary Gets a specific topology component. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTopology(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myservers"; - const ascLocation = "centralus"; - const topologyResourceName = "vnets"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.topology.get(resourceGroupName, ascLocation, topologyResourceName); - console.log(result); -} - -async function main(): Promise { - await getTopology(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/topologyListByHomeRegionSample.ts b/sdk/security/arm-security/samples-dev/topologyListByHomeRegionSample.ts deleted file mode 100644 index 863533a56499..000000000000 --- a/sdk/security/arm-security/samples-dev/topologyListByHomeRegionSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription and location. - * - * @summary Gets a list that allows to build a topology view of a subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTopologyOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.topology.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getTopologyOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/topologyListSample.ts b/sdk/security/arm-security/samples-dev/topologyListSample.ts deleted file mode 100644 index 061b1b596a5a..000000000000 --- a/sdk/security/arm-security/samples-dev/topologyListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription. - * - * @summary Gets a list that allows to build a topology view of a subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getTopologyOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.topology.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getTopologyOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/updateSensitivitySettingsSample.ts b/sdk/security/arm-security/samples-dev/updateSensitivitySettingsSample.ts deleted file mode 100644 index 9ba8452b1ece..000000000000 --- a/sdk/security/arm-security/samples-dev/updateSensitivitySettingsSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Updates data sensitivity settings for sensitive data discovery - * - * @summary Updates data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json - */ - -import type { UpdateSensitivitySettingsRequest } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateSensitivitySettings(): Promise { - const sensitivitySettings: UpdateSensitivitySettingsRequest = { - sensitiveInfoTypesIds: [ - "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - "b452f22b-f87d-4f48-8490-ecf0873325b5", - "d59ee8b6-2618-404b-a5e7-aa377cd67543", - ], - sensitivityThresholdLabelId: "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - sensitivityThresholdLabelOrder: 2, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.updateSensitivitySettings(sensitivitySettings); - console.log(result); -} - -async function main(): Promise { - await updateSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/workspaceSettingsCreateSample.ts b/sdk/security/arm-security/samples-dev/workspaceSettingsCreateSample.ts deleted file mode 100644 index a5ec916dd599..000000000000 --- a/sdk/security/arm-security/samples-dev/workspaceSettingsCreateSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to creating settings about where we should store your security data and logs - * - * @summary creating settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json - */ - -import type { WorkspaceSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function createAWorkspaceSettingDataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting: WorkspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - scope: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.create(workspaceSettingName, workspaceSetting); - console.log(result); -} - -async function main(): Promise { - await createAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/workspaceSettingsDeleteSample.ts b/sdk/security/arm-security/samples-dev/workspaceSettingsDeleteSample.ts deleted file mode 100644 index 089951272a52..000000000000 --- a/sdk/security/arm-security/samples-dev/workspaceSettingsDeleteSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * - * @summary Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function deleteAWorkspaceSettingDataForResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.delete(workspaceSettingName); - console.log(result); -} - -async function main(): Promise { - await deleteAWorkspaceSettingDataForResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/workspaceSettingsGetSample.ts b/sdk/security/arm-security/samples-dev/workspaceSettingsGetSample.ts deleted file mode 100644 index ed2ddb5683aa..000000000000 --- a/sdk/security/arm-security/samples-dev/workspaceSettingsGetSample.ts +++ /dev/null @@ -1,29 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getAWorkspaceSettingOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.get(workspaceSettingName); - console.log(result); -} - -async function main(): Promise { - await getAWorkspaceSettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/workspaceSettingsListSample.ts b/sdk/security/arm-security/samples-dev/workspaceSettingsListSample.ts deleted file mode 100644 index 774f626db1fe..000000000000 --- a/sdk/security/arm-security/samples-dev/workspaceSettingsListSample.ts +++ /dev/null @@ -1,31 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json - */ - -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function getWorkspaceSettingsOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (const item of client.workspaceSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - await getWorkspaceSettingsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples-dev/workspaceSettingsUpdateSample.ts b/sdk/security/arm-security/samples-dev/workspaceSettingsUpdateSample.ts deleted file mode 100644 index d2d7a91e65d8..000000000000 --- a/sdk/security/arm-security/samples-dev/workspaceSettingsUpdateSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. - -/** - * This sample demonstrates how to Settings about where we should store your security data and logs - * - * @summary Settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json - */ - -import type { WorkspaceSetting } from "@azure/arm-security"; -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -async function updateAWorkspaceSettingDataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting: WorkspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.update(workspaceSettingName, workspaceSetting); - console.log(result); -} - -async function main(): Promise { - await updateAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/README.md b/sdk/security/arm-security/samples/v6-beta/javascript/README.md deleted file mode 100644 index f74a3bba6ac3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/README.md +++ /dev/null @@ -1,534 +0,0 @@ -# client library samples for JavaScript (Beta) - -These sample programs show how to use the JavaScript client libraries for in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [adaptiveApplicationControlsDeleteSample.js][adaptiveapplicationcontrolsdeletesample] | Delete an application control machine group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json | -| [adaptiveApplicationControlsGetSample.js][adaptiveapplicationcontrolsgetsample] | Gets an application control VM/server group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json | -| [adaptiveApplicationControlsListSample.js][adaptiveapplicationcontrolslistsample] | Gets a list of application control machine groups for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json | -| [adaptiveApplicationControlsPutSample.js][adaptiveapplicationcontrolsputsample] | Update an application control machine group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json | -| [adaptiveNetworkHardeningsEnforceSample.js][adaptivenetworkhardeningsenforcesample] | Enforces the given rules on the NSG(s) listed in the request x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json | -| [adaptiveNetworkHardeningsGetSample.js][adaptivenetworkhardeningsgetsample] | Gets a single Adaptive Network Hardening resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json | -| [adaptiveNetworkHardeningsListByExtendedResourceSample.js][adaptivenetworkhardeningslistbyextendedresourcesample] | Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json | -| [advancedThreatProtectionCreateSample.js][advancedthreatprotectioncreatesample] | Creates or updates the Advanced Threat Protection settings on a specified resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json | -| [advancedThreatProtectionGetSample.js][advancedthreatprotectiongetsample] | Gets the Advanced Threat Protection settings for the specified resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json | -| [alertsGetResourceGroupLevelSample.js][alertsgetresourcegrouplevelsample] | Get an alert that is associated a resource group or a resource in a resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json | -| [alertsGetSubscriptionLevelSample.js][alertsgetsubscriptionlevelsample] | Get an alert that is associated with a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json | -| [alertsListByResourceGroupSample.js][alertslistbyresourcegroupsample] | List all the alerts that are associated with the resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json | -| [alertsListResourceGroupLevelByRegionSample.js][alertslistresourcegrouplevelbyregionsample] | List all the alerts that are associated with the resource group that are stored in a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json | -| [alertsListSample.js][alertslistsample] | List all the alerts that are associated with the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json | -| [alertsListSubscriptionLevelByRegionSample.js][alertslistsubscriptionlevelbyregionsample] | List all the alerts that are associated with the subscription that are stored in a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json | -| [alertsSimulateSample.js][alertssimulatesample] | Simulate security alerts x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json | -| [alertsSuppressionRulesDeleteSample.js][alertssuppressionrulesdeletesample] | Delete dismiss alert rule for this subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json | -| [alertsSuppressionRulesGetSample.js][alertssuppressionrulesgetsample] | Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json | -| [alertsSuppressionRulesListSample.js][alertssuppressionruleslistsample] | List of all the dismiss rules for the given subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json | -| [alertsSuppressionRulesUpdateSample.js][alertssuppressionrulesupdatesample] | Update existing rule or create new rule if it doesn't exist x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json | -| [alertsUpdateResourceGroupLevelStateToActivateSample.js][alertsupdateresourcegrouplevelstatetoactivatesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json | -| [alertsUpdateResourceGroupLevelStateToDismissSample.js][alertsupdateresourcegrouplevelstatetodismisssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json | -| [alertsUpdateResourceGroupLevelStateToInProgressSample.js][alertsupdateresourcegrouplevelstatetoinprogresssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json | -| [alertsUpdateResourceGroupLevelStateToResolveSample.js][alertsupdateresourcegrouplevelstatetoresolvesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json | -| [alertsUpdateSubscriptionLevelStateToActivateSample.js][alertsupdatesubscriptionlevelstatetoactivatesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json | -| [alertsUpdateSubscriptionLevelStateToDismissSample.js][alertsupdatesubscriptionlevelstatetodismisssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json | -| [alertsUpdateSubscriptionLevelStateToInProgressSample.js][alertsupdatesubscriptionlevelstatetoinprogresssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json | -| [alertsUpdateSubscriptionLevelStateToResolveSample.js][alertsupdatesubscriptionlevelstatetoresolvesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json | -| [allowedConnectionsGetSample.js][allowedconnectionsgetsample] | Gets the list of all possible traffic between resources for the subscription and location, based on connection type. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json | -| [allowedConnectionsListByHomeRegionSample.js][allowedconnectionslistbyhomeregionsample] | Gets the list of all possible traffic between resources for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json | -| [allowedConnectionsListSample.js][allowedconnectionslistsample] | Gets the list of all possible traffic between resources for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json | -| [apiCollectionsGetByAzureApiManagementServiceSample.js][apicollectionsgetbyazureapimanagementservicesample] | Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json | -| [apiCollectionsListByAzureApiManagementServiceSample.js][apicollectionslistbyazureapimanagementservicesample] | Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json | -| [apiCollectionsListByResourceGroupSample.js][apicollectionslistbyresourcegroupsample] | Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json | -| [apiCollectionsListBySubscriptionSample.js][apicollectionslistbysubscriptionsample] | Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json | -| [apiCollectionsOffboardAzureApiManagementApiSample.js][apicollectionsoffboardazureapimanagementapisample] | Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json | -| [apiCollectionsOnboardAzureApiManagementApiSample.js][apicollectionsonboardazureapimanagementapisample] | Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json | -| [applicationCreateOrUpdateSample.js][applicationcreateorupdatesample] | Creates or update a security application on the given subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json | -| [applicationDeleteSample.js][applicationdeletesample] | Delete an Application over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json | -| [applicationGetSample.js][applicationgetsample] | Get a specific application for the requested scope by applicationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json | -| [applicationsListSample.js][applicationslistsample] | Get a list of all relevant applications over a subscription level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json | -| [assessmentsCreateOrUpdateSample.js][assessmentscreateorupdatesample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/PutAssessment_example.json | -| [assessmentsDeleteSample.js][assessmentsdeletesample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/DeleteAssessment_example.json | -| [assessmentsGetSample.js][assessmentsgetsample] | Get a security assessment on your scanned resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessment_example.json | -| [assessmentsListSample.js][assessmentslistsample] | Get security assessments on all your scanned resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/ListAssessments_example.json | -| [assessmentsMetadataCreateInSubscriptionSample.js][assessmentsmetadatacreateinsubscriptionsample] | Create metadata information on an assessment type in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataDeleteInSubscriptionSample.js][assessmentsmetadatadeleteinsubscriptionsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataGetInSubscriptionSample.js][assessmentsmetadatagetinsubscriptionsample] | Get metadata information on an assessment type in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataGetSample.js][assessmentsmetadatagetsample] | Get metadata information on an assessment type x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json | -| [assessmentsMetadataListBySubscriptionSample.js][assessmentsmetadatalistbysubscriptionsample] | Get metadata information on all assessment types in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataListSample.js][assessmentsmetadatalistsample] | Get metadata information on all assessment types x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json | -| [autoProvisioningSettingsCreateSample.js][autoprovisioningsettingscreatesample] | Details of a specific setting x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json | -| [autoProvisioningSettingsGetSample.js][autoprovisioningsettingsgetsample] | Details of a specific setting x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json | -| [autoProvisioningSettingsListSample.js][autoprovisioningsettingslistsample] | Exposes the auto provisioning settings of the subscriptions x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json | -| [automationsCreateOrUpdateSample.js][automationscreateorupdatesample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json | -| [automationsDeleteSample.js][automationsdeletesample] | Deletes a security automation. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json | -| [automationsGetSample.js][automationsgetsample] | Retrieves information about the model of a security automation. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json | -| [automationsListByResourceGroupSample.js][automationslistbyresourcegroupsample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json | -| [automationsListSample.js][automationslistsample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json | -| [automationsUpdateSample.js][automationsupdatesample] | Updates a security automation x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json | -| [automationsValidateSample.js][automationsvalidatesample] | Validates the security automation model before create or update. Any validation errors are returned to the client. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json | -| [azureDevOpsOrgsCreateOrUpdateSample.js][azuredevopsorgscreateorupdatesample] | Creates or updates monitored Azure DevOps organization details. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsGetSample.js][azuredevopsorgsgetsample] | Returns a monitored Azure DevOps organization resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsListAvailableSample.js][azuredevopsorgslistavailablesample] | Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsListSample.js][azuredevopsorgslistsample] | Returns a list of Azure DevOps organizations onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsUpdateSample.js][azuredevopsorgsupdatesample] | Updates monitored Azure DevOps organization details. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json | -| [azureDevOpsProjectsCreateOrUpdateSample.js][azuredevopsprojectscreateorupdatesample] | Creates or updates a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsGetSample.js][azuredevopsprojectsgetsample] | Returns a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsListSample.js][azuredevopsprojectslistsample] | Returns a list of Azure DevOps projects onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsUpdateSample.js][azuredevopsprojectsupdatesample] | Updates a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json | -| [azureDevOpsReposCreateOrUpdateSample.js][azuredevopsreposcreateorupdatesample] | Creates or updates a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json | -| [azureDevOpsReposGetSample.js][azuredevopsreposgetsample] | Returns a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json | -| [azureDevOpsReposListSample.js][azuredevopsreposlistsample] | Returns a list of Azure DevOps repositories onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json | -| [azureDevOpsReposUpdateSample.js][azuredevopsreposupdatesample] | Updates a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json | -| [complianceResultsGetSample.js][complianceresultsgetsample] | Security Compliance Result x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json | -| [complianceResultsListSample.js][complianceresultslistsample] | Security compliance results in the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json | -| [compliancesGetSample.js][compliancesgetsample] | Details of a specific Compliance. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json | -| [compliancesListSample.js][complianceslistsample] | The Compliance scores of the specific management group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json | -| [connectorsCreateOrUpdateSample.js][connectorscreateorupdatesample] | Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json | -| [connectorsDeleteSample.js][connectorsdeletesample] | Delete a cloud account connector from a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json | -| [connectorsGetSample.js][connectorsgetsample] | Details of a specific cloud account connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json | -| [connectorsListSample.js][connectorslistsample] | Cloud accounts connectors of a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json | -| [customAssessmentAutomationsCreateSample.js][customassessmentautomationscreatesample] | Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json | -| [customAssessmentAutomationsDeleteSample.js][customassessmentautomationsdeletesample] | Deletes a custom assessment automation by name for a provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json | -| [customAssessmentAutomationsGetSample.js][customassessmentautomationsgetsample] | Gets a single custom assessment automation by name for the provided subscription and resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json | -| [customAssessmentAutomationsListByResourceGroupSample.js][customassessmentautomationslistbyresourcegroupsample] | List custom assessment automations by provided subscription and resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json | -| [customAssessmentAutomationsListBySubscriptionSample.js][customassessmentautomationslistbysubscriptionsample] | List custom assessment automations by provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json | -| [customEntityStoreAssignmentsCreateSample.js][customentitystoreassignmentscreatesample] | Creates a custom entity store assignment for the provided subscription, if not already exists. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json | -| [customEntityStoreAssignmentsDeleteSample.js][customentitystoreassignmentsdeletesample] | Delete a custom entity store assignment by name for a provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json | -| [customEntityStoreAssignmentsGetSample.js][customentitystoreassignmentsgetsample] | Gets a single custom entity store assignment by name for the provided subscription and resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json | -| [customEntityStoreAssignmentsListByResourceGroupSample.js][customentitystoreassignmentslistbyresourcegroupsample] | List custom entity store assignments by a provided subscription and resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json | -| [customEntityStoreAssignmentsListBySubscriptionSample.js][customentitystoreassignmentslistbysubscriptionsample] | List custom entity store assignments by provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json | -| [defenderForStorageCreateSample.js][defenderforstoragecreatesample] | Creates or updates the Defender for Storage settings on a specified storage account. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json | -| [defenderForStorageGetSample.js][defenderforstoragegetsample] | Gets the Defender for Storage settings for the specified storage account. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json | -| [devOpsConfigurationsCreateOrUpdateSample.js][devopsconfigurationscreateorupdatesample] | Creates or updates a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json | -| [devOpsConfigurationsDeleteSample.js][devopsconfigurationsdeletesample] | Deletes a DevOps Connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json | -| [devOpsConfigurationsGetSample.js][devopsconfigurationsgetsample] | Gets a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json | -| [devOpsConfigurationsListSample.js][devopsconfigurationslistsample] | List DevOps Configurations. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json | -| [devOpsConfigurationsUpdateSample.js][devopsconfigurationsupdatesample] | Updates a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json | -| [devOpsOperationResultsGetSample.js][devopsoperationresultsgetsample] | Get devops long running operation result. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json | -| [deviceSecurityGroupsCreateOrUpdateSample.js][devicesecuritygroupscreateorupdatesample] | Use this method to creates or updates the device security group on a specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsDeleteSample.js][devicesecuritygroupsdeletesample] | User this method to deletes the device security group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsGetSample.js][devicesecuritygroupsgetsample] | Use this method to get the device security group for the specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsListSample.js][devicesecuritygroupslistsample] | Use this method get the list of device security groups for the specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json | -| [discoveredSecuritySolutionsGetSample.js][discoveredsecuritysolutionsgetsample] | Gets a specific discovered Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json | -| [discoveredSecuritySolutionsListByHomeRegionSample.js][discoveredsecuritysolutionslistbyhomeregionsample] | Gets a list of discovered Security Solutions for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json | -| [discoveredSecuritySolutionsListSample.js][discoveredsecuritysolutionslistsample] | Gets a list of discovered Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json | -| [externalSecuritySolutionsGetSample.js][externalsecuritysolutionsgetsample] | Gets a specific external Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json | -| [externalSecuritySolutionsListByHomeRegionSample.js][externalsecuritysolutionslistbyhomeregionsample] | Gets a list of external Security Solutions for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json | -| [externalSecuritySolutionsListSample.js][externalsecuritysolutionslistsample] | Gets a list of external security solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json | -| [getSensitivitySettingsSample.js][getsensitivitysettingssample] | Gets data sensitivity settings for sensitive data discovery x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json | -| [gitHubOwnersGetSample.js][githubownersgetsample] | Returns a monitored GitHub owner. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json | -| [gitHubOwnersListAvailableSample.js][githubownerslistavailablesample] | Returns a list of all GitHub owners accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json | -| [gitHubOwnersListSample.js][githubownerslistsample] | Returns a list of GitHub owners onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json | -| [gitHubReposGetSample.js][githubreposgetsample] | Returns a monitored GitHub repository. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json | -| [gitHubReposListSample.js][githubreposlistsample] | Returns a list of GitHub repositories onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json | -| [gitLabGroupsGetSample.js][gitlabgroupsgetsample] | Returns a monitored GitLab Group resource for a given fully-qualified name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json | -| [gitLabGroupsListAvailableSample.js][gitlabgroupslistavailablesample] | Returns a list of all GitLab groups accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json | -| [gitLabGroupsListSample.js][gitlabgroupslistsample] | Returns a list of GitLab groups onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json | -| [gitLabProjectsGetSample.js][gitlabprojectsgetsample] | Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json | -| [gitLabProjectsListSample.js][gitlabprojectslistsample] | Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json | -| [gitLabSubgroupsListSample.js][gitlabsubgroupslistsample] | Gets nested subgroups of given GitLab Group which are onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json | -| [governanceAssignmentsCreateOrUpdateSample.js][governanceassignmentscreateorupdatesample] | Creates or updates a governance assignment on the given subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json | -| [governanceAssignmentsDeleteSample.js][governanceassignmentsdeletesample] | Delete a GovernanceAssignment over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json | -| [governanceAssignmentsGetSample.js][governanceassignmentsgetsample] | Get a specific governanceAssignment for the requested scope by AssignmentKey x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json | -| [governanceAssignmentsListSample.js][governanceassignmentslistsample] | Get governance assignments on all of your resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json | -| [governanceRulesCreateOrUpdateSample.js][governancerulescreateorupdatesample] | Creates or updates a governance rule over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json | -| [governanceRulesDeleteSample.js][governancerulesdeletesample] | Delete a Governance rule over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json | -| [governanceRulesExecuteSample.js][governancerulesexecutesample] | Execute a governance rule x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json | -| [governanceRulesGetSample.js][governancerulesgetsample] | Get a specific governance rule for the requested scope by ruleId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json | -| [governanceRulesListSample.js][governanceruleslistsample] | Get a list of all relevant governance rules over a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json | -| [governanceRulesOperationResultsSample.js][governancerulesoperationresultssample] | Get governance rules long run operation result for the requested scope by ruleId and operationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json | -| [healthReportsGetSample.js][healthreportsgetsample] | Get health report of resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json | -| [healthReportsListSample.js][healthreportslistsample] | Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json | -| [informationProtectionPoliciesCreateOrUpdateSample.js][informationprotectionpoliciescreateorupdatesample] | Details of the information protection policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json | -| [informationProtectionPoliciesGetSample.js][informationprotectionpoliciesgetsample] | Details of the information protection policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json | -| [informationProtectionPoliciesListSample.js][informationprotectionpolicieslistsample] | Information protection policies of a specific management group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json | -| [iotSecuritySolutionAnalyticsGetSample.js][iotsecuritysolutionanalyticsgetsample] | Use this method to get IoT Security Analytics metrics. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json | -| [iotSecuritySolutionAnalyticsListSample.js][iotsecuritysolutionanalyticslistsample] | Use this method to get IoT security Analytics metrics in an array. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json | -| [iotSecuritySolutionCreateOrUpdateSample.js][iotsecuritysolutioncreateorupdatesample] | Use this method to create or update yours IoT Security solution x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json | -| [iotSecuritySolutionDeleteSample.js][iotsecuritysolutiondeletesample] | Use this method to delete yours IoT Security solution x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json | -| [iotSecuritySolutionGetSample.js][iotsecuritysolutiongetsample] | User this method to get details of a specific IoT Security solution based on solution name x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json | -| [iotSecuritySolutionListByResourceGroupSample.js][iotsecuritysolutionlistbyresourcegroupsample] | Use this method to get the list IoT Security solutions organized by resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json | -| [iotSecuritySolutionListBySubscriptionSample.js][iotsecuritysolutionlistbysubscriptionsample] | Use this method to get the list of IoT Security solutions by subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json | -| [iotSecuritySolutionUpdateSample.js][iotsecuritysolutionupdatesample] | Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js][iotsecuritysolutionsanalyticsaggregatedalertdismisssample] | Use this method to dismiss an aggregated IoT Security Solution Alert. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js][iotsecuritysolutionsanalyticsaggregatedalertgetsample] | Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js][iotsecuritysolutionsanalyticsaggregatedalertlistsample] | Use this method to get the aggregated alert list of yours IoT Security solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json | -| [iotSecuritySolutionsAnalyticsRecommendationGetSample.js][iotsecuritysolutionsanalyticsrecommendationgetsample] | Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json | -| [iotSecuritySolutionsAnalyticsRecommendationListSample.js][iotsecuritysolutionsanalyticsrecommendationlistsample] | Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json | -| [jitNetworkAccessPoliciesCreateOrUpdateSample.js][jitnetworkaccesspoliciescreateorupdatesample] | Create a policy for protecting resources using Just-in-Time access control x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesDeleteSample.js][jitnetworkaccesspoliciesdeletesample] | Delete a Just-in-Time access control policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesGetSample.js][jitnetworkaccesspoliciesgetsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesInitiateSample.js][jitnetworkaccesspoliciesinitiatesample] | Initiate a JIT access from a specific Just-in-Time policy configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesListByRegionSample.js][jitnetworkaccesspolicieslistbyregionsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json | -| [jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js][jitnetworkaccesspolicieslistbyresourcegroupandregionsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json | -| [jitNetworkAccessPoliciesListByResourceGroupSample.js][jitnetworkaccesspolicieslistbyresourcegroupsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json | -| [jitNetworkAccessPoliciesListSample.js][jitnetworkaccesspolicieslistsample] | Policies for protecting resources using Just-in-Time access control. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json | -| [locationsGetSample.js][locationsgetsample] | Details of a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json | -| [locationsListSample.js][locationslistsample] | The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json | -| [mdeOnboardingsGetSample.js][mdeonboardingsgetsample] | The default configuration or data needed to onboard the machine to MDE x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json | -| [mdeOnboardingsListSample.js][mdeonboardingslistsample] | The configuration or data needed to onboard the machine to MDE x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json | -| [pricingsDeleteSample.js][pricingsdeletesample] | Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json | -| [pricingsGetSample.js][pricingsgetsample] | Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json | -| [pricingsListSample.js][pricingslistsample] | Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json | -| [pricingsUpdateSample.js][pricingsupdatesample] | Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json | -| [regulatoryComplianceAssessmentsGetSample.js][regulatorycomplianceassessmentsgetsample] | Supported regulatory compliance details and state for selected assessment x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json | -| [regulatoryComplianceAssessmentsListSample.js][regulatorycomplianceassessmentslistsample] | Details and state of assessments mapped to selected regulatory compliance control x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json | -| [regulatoryComplianceControlsGetSample.js][regulatorycompliancecontrolsgetsample] | Selected regulatory compliance control details and state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json | -| [regulatoryComplianceControlsListSample.js][regulatorycompliancecontrolslistsample] | All supported regulatory compliance controls details and state for selected standard x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json | -| [regulatoryComplianceStandardsGetSample.js][regulatorycompliancestandardsgetsample] | Supported regulatory compliance details state for selected standard x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json | -| [regulatoryComplianceStandardsListSample.js][regulatorycompliancestandardslistsample] | Supported regulatory compliance standards details and state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json | -| [secureScoreControlDefinitionsListBySubscriptionSample.js][securescorecontroldefinitionslistbysubscriptionsample] | For a specified subscription, list the available security controls, their assessments, and the max score x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json | -| [secureScoreControlDefinitionsListSample.js][securescorecontroldefinitionslistsample] | List the available security controls, their assessments, and the max score x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json | -| [secureScoreControlsListBySecureScoreSample.js][securescorecontrolslistbysecurescoresample] | Get all security controls for a specific initiative within a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json | -| [secureScoreControlsListSample.js][securescorecontrolslistsample] | Get all security controls within a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json | -| [secureScoresGetSample.js][securescoresgetsample] | Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json | -| [secureScoresListSample.js][securescoreslistsample] | List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json | -| [securityConnectorApplicationCreateOrUpdateSample.js][securityconnectorapplicationcreateorupdatesample] | Creates or update a security Application on the given security connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json | -| [securityConnectorApplicationDeleteSample.js][securityconnectorapplicationdeletesample] | Delete an Application over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json | -| [securityConnectorApplicationGetSample.js][securityconnectorapplicationgetsample] | Get a specific application for the requested scope by applicationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json | -| [securityConnectorApplicationsListSample.js][securityconnectorapplicationslistsample] | Get a list of all relevant applications over a security connector level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json | -| [securityConnectorsCreateOrUpdateSample.js][securityconnectorscreateorupdatesample] | Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json | -| [securityConnectorsDeleteSample.js][securityconnectorsdeletesample] | Deletes a security connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json | -| [securityConnectorsGetSample.js][securityconnectorsgetsample] | Retrieves details of a specific security connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json | -| [securityConnectorsListByResourceGroupSample.js][securityconnectorslistbyresourcegroupsample] | Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json | -| [securityConnectorsListSample.js][securityconnectorslistsample] | Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json | -| [securityConnectorsUpdateSample.js][securityconnectorsupdatesample] | Updates a security connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json | -| [securityContactsCreateSample.js][securitycontactscreatesample] | Create security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json | -| [securityContactsDeleteSample.js][securitycontactsdeletesample] | Delete security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json | -| [securityContactsGetSample.js][securitycontactsgetsample] | Get Default Security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json | -| [securityContactsListSample.js][securitycontactslistsample] | List all security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json | -| [securityOperatorsCreateOrUpdateSample.js][securityoperatorscreateorupdatesample] | Creates Microsoft Defender for Cloud security operator on the given scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json | -| [securityOperatorsDeleteSample.js][securityoperatorsdeletesample] | Delete Microsoft Defender for Cloud securityOperator in the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json | -| [securityOperatorsGetSample.js][securityoperatorsgetsample] | Get a specific security operator for the requested scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json | -| [securityOperatorsListSample.js][securityoperatorslistsample] | Lists Microsoft Defender for Cloud securityOperators in the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json | -| [securitySolutionsGetSample.js][securitysolutionsgetsample] | Gets a specific Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json | -| [securitySolutionsListSample.js][securitysolutionslistsample] | Gets a list of Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json | -| [securitySolutionsReferenceDataListByHomeRegionSample.js][securitysolutionsreferencedatalistbyhomeregionsample] | Gets list of all supported Security Solutions for subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json | -| [securitySolutionsReferenceDataListSample.js][securitysolutionsreferencedatalistsample] | Gets a list of all supported Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json | -| [sensitivitySettingsListSample.js][sensitivitysettingslistsample] | Gets a list with a single sensitivity settings resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json | -| [serverVulnerabilityAssessmentCreateOrUpdateSample.js][servervulnerabilityassessmentcreateorupdatesample] | Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentDeleteSample.js][servervulnerabilityassessmentdeletesample] | Removing server vulnerability assessment from a resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentGetSample.js][servervulnerabilityassessmentgetsample] | Gets a server vulnerability assessment onboarding statuses on a given resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentListByExtendedResourceSample.js][servervulnerabilityassessmentlistbyextendedresourcesample] | Gets a list of server vulnerability assessment onboarding statuses on a given resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js][servervulnerabilityassessmentssettingscreateorupdatesample] | Create or update a server vulnerability assessments setting of the requested kind on the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsDeleteSample.js][servervulnerabilityassessmentssettingsdeletesample] | Delete the server vulnerability assessments setting of the requested kind from the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsGetSample.js][servervulnerabilityassessmentssettingsgetsample] | Get a server vulnerability assessments setting of the requested kind, that is set on the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js][servervulnerabilityassessmentssettingslistbysubscriptionsample] | Get a list of all the server vulnerability assessments settings over a subscription level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json | -| [settingsGetSample.js][settingsgetsample] | Settings of different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json | -| [settingsListSample.js][settingslistsample] | Settings about different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json | -| [settingsUpdateSample.js][settingsupdatesample] | updating settings about different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json | -| [softwareInventoriesGetSample.js][softwareinventoriesgetsample] | Gets a single software data of the virtual machine. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json | -| [softwareInventoriesListByExtendedResourceSample.js][softwareinventorieslistbyextendedresourcesample] | Gets the software inventory of the virtual machine. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json | -| [softwareInventoriesListBySubscriptionSample.js][softwareinventorieslistbysubscriptionsample] | Gets the software inventory of all virtual machines in the subscriptions. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json | -| [sqlVulnerabilityAssessmentBaselineRulesAddSample.js][sqlvulnerabilityassessmentbaselinerulesaddsample] | Add a list of baseline rules. Will overwrite any previously existing results (for all rules). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json | -| [sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js][sqlvulnerabilityassessmentbaselinerulescreateorupdatesample] | Creates a Baseline for a rule in a database. Will overwrite any previously existing results. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json | -| [sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js][sqlvulnerabilityassessmentbaselinerulesdeletesample] | Deletes a rule from the Baseline of a given database. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json | -| [sqlVulnerabilityAssessmentBaselineRulesGetSample.js][sqlvulnerabilityassessmentbaselinerulesgetsample] | Gets the results for a given rule in the Baseline. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json | -| [sqlVulnerabilityAssessmentBaselineRulesListSample.js][sqlvulnerabilityassessmentbaselineruleslistsample] | Gets the results for all rules in the Baseline. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json | -| [sqlVulnerabilityAssessmentScanResultsGetSample.js][sqlvulnerabilityassessmentscanresultsgetsample] | Gets the scan results of a single rule in a scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json | -| [sqlVulnerabilityAssessmentScanResultsListSample.js][sqlvulnerabilityassessmentscanresultslistsample] | Gets a list of scan results for a single scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json | -| [sqlVulnerabilityAssessmentScansGetSample.js][sqlvulnerabilityassessmentscansgetsample] | Gets the scan details of a single scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json | -| [sqlVulnerabilityAssessmentScansListSample.js][sqlvulnerabilityassessmentscanslistsample] | Gets a list of scan records. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json | -| [subAssessmentsGetSample.js][subassessmentsgetsample] | Get a security sub-assessment on your scanned resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json | -| [subAssessmentsListAllSample.js][subassessmentslistallsample] | Get security sub-assessments on all your scanned resources inside a subscription scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json | -| [subAssessmentsListSample.js][subassessmentslistsample] | Get security sub-assessments on all your scanned resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json | -| [tasksGetResourceGroupLevelTaskSample.js][tasksgetresourcegroupleveltasksample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json | -| [tasksGetSubscriptionLevelTaskSample.js][tasksgetsubscriptionleveltasksample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json | -| [tasksListByHomeRegionSample.js][taskslistbyhomeregionsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json | -| [tasksListByResourceGroupSample.js][taskslistbyresourcegroupsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json | -| [tasksListSample.js][taskslistsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json | -| [tasksUpdateResourceGroupLevelTaskStateSample.js][tasksupdateresourcegroupleveltaskstatesample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json | -| [tasksUpdateSubscriptionLevelTaskStateSample.js][tasksupdatesubscriptionleveltaskstatesample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json | -| [topologyGetSample.js][topologygetsample] | Gets a specific topology component. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json | -| [topologyListByHomeRegionSample.js][topologylistbyhomeregionsample] | Gets a list that allows to build a topology view of a subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json | -| [topologyListSample.js][topologylistsample] | Gets a list that allows to build a topology view of a subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json | -| [updateSensitivitySettingsSample.js][updatesensitivitysettingssample] | Updates data sensitivity settings for sensitive data discovery x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json | -| [workspaceSettingsCreateSample.js][workspacesettingscreatesample] | creating settings about where we should store your security data and logs x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json | -| [workspaceSettingsDeleteSample.js][workspacesettingsdeletesample] | Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json | -| [workspaceSettingsGetSample.js][workspacesettingsgetsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json | -| [workspaceSettingsListSample.js][workspacesettingslistsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json | -| [workspaceSettingsUpdateSample.js][workspacesettingsupdatesample] | Settings about where we should store your security data and logs x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -3. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node adaptiveApplicationControlsDeleteSample.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -cross-env SECURITY_SUBSCRIPTION_ID="" node adaptiveApplicationControlsDeleteSample.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[adaptiveapplicationcontrolsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsDeleteSample.js -[adaptiveapplicationcontrolsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsGetSample.js -[adaptiveapplicationcontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsListSample.js -[adaptiveapplicationcontrolsputsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsPutSample.js -[adaptivenetworkhardeningsenforcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsEnforceSample.js -[adaptivenetworkhardeningsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsGetSample.js -[adaptivenetworkhardeningslistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsListByExtendedResourceSample.js -[advancedthreatprotectioncreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionCreateSample.js -[advancedthreatprotectiongetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionGetSample.js -[alertsgetresourcegrouplevelsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetResourceGroupLevelSample.js -[alertsgetsubscriptionlevelsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetSubscriptionLevelSample.js -[alertslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsListByResourceGroupSample.js -[alertslistresourcegrouplevelbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsListResourceGroupLevelByRegionSample.js -[alertslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSample.js -[alertslistsubscriptionlevelbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSubscriptionLevelByRegionSample.js -[alertssimulatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsSimulateSample.js -[alertssuppressionrulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesDeleteSample.js -[alertssuppressionrulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesGetSample.js -[alertssuppressionruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesListSample.js -[alertssuppressionrulesupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesUpdateSample.js -[alertsupdateresourcegrouplevelstatetoactivatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToActivateSample.js -[alertsupdateresourcegrouplevelstatetodismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToDismissSample.js -[alertsupdateresourcegrouplevelstatetoinprogresssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToInProgressSample.js -[alertsupdateresourcegrouplevelstatetoresolvesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToResolveSample.js -[alertsupdatesubscriptionlevelstatetoactivatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToActivateSample.js -[alertsupdatesubscriptionlevelstatetodismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToDismissSample.js -[alertsupdatesubscriptionlevelstatetoinprogresssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToInProgressSample.js -[alertsupdatesubscriptionlevelstatetoresolvesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToResolveSample.js -[allowedconnectionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsGetSample.js -[allowedconnectionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListByHomeRegionSample.js -[allowedconnectionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListSample.js -[apicollectionsgetbyazureapimanagementservicesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsGetByAzureApiManagementServiceSample.js -[apicollectionslistbyazureapimanagementservicesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByAzureApiManagementServiceSample.js -[apicollectionslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByResourceGroupSample.js -[apicollectionslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListBySubscriptionSample.js -[apicollectionsoffboardazureapimanagementapisample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOffboardAzureApiManagementApiSample.js -[apicollectionsonboardazureapimanagementapisample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOnboardAzureApiManagementApiSample.js -[applicationcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/applicationCreateOrUpdateSample.js -[applicationdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/applicationDeleteSample.js -[applicationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/applicationGetSample.js -[applicationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/applicationsListSample.js -[assessmentscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsCreateOrUpdateSample.js -[assessmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsDeleteSample.js -[assessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsGetSample.js -[assessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsListSample.js -[assessmentsmetadatacreateinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataCreateInSubscriptionSample.js -[assessmentsmetadatadeleteinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataDeleteInSubscriptionSample.js -[assessmentsmetadatagetinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetInSubscriptionSample.js -[assessmentsmetadatagetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetSample.js -[assessmentsmetadatalistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListBySubscriptionSample.js -[assessmentsmetadatalistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListSample.js -[autoprovisioningsettingscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsCreateSample.js -[autoprovisioningsettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsGetSample.js -[autoprovisioningsettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsListSample.js -[automationscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsCreateOrUpdateSample.js -[automationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsDeleteSample.js -[automationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsGetSample.js -[automationslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsListByResourceGroupSample.js -[automationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsListSample.js -[automationsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsUpdateSample.js -[automationsvalidatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/automationsValidateSample.js -[azuredevopsorgscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsCreateOrUpdateSample.js -[azuredevopsorgsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsGetSample.js -[azuredevopsorgslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListAvailableSample.js -[azuredevopsorgslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListSample.js -[azuredevopsorgsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsUpdateSample.js -[azuredevopsprojectscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsCreateOrUpdateSample.js -[azuredevopsprojectsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsGetSample.js -[azuredevopsprojectslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsListSample.js -[azuredevopsprojectsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsUpdateSample.js -[azuredevopsreposcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposCreateOrUpdateSample.js -[azuredevopsreposgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposGetSample.js -[azuredevopsreposlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposListSample.js -[azuredevopsreposupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposUpdateSample.js -[complianceresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsGetSample.js -[complianceresultslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsListSample.js -[compliancesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/compliancesGetSample.js -[complianceslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/compliancesListSample.js -[connectorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/connectorsCreateOrUpdateSample.js -[connectorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/connectorsDeleteSample.js -[connectorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/connectorsGetSample.js -[connectorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/connectorsListSample.js -[customassessmentautomationscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsCreateSample.js -[customassessmentautomationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsDeleteSample.js -[customassessmentautomationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsGetSample.js -[customassessmentautomationslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListByResourceGroupSample.js -[customassessmentautomationslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListBySubscriptionSample.js -[customentitystoreassignmentscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsCreateSample.js -[customentitystoreassignmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsDeleteSample.js -[customentitystoreassignmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsGetSample.js -[customentitystoreassignmentslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListByResourceGroupSample.js -[customentitystoreassignmentslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListBySubscriptionSample.js -[defenderforstoragecreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageCreateSample.js -[defenderforstoragegetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageGetSample.js -[devopsconfigurationscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsCreateOrUpdateSample.js -[devopsconfigurationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsDeleteSample.js -[devopsconfigurationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsGetSample.js -[devopsconfigurationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsListSample.js -[devopsconfigurationsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsUpdateSample.js -[devopsoperationresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/devOpsOperationResultsGetSample.js -[devicesecuritygroupscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsCreateOrUpdateSample.js -[devicesecuritygroupsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsDeleteSample.js -[devicesecuritygroupsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsGetSample.js -[devicesecuritygroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsListSample.js -[discoveredsecuritysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsGetSample.js -[discoveredsecuritysolutionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListByHomeRegionSample.js -[discoveredsecuritysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListSample.js -[externalsecuritysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsGetSample.js -[externalsecuritysolutionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListByHomeRegionSample.js -[externalsecuritysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListSample.js -[getsensitivitysettingssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/getSensitivitySettingsSample.js -[githubownersgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersGetSample.js -[githubownerslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListAvailableSample.js -[githubownerslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListSample.js -[githubreposgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposGetSample.js -[githubreposlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposListSample.js -[gitlabgroupsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsGetSample.js -[gitlabgroupslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListAvailableSample.js -[gitlabgroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListSample.js -[gitlabprojectsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsGetSample.js -[gitlabprojectslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsListSample.js -[gitlabsubgroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/gitLabSubgroupsListSample.js -[governanceassignmentscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsCreateOrUpdateSample.js -[governanceassignmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsDeleteSample.js -[governanceassignmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsGetSample.js -[governanceassignmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsListSample.js -[governancerulescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesCreateOrUpdateSample.js -[governancerulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesDeleteSample.js -[governancerulesexecutesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesExecuteSample.js -[governancerulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesGetSample.js -[governanceruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesListSample.js -[governancerulesoperationresultssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesOperationResultsSample.js -[healthreportsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsGetSample.js -[healthreportslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsListSample.js -[informationprotectionpoliciescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesCreateOrUpdateSample.js -[informationprotectionpoliciesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesGetSample.js -[informationprotectionpolicieslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesListSample.js -[iotsecuritysolutionanalyticsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsGetSample.js -[iotsecuritysolutionanalyticslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsListSample.js -[iotsecuritysolutioncreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionCreateOrUpdateSample.js -[iotsecuritysolutiondeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionDeleteSample.js -[iotsecuritysolutiongetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionGetSample.js -[iotsecuritysolutionlistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListByResourceGroupSample.js -[iotsecuritysolutionlistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListBySubscriptionSample.js -[iotsecuritysolutionupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionUpdateSample.js -[iotsecuritysolutionsanalyticsaggregatedalertdismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js -[iotsecuritysolutionsanalyticsaggregatedalertgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js -[iotsecuritysolutionsanalyticsaggregatedalertlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js -[iotsecuritysolutionsanalyticsrecommendationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationGetSample.js -[iotsecuritysolutionsanalyticsrecommendationlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationListSample.js -[jitnetworkaccesspoliciescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesCreateOrUpdateSample.js -[jitnetworkaccesspoliciesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesDeleteSample.js -[jitnetworkaccesspoliciesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesGetSample.js -[jitnetworkaccesspoliciesinitiatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesInitiateSample.js -[jitnetworkaccesspolicieslistbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByRegionSample.js -[jitnetworkaccesspolicieslistbyresourcegroupandregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js -[jitnetworkaccesspolicieslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupSample.js -[jitnetworkaccesspolicieslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListSample.js -[locationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/locationsGetSample.js -[locationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/locationsListSample.js -[mdeonboardingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsGetSample.js -[mdeonboardingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsListSample.js -[pricingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/pricingsDeleteSample.js -[pricingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/pricingsGetSample.js -[pricingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/pricingsListSample.js -[pricingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/pricingsUpdateSample.js -[regulatorycomplianceassessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsGetSample.js -[regulatorycomplianceassessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsListSample.js -[regulatorycompliancecontrolsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsGetSample.js -[regulatorycompliancecontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsListSample.js -[regulatorycompliancestandardsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsGetSample.js -[regulatorycompliancestandardslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsListSample.js -[securescorecontroldefinitionslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListBySubscriptionSample.js -[securescorecontroldefinitionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListSample.js -[securescorecontrolslistbysecurescoresample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListBySecureScoreSample.js -[securescorecontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListSample.js -[securescoresgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresGetSample.js -[securescoreslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresListSample.js -[securityconnectorapplicationcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationCreateOrUpdateSample.js -[securityconnectorapplicationdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationDeleteSample.js -[securityconnectorapplicationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationGetSample.js -[securityconnectorapplicationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationsListSample.js -[securityconnectorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsCreateOrUpdateSample.js -[securityconnectorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsDeleteSample.js -[securityconnectorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsGetSample.js -[securityconnectorslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListByResourceGroupSample.js -[securityconnectorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListSample.js -[securityconnectorsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsUpdateSample.js -[securitycontactscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsCreateSample.js -[securitycontactsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsDeleteSample.js -[securitycontactsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsGetSample.js -[securitycontactslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsListSample.js -[securityoperatorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsCreateOrUpdateSample.js -[securityoperatorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsDeleteSample.js -[securityoperatorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsGetSample.js -[securityoperatorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsListSample.js -[securitysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsGetSample.js -[securitysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsListSample.js -[securitysolutionsreferencedatalistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListByHomeRegionSample.js -[securitysolutionsreferencedatalistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListSample.js -[sensitivitysettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sensitivitySettingsListSample.js -[servervulnerabilityassessmentcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentCreateOrUpdateSample.js -[servervulnerabilityassessmentdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentDeleteSample.js -[servervulnerabilityassessmentgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentGetSample.js -[servervulnerabilityassessmentlistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentListByExtendedResourceSample.js -[servervulnerabilityassessmentssettingscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js -[servervulnerabilityassessmentssettingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsDeleteSample.js -[servervulnerabilityassessmentssettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsGetSample.js -[servervulnerabilityassessmentssettingslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js -[settingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/settingsGetSample.js -[settingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/settingsListSample.js -[settingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/settingsUpdateSample.js -[softwareinventoriesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesGetSample.js -[softwareinventorieslistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListByExtendedResourceSample.js -[softwareinventorieslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListBySubscriptionSample.js -[sqlvulnerabilityassessmentbaselinerulesaddsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesAddSample.js -[sqlvulnerabilityassessmentbaselinerulescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js -[sqlvulnerabilityassessmentbaselinerulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js -[sqlvulnerabilityassessmentbaselinerulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesGetSample.js -[sqlvulnerabilityassessmentbaselineruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesListSample.js -[sqlvulnerabilityassessmentscanresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsGetSample.js -[sqlvulnerabilityassessmentscanresultslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsListSample.js -[sqlvulnerabilityassessmentscansgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansGetSample.js -[sqlvulnerabilityassessmentscanslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansListSample.js -[subassessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsGetSample.js -[subassessmentslistallsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListAllSample.js -[subassessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListSample.js -[tasksgetresourcegroupleveltasksample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetResourceGroupLevelTaskSample.js -[tasksgetsubscriptionleveltasksample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetSubscriptionLevelTaskSample.js -[taskslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByHomeRegionSample.js -[taskslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByResourceGroupSample.js -[taskslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksListSample.js -[tasksupdateresourcegroupleveltaskstatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateResourceGroupLevelTaskStateSample.js -[tasksupdatesubscriptionleveltaskstatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateSubscriptionLevelTaskStateSample.js -[topologygetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/topologyGetSample.js -[topologylistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/topologyListByHomeRegionSample.js -[topologylistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/topologyListSample.js -[updatesensitivitysettingssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/updateSensitivitySettingsSample.js -[workspacesettingscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsCreateSample.js -[workspacesettingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsDeleteSample.js -[workspacesettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsGetSample.js -[workspacesettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsListSample.js -[workspacesettingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsUpdateSample.js -[apiref]: https://learn.microsoft.com/javascript/api/@azure/arm-security?view=azure-node-preview -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security/README.md diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsDeleteSample.js deleted file mode 100644 index 7f40a93b162a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete an application control machine group - * - * @summary Delete an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json - */ -async function deleteAnApplicationControlMachineGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "GROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.delete(ascLocation, groupName); - console.log(result); -} - -async function main() { - deleteAnApplicationControlMachineGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsGetSample.js deleted file mode 100644 index 873a1706473c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets an application control VM/server group. - * - * @summary Gets an application control VM/server group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json - */ -async function getsAConfiguredApplicationControlVMOrServerGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.get(ascLocation, groupName); - console.log(result); -} - -async function main() { - getsAConfiguredApplicationControlVMOrServerGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsListSample.js deleted file mode 100644 index 0743186c4f66..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsListSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of application control machine groups for the subscription. - * - * @summary Gets a list of application control machine groups for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json - */ -async function getsAListOfApplicationControlGroupsOfMachinesForTheSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const includePathRecommendations = true; - const summary = false; - const options = { - includePathRecommendations, - summary, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.list(options); - console.log(result); -} - -async function main() { - getsAListOfApplicationControlGroupsOfMachinesForTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsPutSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsPutSample.js deleted file mode 100644 index 3be88b9865c9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveApplicationControlsPutSample.js +++ /dev/null @@ -1,122 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update an application control machine group - * - * @summary Update an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json - */ -async function updateAnApplicationControlMachineGroupByAddingANewApplication() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const body = { - enforcementMode: "Audit", - pathRecommendations: [ - { - type: "PublisherSignature", - path: "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [{ recommendationAction: "Recommended", username: "Everyone" }], - }, - { - type: "ProductSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "MICROSOFT® COREXT", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "PublisherSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "File", - path: "C:\\directory\\file.exe", - action: "Add", - common: true, - }, - ], - protectionMode: { exe: "Audit", msi: "None", script: "None" }, - vmRecommendations: [ - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - }, - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.put(ascLocation, groupName, body); - console.log(result); -} - -async function main() { - updateAnApplicationControlMachineGroupByAddingANewApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsEnforceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsEnforceSample.js deleted file mode 100644 index 7a0a4367334b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsEnforceSample.js +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Enforces the given rules on the NSG(s) listed in the request - * - * @summary Enforces the given rules on the NSG(s) listed in the request - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json - */ -async function enforcesTheGivenRulesOnTheNsgSListedInTheRequest() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const body = { - networkSecurityGroups: [ - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg2", - ], - rules: [ - { - name: "rule1", - destinationPort: 3389, - direction: "Inbound", - ipAddresses: ["100.10.1.1", "200.20.2.2", "81.199.3.0/24"], - protocols: ["TCP"], - }, - { - name: "rule2", - destinationPort: 22, - direction: "Inbound", - ipAddresses: [], - protocols: ["TCP"], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.beginEnforceAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - body, - ); - console.log(result); -} - -async function main() { - enforcesTheGivenRulesOnTheNsgSListedInTheRequest(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsGetSample.js deleted file mode 100644 index 9e6ccf1cbe1c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsGetSample.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a single Adaptive Network Hardening resource - * - * @summary Gets a single Adaptive Network Hardening resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json - */ -async function getASingleAdaptiveNetworkHardeningResource() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - ); - console.log(result); -} - -async function main() { - getASingleAdaptiveNetworkHardeningResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsListByExtendedResourceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsListByExtendedResourceSample.js deleted file mode 100644 index 5c4b20bc83c2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/adaptiveNetworkHardeningsListByExtendedResourceSample.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * - * @summary Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json - */ -async function listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.adaptiveNetworkHardenings.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionCreateSample.js deleted file mode 100644 index 84320cb85bf0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionCreateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates the Advanced Threat Protection settings on a specified resource. - * - * @summary Creates or updates the Advanced Threat Protection settings on a specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json - */ -async function createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const advancedThreatProtectionSetting = { - name: "current", - type: "Microsoft.Security/advancedThreatProtectionSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", - isEnabled: true, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.create( - resourceId, - advancedThreatProtectionSetting, - ); - console.log(result); -} - -async function main() { - createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionGetSample.js deleted file mode 100644 index 0bafb90e158c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/advancedThreatProtectionGetSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the Advanced Threat Protection settings for the specified resource. - * - * @summary Gets the Advanced Threat Protection settings for the specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json - */ -async function getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.get(resourceId); - console.log(result); -} - -async function main() { - getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetResourceGroupLevelSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetResourceGroupLevelSample.js deleted file mode 100644 index c14befbf4f5e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetResourceGroupLevelSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get an alert that is associated a resource group or a resource in a resource group - * - * @summary Get an alert that is associated a resource group or a resource in a resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json - */ -async function getSecurityAlertOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getResourceGroupLevel( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - getSecurityAlertOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetSubscriptionLevelSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetSubscriptionLevelSample.js deleted file mode 100644 index bd9d6099b794..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsGetSubscriptionLevelSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get an alert that is associated with a subscription - * - * @summary Get an alert that is associated with a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json - */ -async function getSecurityAlertOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518770965529163669_F144EE95-A3E5-42DA-A279-967D115809AA"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getSubscriptionLevel(ascLocation, alertName); - console.log(result); -} - -async function main() { - getSecurityAlertOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsListByResourceGroupSample.js deleted file mode 100644 index 695b07a1d985..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListByResourceGroupSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group - * - * @summary List all the alerts that are associated with the resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json - */ -async function getSecurityAlertsOnAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityAlertsOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListResourceGroupLevelByRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsListResourceGroupLevelByRegionSample.js deleted file mode 100644 index b86fae0b4757..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListResourceGroupLevelByRegionSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group that are stored in a specific location - * - * @summary List all the alerts that are associated with the resource group that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json - */ -async function getSecurityAlertsOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listResourceGroupLevelByRegion( - ascLocation, - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityAlertsOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSample.js deleted file mode 100644 index 3ca5630d5b6c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription - * - * @summary List all the alerts that are associated with the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json - */ -async function getSecurityAlertsOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSubscriptionLevelByRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSubscriptionLevelByRegionSample.js deleted file mode 100644 index 12a6eaa6a559..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsListSubscriptionLevelByRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription that are stored in a specific location - * - * @summary List all the alerts that are associated with the subscription that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json - */ -async function getSecurityAlertsOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listSubscriptionLevelByRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityAlertsOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSimulateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsSimulateSample.js deleted file mode 100644 index ddeeaefd21e6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSimulateSample.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Simulate security alerts - * - * @summary Simulate security alerts - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json - */ -async function simulateSecurityAlertsOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const alertSimulatorRequestBody = { - properties: { - bundles: [ - "AppServices", - "DNS", - "KeyVaults", - "KubernetesService", - "ResourceManager", - "SqlServers", - "StorageAccounts", - "VirtualMachines", - "CosmosDbs", - ], - kind: "Bundles", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.beginSimulateAndWait(ascLocation, alertSimulatorRequestBody); - console.log(result); -} - -async function main() { - simulateSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesDeleteSample.js deleted file mode 100644 index 2c898297bbf2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete dismiss alert rule for this subscription. - * - * @summary Delete dismiss alert rule for this subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json - */ -async function deleteSuppressionRuleDataForASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.delete(alertsSuppressionRuleName); - console.log(result); -} - -async function main() { - deleteSuppressionRuleDataForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesGetSample.js deleted file mode 100644 index 8a990ef31e1a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * - * @summary Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json - */ -async function getSuppressionAlertRuleForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.get(alertsSuppressionRuleName); - console.log(result); -} - -async function main() { - getSuppressionAlertRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesListSample.js deleted file mode 100644 index 740b1f5286db..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesListSample.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json - */ -async function getSuppressionAlertRuleForSubscriptionFilteredByAlertType() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json - */ -async function getSuppressionRulesForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSuppressionAlertRuleForSubscriptionFilteredByAlertType(); - getSuppressionRulesForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesUpdateSample.js deleted file mode 100644 index 3d1903286fa8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsSuppressionRulesUpdateSample.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update existing rule or create new rule if it doesn't exist - * - * @summary Update existing rule or create new rule if it doesn't exist - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json - */ -async function updateOrCreateSuppressionRuleForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const alertsSuppressionRule = { - alertType: "IpAnomaly", - comment: "Test VM", - expirationDateUtc: new Date("2019-12-01T19:50:47.083633Z"), - reason: "FalsePositive", - state: "Enabled", - suppressionAlertsScope: { - allOf: [{ field: "entities.ip.address" }, { field: "entities.process.commandline" }], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.update( - alertsSuppressionRuleName, - alertsSuppressionRule, - ); - console.log(result); -} - -async function main() { - updateOrCreateSuppressionRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToActivateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToActivateSample.js deleted file mode 100644 index 0a15b38e097b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToActivateSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToActivate( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToDismissSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToDismissSample.js deleted file mode 100644 index fe1503031b43..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToDismissSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToDismiss( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToInProgressSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToInProgressSample.js deleted file mode 100644 index 1a1fc6dbffd3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToInProgressSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToInProgress( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToResolveSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToResolveSample.js deleted file mode 100644 index 2ca27c8496d6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateResourceGroupLevelStateToResolveSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToResolve( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToActivateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToActivateSample.js deleted file mode 100644 index 0fcb0991c620..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToActivateSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToActivate(ascLocation, alertName); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToDismissSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToDismissSample.js deleted file mode 100644 index cd057e257952..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToDismissSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToDismiss(ascLocation, alertName); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToInProgressSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToInProgressSample.js deleted file mode 100644 index 516697a9a375..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToInProgressSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToInProgress( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToResolveSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToResolveSample.js deleted file mode 100644 index 7344d5057c1a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/alertsUpdateSubscriptionLevelStateToResolveSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToResolve(ascLocation, alertName); - console.log(result); -} - -async function main() { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsGetSample.js deleted file mode 100644 index cdca9b82f743..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json - */ -async function getAllowedConnections() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myResourceGroup"; - const ascLocation = "centralus"; - const connectionType = "Internal"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.allowedConnections.get( - resourceGroupName, - ascLocation, - connectionType, - ); - console.log(result); -} - -async function main() { - getAllowedConnections(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListByHomeRegionSample.js deleted file mode 100644 index ef6660afcf9c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListByHomeRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json - */ -async function getAllowedConnectionsOnASubscriptionFromSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.allowedConnections.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllowedConnectionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListSample.js deleted file mode 100644 index 3d6f686be3eb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/allowedConnectionsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription - * - * @summary Gets the list of all possible traffic between resources for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json - */ -async function getAllowedConnectionsOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.allowedConnections.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllowedConnectionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsGetByAzureApiManagementServiceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsGetByAzureApiManagementServiceSample.js deleted file mode 100644 index 31f1bd4f6f75..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsGetByAzureApiManagementServiceSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json - */ -async function getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.getByAzureApiManagementService( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main() { - getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByAzureApiManagementServiceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByAzureApiManagementServiceSample.js deleted file mode 100644 index 4d7dab6999ea..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByAzureApiManagementServiceSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json - */ -async function getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listByAzureApiManagementService( - resourceGroupName, - serviceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByResourceGroupSample.js deleted file mode 100644 index 36bb5e268bd2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListByResourceGroupSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json - */ -async function getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListBySubscriptionSample.js deleted file mode 100644 index 85f3e7c723bd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json - */ -async function getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOffboardAzureApiManagementApiSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOffboardAzureApiManagementApiSample.js deleted file mode 100644 index cefb2973d022..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOffboardAzureApiManagementApiSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * - * @summary Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json - */ -async function offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.offboardAzureApiManagementApi( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main() { - offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOnboardAzureApiManagementApiSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOnboardAzureApiManagementApiSample.js deleted file mode 100644 index 2eed8d2cbfbd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/apiCollectionsOnboardAzureApiManagementApiSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json - */ -async function onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.beginOnboardAzureApiManagementApiAndWait( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main() { - onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/applicationCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/applicationCreateOrUpdateSample.js deleted file mode 100644 index 9dcdc6336cfa..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/applicationCreateOrUpdateSample.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or update a security application on the given subscription. - * - * @summary Creates or update a security application on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json - */ -async function createApplication() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application = { - description: "An application on critical recommendations", - conditionSets: [ - { - conditions: [{ operator: "contains", property: "$.Id", value: "-bil-" }], - }, - ], - displayName: "Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.createOrUpdate(applicationId, application); - console.log(result); -} - -async function main() { - createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/applicationDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/applicationDeleteSample.js deleted file mode 100644 index c62ea85607a9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/applicationDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json - */ -async function deleteSecurityApplication() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.delete(applicationId); - console.log(result); -} - -async function main() { - deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/applicationGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/applicationGetSample.js deleted file mode 100644 index 48a30f35d4ec..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/applicationGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json - */ -async function getSecurityApplicationBySpecificApplicationId() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.get(applicationId); - console.log(result); -} - -async function main() { - getSecurityApplicationBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/applicationsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/applicationsListSample.js deleted file mode 100644 index c5d72efe46e7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/applicationsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a list of all relevant applications over a subscription level scope - * - * @summary Get a list of all relevant applications over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json - */ -async function listApplicationsSecurityBySubscriptionLevelScope() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.applications.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listApplicationsSecurityBySubscriptionLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsCreateOrUpdateSample.js deleted file mode 100644 index 22a857fb0d7e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsCreateOrUpdateSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/PutAssessment_example.json - */ -async function createSecurityRecommendationTaskOnAResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const assessment = { - resourceDetails: { source: "Azure" }, - status: { code: "Healthy" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.createOrUpdate(resourceId, assessmentName, assessment); - console.log(result); -} - -async function main() { - createSecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsDeleteSample.js deleted file mode 100644 index 88ce67ef41cf..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/DeleteAssessment_example.json - */ -async function deleteASecurityRecommendationTaskOnAResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.delete(resourceId, assessmentName); - console.log(result); -} - -async function main() { - deleteASecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsGetSample.js deleted file mode 100644 index 3ea109b2edbd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsGetSample.js +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessment_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get(resourceId, assessmentName); - console.log(result); -} - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessmentWithExpand_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const expand = "links"; - const options = { expand }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get(resourceId, assessmentName, options); - console.log(result); -} - -async function main() { - getSecurityRecommendationTaskFromSecurityDataLocation(); - getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsListSample.js deleted file mode 100644 index 47228adb8732..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsListSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get security assessments on all your scanned resources inside a scope - * - * @summary Get security assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/ListAssessments_example.json - */ -async function listSecurityAssessments() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.assessments.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataCreateInSubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataCreateInSubscriptionSample.js deleted file mode 100644 index 969a1dcb316c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataCreateInSubscriptionSample.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Create metadata information on an assessment type in a specific subscription - * - * @summary Create metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json - */ -async function createSecurityAssessmentMetadataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const assessmentMetadata = { - description: - "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", - assessmentType: "CustomerManaged", - categories: ["Compute"], - displayName: "Install endpoint protection solution on virtual machine scale sets", - implementationEffort: "Low", - remediationDescription: - 'To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set', - severity: "Medium", - threats: ["dataExfiltration", "dataSpillage", "maliciousInsider"], - userImpact: "Low", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.createInSubscription( - assessmentMetadataName, - assessmentMetadata, - ); - console.log(result); -} - -async function main() { - createSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataDeleteInSubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataDeleteInSubscriptionSample.js deleted file mode 100644 index 8bc13fd6d8f9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataDeleteInSubscriptionSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json - */ -async function deleteASecurityAssessmentMetadataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.deleteInSubscription(assessmentMetadataName); - console.log(result); -} - -async function main() { - deleteASecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetInSubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetInSubscriptionSample.js deleted file mode 100644 index ab46cd8bc201..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetInSubscriptionSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get metadata information on an assessment type in a specific subscription - * - * @summary Get metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json - */ -async function getSecurityAssessmentMetadataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.getInSubscription(assessmentMetadataName); - console.log(result); -} - -async function main() { - getSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetSample.js deleted file mode 100644 index bb7037ea85ff..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataGetSample.js +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get metadata information on an assessment type - * - * @summary Get metadata information on an assessment type - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json - */ -async function getSecurityAssessmentMetadata() { - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessmentsMetadata.get(assessmentMetadataName); - console.log(result); -} - -async function main() { - getSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListBySubscriptionSample.js deleted file mode 100644 index 7f29f3150dda..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get metadata information on all assessment types in a specific subscription - * - * @summary Get metadata information on all assessment types in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json - */ -async function listSecurityAssessmentMetadataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0980887d-03d6-408c-9566-532f3456804e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.assessmentsMetadata.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListSample.js deleted file mode 100644 index d1e6ffba1678..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/assessmentsMetadataListSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get metadata information on all assessment types - * - * @summary Get metadata information on all assessment types - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json - */ -async function listSecurityAssessmentMetadata() { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.assessmentsMetadata.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsCreateSample.js deleted file mode 100644 index a5b6e58abb17..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsCreateSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json - */ -async function createAutoProvisioningSettingsForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const setting = { - name: "default", - type: "Microsoft.Security/autoProvisioningSettings", - autoProvision: "On", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/autoProvisioningSettings/default", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.create(settingName, setting); - console.log(result); -} - -async function main() { - createAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsGetSample.js deleted file mode 100644 index dfbf35095c39..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json - */ -async function getAnAutoProvisioningSettingForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.get(settingName); - console.log(result); -} - -async function main() { - getAnAutoProvisioningSettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsListSample.js deleted file mode 100644 index 61ebe069e3d4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/autoProvisioningSettingsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Exposes the auto provisioning settings of the subscriptions - * - * @summary Exposes the auto provisioning settings of the subscriptions - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json - */ -async function getAutoProvisioningSettingsForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.autoProvisioningSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsCreateOrUpdateSample.js deleted file mode 100644 index d00ca7bd95e5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsCreateOrUpdateSample.js +++ /dev/null @@ -1,191 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json - */ -async function createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationHighSeverityAssessments_example.json - */ -async function createOrUpdateASecurityAutomationForAllHighSeverityAssessments() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any high severity security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "High", - operator: "Equals", - propertyJPath: "properties.metadata.severity", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutDisableAutomation_example.json - */ -async function disableOrEnableASecurityAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: false, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -async function main() { - createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities(); - createOrUpdateASecurityAutomationForAllHighSeverityAssessments(); - disableOrEnableASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsDeleteSample.js deleted file mode 100644 index 6f87242117c8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a security automation. - * - * @summary Deletes a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json - */ -async function deleteASecurityAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const automationName = "myAutomationName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.delete(resourceGroupName, automationName); - console.log(result); -} - -async function main() { - deleteASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsGetSample.js deleted file mode 100644 index 56acdd30fb16..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Retrieves information about the model of a security automation. - * - * @summary Retrieves information about the model of a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json - */ -async function retrieveASecurityAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.get(resourceGroupName, automationName); - console.log(result); -} - -async function main() { - retrieveASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsListByResourceGroupSample.js deleted file mode 100644 index 1802ba5a2379..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsListByResourceGroupSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json - */ -async function listAllSecurityAutomationsOfASpecifiedResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.automations.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllSecurityAutomationsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsListSample.js deleted file mode 100644 index efbf8a763903..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json - */ -async function listAllSecurityAutomationsOfASpecifiedSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.automations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllSecurityAutomationsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsUpdateSample.js deleted file mode 100644 index 29a3d9af008a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsUpdateSample.js +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a security automation - * - * @summary Updates a security automation - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json - */ -async function updateASecurityAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: { example: "exampleTag" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.update(resourceGroupName, automationName, automation); - console.log(result); -} - -async function main() { - updateASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/automationsValidateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/automationsValidateSample.js deleted file mode 100644 index 093ef2b1af37..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/automationsValidateSample.js +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Validates the security automation model before create or update. Any validation errors are returned to the client. - * - * @summary Validates the security automation model before create or update. Any validation errors are returned to the client. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json - */ -async function validateTheSecurityAutomationModelBeforeCreateOrUpdate() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.validate(resourceGroupName, automationName, automation); - console.log(result); -} - -async function main() { - validateTheSecurityAutomationModelBeforeCreateOrUpdate(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsCreateOrUpdateSample.js deleted file mode 100644 index 1e402eb1f9be..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsCreateOrUpdateSample.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates monitored Azure DevOps organization details. - * - * @summary Creates or updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json - */ -async function createOrUpdateAzureDevOpsOrgs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main() { - createOrUpdateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsGetSample.js deleted file mode 100644 index b9ff5edd2ac2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps organization resource. - * - * @summary Returns a monitored Azure DevOps organization resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json - */ -async function getAzureDevOpsOrgs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.get( - resourceGroupName, - securityConnectorName, - orgName, - ); - console.log(result); -} - -async function main() { - getAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListAvailableSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListAvailableSample.js deleted file mode 100644 index 0275b6bfb11d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListAvailableSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * - * @summary Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json - */ -async function listAvailableAzureDevOpsOrgs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.listAvailable( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main() { - listAvailableAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListSample.js deleted file mode 100644 index 13c08ed2335a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsListSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of Azure DevOps organizations onboarded to the connector. - * - * @summary Returns a list of Azure DevOps organizations onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json - */ -async function listAzureDevOpsOrgs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsOrgs.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsUpdateSample.js deleted file mode 100644 index c03ec962ba3a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsOrgsUpdateSample.js +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates monitored Azure DevOps organization details. - * - * @summary Updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json - */ -async function updateAzureDevOpsOrgs() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main() { - updateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsCreateOrUpdateSample.js deleted file mode 100644 index 542acfe8ff14..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsCreateOrUpdateSample.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps project resource. - * - * @summary Creates or updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json - */ -async function createOrUpdateAzureDevOpsProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main() { - createOrUpdateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsGetSample.js deleted file mode 100644 index 2124b4474613..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsGetSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps project resource. - * - * @summary Returns a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json - */ -async function getAzureDevOpsProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - ); - console.log(result); -} - -async function main() { - getAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsListSample.js deleted file mode 100644 index c5849f3a8b92..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsListSample.js +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of Azure DevOps projects onboarded to the connector. - * - * @summary Returns a list of Azure DevOps projects onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json - */ -async function listAzureDevOpsProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsProjects.list( - resourceGroupName, - securityConnectorName, - orgName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsUpdateSample.js deleted file mode 100644 index 743bfb1531a3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsProjectsUpdateSample.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps project resource. - * - * @summary Updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json - */ -async function updateAzureDevOpsProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main() { - updateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposCreateOrUpdateSample.js deleted file mode 100644 index 785e4c65f425..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposCreateOrUpdateSample.js +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps repository resource. - * - * @summary Creates or updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json - */ -async function createOrUpdateAzureDevOpsRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main() { - createOrUpdateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposGetSample.js deleted file mode 100644 index 88522715ba4c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposGetSample.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps repository resource. - * - * @summary Returns a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json - */ -async function getAzureDevOpsRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - ); - console.log(result); -} - -async function main() { - getAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposListSample.js deleted file mode 100644 index 56225c90dde6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposListSample.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of Azure DevOps repositories onboarded to the connector. - * - * @summary Returns a list of Azure DevOps repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json - */ -async function listAzureDevOpsRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsRepos.list( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposUpdateSample.js deleted file mode 100644 index 55b93c3b26e0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/azureDevOpsReposUpdateSample.js +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps repository resource. - * - * @summary Updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json - */ -async function updateAzureDevOpsRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main() { - updateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsGetSample.js deleted file mode 100644 index 3e34233435a9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsGetSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Security Compliance Result - * - * @summary Security Compliance Result - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json - */ -async function getComplianceResultsOnSubscription() { - const resourceId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceResultName = "DesignateMoreThanOneOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.complianceResults.get(resourceId, complianceResultName); - console.log(result); -} - -async function main() { - getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsListSample.js deleted file mode 100644 index bb05802495f2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/complianceResultsListSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Security compliance results in the subscription - * - * @summary Security compliance results in the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json - */ -async function getComplianceResultsOnSubscription() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.complianceResults.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/compliancesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/compliancesGetSample.js deleted file mode 100644 index 02ff88a6e947..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/compliancesGetSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of a specific Compliance. - * - * @summary Details of a specific Compliance. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json - */ -async function getSecurityComplianceDataForADay() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceName = "2018-01-01Z"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.compliances.get(scope, complianceName); - console.log(result); -} - -async function main() { - getSecurityComplianceDataForADay(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/compliancesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/compliancesListSample.js deleted file mode 100644 index 5193f3454243..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/compliancesListSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to The Compliance scores of the specific management group. - * - * @summary The Compliance scores of the specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json - */ -async function getSecurityComplianceDataOverTime() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.compliances.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityComplianceDataOverTime(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/connectorsCreateOrUpdateSample.js deleted file mode 100644 index e78caafc18ae..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsCreateOrUpdateSample.js +++ /dev/null @@ -1,121 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json - */ -async function awsAssumeRoleCreateACloudAccountConnectorForASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev2"; - const connectorSetting = { - authenticationDetails: { - authenticationType: "awsAssumeRole", - awsAssumeRoleArn: "arn:aws:iam::81231569658:role/AscConnector", - awsExternalId: "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsCredConnectorSubscription_example.json - */ -async function awsCredCreateACloudAccountConnectorForASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const connectorSetting = { - authenticationDetails: { - authenticationType: "awsCreds", - awsAccessKeyId: "AKIARPZCNODDNAEQFSOE", - awsSecretAccessKey: "", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateGcpCredentialsConnectorSubscription_example.json - */ -async function gcpCredentialsCreateACloudAccountConnectorForASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "gcp_dev"; - const connectorSetting = { - authenticationDetails: { - type: "service_account", - authProviderX509CertUrl: "https://www.googleapis.com/oauth2/v1/certs", - authUri: "https://accounts.google.com/o/oauth2/auth", - authenticationType: "gcpCredentials", - clientEmail: "asc-135@asc-project-1234.iam.gserviceaccount.com", - clientId: "105889053725632919854", - clientX509CertUrl: - "https://www.googleapis.com/robot/v1/metadata/x509/asc-135%40asc-project-1234.iam.gserviceaccount.com", - organizationId: "AscDemoOrg", - privateKey: "******", - privateKeyId: "6efg587hra2568as34d22326b044cc20dc2af", - projectId: "asc-project-1234", - tokenUri: "https://oauth2.googleapis.com/token", - }, - hybridComputeSettings: { autoProvision: "Off" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate(connectorName, connectorSetting); - console.log(result); -} - -async function main() { - awsAssumeRoleCreateACloudAccountConnectorForASubscription(); - awsCredCreateACloudAccountConnectorForASubscription(); - gcpCredentialsCreateACloudAccountConnectorForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/connectorsDeleteSample.js deleted file mode 100644 index 0c174b1ad200..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete a cloud account connector from a subscription - * - * @summary Delete a cloud account connector from a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json - */ -async function deleteACloudAccountConnectorFromASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.delete(connectorName); - console.log(result); -} - -async function main() { - deleteACloudAccountConnectorFromASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/connectorsGetSample.js deleted file mode 100644 index 62fbe7a403c7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of a specific cloud account connector - * - * @summary Details of a specific cloud account connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json - */ -async function detailsOfASpecificCloudAccountConnector() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.get(connectorName); - console.log(result); -} - -async function main() { - detailsOfASpecificCloudAccountConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/connectorsListSample.js deleted file mode 100644 index bcb9813edb55..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/connectorsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Cloud accounts connectors of a subscription - * - * @summary Cloud accounts connectors of a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json - */ -async function getAllCloudAccountsConnectorsOfASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.connectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllCloudAccountsConnectorsOfASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsCreateSample.js deleted file mode 100644 index fbbb6424b88e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsCreateSample.js +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * - * @summary Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json - */ -async function createACustomAssessmentAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const customAssessmentAutomationBody = { - description: "Data should be encrypted", - compressedQuery: - "DQAKAEkAYQBtAF8ARwByAG8AdQBwAA0ACgB8ACAAZQB4AHQAZQBuAGQAIABIAGUAYQBsAHQAaABTAHQAYQB0AHUAcwAgAD0AIABpAGYAZgAoAHQAbwBzAHQAcgBpAG4AZwAoAFIAZQBjAG8AcgBkAC4AVQBzAGUAcgBOAGEAbQBlACkAIABjAG8AbgB0AGEAaQBuAHMAIAAnAHUAcwBlAHIAJwAsACAAJwBVAE4ASABFAEEATABUAEgAWQAnACwAIAAnAEgARQBBAEwAVABIAFkAJwApAA0ACgA=", - displayName: "Password Policy", - remediationDescription: "Encrypt store by...", - severity: "Medium", - supportedCloud: "AWS", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.create( - resourceGroupName, - customAssessmentAutomationName, - customAssessmentAutomationBody, - ); - console.log(result); -} - -async function main() { - createACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsDeleteSample.js deleted file mode 100644 index 8d3e3028c024..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsDeleteSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a custom assessment automation by name for a provided subscription - * - * @summary Deletes a custom assessment automation by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json - */ -async function deleteACustomAssessmentAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.delete( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main() { - deleteACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsGetSample.js deleted file mode 100644 index 7c76b5e6f6af..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsGetSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a single custom assessment automation by name for the provided subscription and resource group. - * - * @summary Gets a single custom assessment automation by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json - */ -async function getACustomAssessmentAutomation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.get( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main() { - getACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListByResourceGroupSample.js deleted file mode 100644 index cbb4e8fa49b6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListByResourceGroupSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription and resource group - * - * @summary List custom assessment automations by provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json - */ -async function listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customAssessmentAutomations.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListBySubscriptionSample.js deleted file mode 100644 index 82cfda94d1b0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customAssessmentAutomationsListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription - * - * @summary List custom assessment automations by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json - */ -async function listCustomAssessmentAutomationsInASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customAssessmentAutomations.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listCustomAssessmentAutomationsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsCreateSample.js deleted file mode 100644 index 151b1e1726d7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsCreateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates a custom entity store assignment for the provided subscription, if not already exists. - * - * @summary Creates a custom entity store assignment for the provided subscription, if not already exists. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json - */ -async function createACustomEntityStoreAssignment() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const customEntityStoreAssignmentRequestBody = { - principal: "aaduser=f3923a3e-ad57-4752-b1a9-fbf3c8e5e082;72f988bf-86f1-41af-91ab-2d7cd011db47", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.create( - resourceGroupName, - customEntityStoreAssignmentName, - customEntityStoreAssignmentRequestBody, - ); - console.log(result); -} - -async function main() { - createACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsDeleteSample.js deleted file mode 100644 index d8eda6683bf3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsDeleteSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete a custom entity store assignment by name for a provided subscription - * - * @summary Delete a custom entity store assignment by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json - */ -async function deleteACustomEntityStoreAssignment() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.delete( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main() { - deleteACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsGetSample.js deleted file mode 100644 index 89749f20957f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsGetSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a single custom entity store assignment by name for the provided subscription and resource group. - * - * @summary Gets a single custom entity store assignment by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json - */ -async function getACustomEntityStoreAssignment() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.get( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main() { - getACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListByResourceGroupSample.js deleted file mode 100644 index 112351d3284f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListByResourceGroupSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List custom entity store assignments by a provided subscription and resource group - * - * @summary List custom entity store assignments by a provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json - */ -async function listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customEntityStoreAssignments.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListBySubscriptionSample.js deleted file mode 100644 index bd7bec638bae..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/customEntityStoreAssignmentsListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List custom entity store assignments by provided subscription - * - * @summary List custom entity store assignments by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json - */ -async function listCustomEntityStoreAssignmentsInASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customEntityStoreAssignments.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listCustomEntityStoreAssignmentsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageCreateSample.js deleted file mode 100644 index b8e808791966..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageCreateSample.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates the Defender for Storage settings on a specified storage account. - * - * @summary Creates or updates the Defender for Storage settings on a specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json - */ -async function createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const defenderForStorageSetting = { - capGBPerMonth: -1, - isEnabledPropertiesMalwareScanningOnUploadIsEnabled: true, - overrideSubscriptionLevelSettings: true, - scanResultsEventGridTopicResourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.EventGrid/topics/sampletopic", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.create( - resourceId, - settingName, - defenderForStorageSetting, - ); - console.log(result); -} - -async function main() { - createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageGetSample.js deleted file mode 100644 index e1bab1cc4d64..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/defenderForStorageGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the Defender for Storage settings for the specified storage account. - * - * @summary Gets the Defender for Storage settings for the specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json - */ -async function getsTheDefenderForStorageSettingsForTheSpecifiedResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.get(resourceId, settingName); - console.log(result); -} - -async function main() { - getsTheDefenderForStorageSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsCreateOrUpdateSample.js deleted file mode 100644 index 01df5ab42050..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsCreateOrUpdateSample.js +++ /dev/null @@ -1,103 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Enabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardCurrentOnly() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardSelected() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - topLevelInventoryList: ["org1", "org2"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main() { - createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture(); - createOrUpdateDevOpsConfigurationsOnboardCurrentOnly(); - createOrUpdateDevOpsConfigurationsOnboardSelected(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsDeleteSample.js deleted file mode 100644 index 4ec36de6e426..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsDeleteSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a DevOps Connector. - * - * @summary Deletes a DevOps Connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json - */ -async function deleteDevOpsConfigurations() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginDeleteAndWait( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main() { - deleteDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsGetSample.js deleted file mode 100644 index 1a02386719d4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a DevOps Configuration. - * - * @summary Gets a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json - */ -async function getDevOpsConfigurations() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.get(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main() { - getDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsListSample.js deleted file mode 100644 index 2fcf98f8705b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsListSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List DevOps Configurations. - * - * @summary List DevOps Configurations. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json - */ -async function listDevOpsConfigurations() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.devOpsConfigurations.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsUpdateSample.js deleted file mode 100644 index 53c52a197c20..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsConfigurationsUpdateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a DevOps Configuration. - * - * @summary Updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json - */ -async function updateDevOpsConfigurations() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration = { - properties: { autoDiscovery: "Enabled" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main() { - updateDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsOperationResultsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/devOpsOperationResultsGetSample.js deleted file mode 100644 index 5096dfc2e52a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/devOpsOperationResultsGetSample.js +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json - */ -async function getDevOpsOperationResultsFailed() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "8d4caace-e7b3-4b3e-af99-73f76829ebcf"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json - */ -async function getDevOpsOperationResultsSucceeded() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "4e826cf1-5c36-4808-a7d2-fb4f5170978b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -async function main() { - getDevOpsOperationResultsFailed(); - getDevOpsOperationResultsSucceeded(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsCreateOrUpdateSample.js deleted file mode 100644 index d48ff9c6ed46..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsCreateOrUpdateSample.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to creates or updates the device security group on a specified IoT Hub resource. - * - * @summary Use this method to creates or updates the device security group on a specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json - */ -async function createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const deviceSecurityGroup = { - timeWindowRules: [ - { - isEnabled: true, - maxThreshold: 30, - minThreshold: 0, - ruleType: "ActiveConnectionsNotInAllowedRange", - timeWindowSize: "PT05M", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.createOrUpdate( - resourceId, - deviceSecurityGroupName, - deviceSecurityGroup, - ); - console.log(result); -} - -async function main() { - createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsDeleteSample.js deleted file mode 100644 index f0b3883f1be2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to User this method to deletes the device security group. - * - * @summary User this method to deletes the device security group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json - */ -async function deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.delete(resourceId, deviceSecurityGroupName); - console.log(result); -} - -async function main() { - deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsGetSample.js deleted file mode 100644 index 2cc6b1da3e60..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the device security group for the specified IoT Hub resource. - * - * @summary Use this method to get the device security group for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json - */ -async function getADeviceSecurityGroupForTheSpecifiedIoTHubResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.get(resourceId, deviceSecurityGroupName); - console.log(result); -} - -async function main() { - getADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsListSample.js deleted file mode 100644 index c6de65e1dc97..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/deviceSecurityGroupsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method get the list of device security groups for the specified IoT Hub resource. - * - * @summary Use this method get the list of device security groups for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json - */ -async function listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource() { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.deviceSecurityGroups.list(resourceId)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsGetSample.js deleted file mode 100644 index e15d1dcc1f2c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a specific discovered Security Solution. - * - * @summary Gets a specific discovered Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json - */ -async function getDiscoveredSecuritySolutionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const discoveredSecuritySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.discoveredSecuritySolutions.get( - resourceGroupName, - ascLocation, - discoveredSecuritySolutionName, - ); - console.log(result); -} - -async function main() { - getDiscoveredSecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListByHomeRegionSample.js deleted file mode 100644 index e0b28494e3c7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListByHomeRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription and location. - * - * @summary Gets a list of discovered Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json - */ -async function getDiscoveredSecuritySolutionsFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.discoveredSecuritySolutions.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getDiscoveredSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListSample.js deleted file mode 100644 index e6b2a00299a4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/discoveredSecuritySolutionsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription. - * - * @summary Gets a list of discovered Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json - */ -async function getDiscoveredSecuritySolutions() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.discoveredSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getDiscoveredSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsGetSample.js deleted file mode 100644 index 5937c749ccd5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsGetSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a specific external Security Solution. - * - * @summary Gets a specific external Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json - */ -async function getExternalSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "defaultresourcegroup-eus"; - const ascLocation = "centralus"; - const externalSecuritySolutionsName = - "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.externalSecuritySolutions.get( - resourceGroupName, - ascLocation, - externalSecuritySolutionsName, - ); - console.log(result); -} - -async function main() { - getExternalSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListByHomeRegionSample.js deleted file mode 100644 index 99e4941900ee..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListByHomeRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of external Security Solutions for the subscription and location. - * - * @summary Gets a list of external Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json - */ -async function getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.externalSecuritySolutions.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListSample.js deleted file mode 100644 index 08dc5d1540df..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/externalSecuritySolutionsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of external security solutions for the subscription. - * - * @summary Gets a list of external security solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json - */ -async function getExternalSecuritySolutionsOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.externalSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getExternalSecuritySolutionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/getSensitivitySettingsSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/getSensitivitySettingsSample.js deleted file mode 100644 index 3b624a8a48d6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/getSensitivitySettingsSample.js +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets data sensitivity settings for sensitive data discovery - * - * @summary Gets data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json - */ -async function getSensitivitySettings() { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.getSensitivitySettings(); - console.log(result); -} - -async function main() { - getSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersGetSample.js deleted file mode 100644 index 1f6354e999c0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersGetSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored GitHub owner. - * - * @summary Returns a monitored GitHub owner. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json - */ -async function getGitHubOwners() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.get(resourceGroupName, securityConnectorName, ownerName); - console.log(result); -} - -async function main() { - getGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListAvailableSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListAvailableSample.js deleted file mode 100644 index 23938ac23925..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListAvailableSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json - */ -async function listAvailableGitHubOwners() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.listAvailable(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main() { - listAvailableGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListSample.js deleted file mode 100644 index c23ebc5367bc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubOwnersListSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of GitHub owners onboarded to the connector. - * - * @summary Returns a list of GitHub owners onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json - */ -async function listGitHubOwners() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitHubOwners.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposGetSample.js deleted file mode 100644 index 59bee10f1b06..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposGetSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored GitHub repository. - * - * @summary Returns a monitored GitHub repository. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json - */ -async function getGitHubRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const repoName = "myGitHubRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubRepos.get( - resourceGroupName, - securityConnectorName, - ownerName, - repoName, - ); - console.log(result); -} - -async function main() { - getGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposListSample.js deleted file mode 100644 index fac902b8233f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitHubReposListSample.js +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of GitHub repositories onboarded to the connector. - * - * @summary Returns a list of GitHub repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json - */ -async function listGitHubRepos() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitHubRepos.list( - resourceGroupName, - securityConnectorName, - ownerName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsGetSample.js deleted file mode 100644 index 5161918cf8d0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored GitLab Group resource for a given fully-qualified name. - * - * @summary Returns a monitored GitLab Group resource for a given fully-qualified name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json - */ -async function getGitLabGroups() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.get( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main() { - getGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListAvailableSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListAvailableSample.js deleted file mode 100644 index 137893301599..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListAvailableSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json - */ -async function listAvailableGitLabGroups() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.listAvailable(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main() { - listAvailableGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListSample.js deleted file mode 100644 index c0a28902b289..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabGroupsListSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a list of GitLab groups onboarded to the connector. - * - * @summary Returns a list of GitLab groups onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json - */ -async function listGitLabGroups() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitLabGroups.list(resourceGroupName, securityConnectorName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsGetSample.js deleted file mode 100644 index 07a22bc44fe1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsGetSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * - * @summary Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json - */ -async function getGitLabProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const projectName = "myGitLabProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabProjects.get( - resourceGroupName, - securityConnectorName, - groupFQName, - projectName, - ); - console.log(result); -} - -async function main() { - getGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsListSample.js deleted file mode 100644 index c76e4afe2802..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabProjectsListSample.js +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * - * @summary Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json - */ -async function listGitLabProjects() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitLabProjects.list( - resourceGroupName, - securityConnectorName, - groupFQName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabSubgroupsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/gitLabSubgroupsListSample.js deleted file mode 100644 index 1fe035404dc4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/gitLabSubgroupsListSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * - * @summary Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json - */ -async function listGitLabSubgroups() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabSubgroups.list( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main() { - listGitLabSubgroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsCreateOrUpdateSample.js deleted file mode 100644 index 2f7cb9443f86..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsCreateOrUpdateSample.js +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a governance assignment on the given subscription. - * - * @summary Creates or updates a governance assignment on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json - */ -async function createGovernanceAssignment() { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const governanceAssignment = { - additionalData: { - ticketLink: "https://snow.com", - ticketNumber: 123123, - ticketStatus: "Active", - }, - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isGracePeriod: true, - owner: "user@contoso.com", - remediationDueDate: new Date("2022-01-07T13:00:00.0000000Z"), - remediationEta: { - eta: new Date("2022-01-08T13:00:00.0000000Z"), - justification: "Justification of ETA", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.createOrUpdate( - scope, - assessmentName, - assignmentKey, - governanceAssignment, - ); - console.log(result); -} - -async function main() { - createGovernanceAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsDeleteSample.js deleted file mode 100644 index 4c8f88f4b090..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete a GovernanceAssignment over a given scope - * - * @summary Delete a GovernanceAssignment over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json - */ -async function deleteSecurityAssignment() { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.delete(scope, assessmentName, assignmentKey); - console.log(result); -} - -async function main() { - deleteSecurityAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsGetSample.js deleted file mode 100644 index bd3904fba427..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a specific governanceAssignment for the requested scope by AssignmentKey - * - * @summary Get a specific governanceAssignment for the requested scope by AssignmentKey - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json - */ -async function getGovernanceAssignmentBySpecificGovernanceAssignmentKey() { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.get(scope, assessmentName, assignmentKey); - console.log(result); -} - -async function main() { - getGovernanceAssignmentBySpecificGovernanceAssignmentKey(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsListSample.js deleted file mode 100644 index 3e62356b3d90..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceAssignmentsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get governance assignments on all of your resources inside a scope - * - * @summary Get governance assignments on all of your resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json - */ -async function listGovernanceAssignments() { - const scope = "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceAssignments.list(scope, assessmentName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGovernanceAssignments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesCreateOrUpdateSample.js deleted file mode 100644 index b8b896f9140a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesCreateOrUpdateSample.js +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverManagementGroupScope() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule = { - description: "A rule for a management group", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Management group rule", - excludedScopes: ["/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"], - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSecurityConnectorScope() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule = { - description: "A rule on critical GCP recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "GCP Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSubscriptionScope() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule = { - description: "A rule for critical recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate(scope, ruleId, governanceRule); - console.log(result); -} - -async function main() { - createOrUpdateGovernanceRuleOverManagementGroupScope(); - createOrUpdateGovernanceRuleOverSecurityConnectorScope(); - createOrUpdateGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesDeleteSample.js deleted file mode 100644 index 514dc307cab4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesDeleteSample.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverManagementGroupScope() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSecurityConnectorScope() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSubscriptionScope() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -async function main() { - deleteAGovernanceRuleOverManagementGroupScope(); - deleteAGovernanceRuleOverSecurityConnectorScope(); - deleteAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesExecuteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesExecuteSample.js deleted file mode 100644 index 60705746f7eb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesExecuteSample.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json - */ -async function executeGovernanceRuleOverSubscriptionScope() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json - */ -async function executeGovernanceRuleOverManagementGroupScope() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json - */ -async function executeGovernanceRuleOverSecurityConnectorScope() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait(scope, ruleId); - console.log(result); -} - -async function main() { - executeGovernanceRuleOverSubscriptionScope(); - executeGovernanceRuleOverManagementGroupScope(); - executeGovernanceRuleOverSecurityConnectorScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesGetSample.js deleted file mode 100644 index 9b0c35357c10..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesGetSample.js +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json - */ -async function getAGovernanceRuleOverManagementGroupScope() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSecurityConnectorScope() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSubscriptionScope() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -async function main() { - getAGovernanceRuleOverManagementGroupScope(); - getAGovernanceRuleOverSecurityConnectorScope(); - getAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesListSample.js deleted file mode 100644 index 8524c8570bd9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesListSample.js +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json - */ -async function listGovernanceRulesByManagementGroupScope() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json - */ -async function listGovernanceRulesBySecurityConnectorScope() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json - */ -async function listGovernanceRulesBySubscriptionScope() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listGovernanceRulesByManagementGroupScope(); - listGovernanceRulesBySecurityConnectorScope(); - listGovernanceRulesBySubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesOperationResultsSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesOperationResultsSample.js deleted file mode 100644 index cb83d28c8210..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/governanceRulesOperationResultsSample.js +++ /dev/null @@ -1,70 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverManagementGroup() { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSecurityConnector() { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSubscription() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults(scope, ruleId, operationId); - console.log(result); -} - -async function main() { - getGovernanceRulesLongRunOperationResultOverManagementGroup(); - getGovernanceRulesLongRunOperationResultOverSecurityConnector(); - getGovernanceRulesLongRunOperationResultOverSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsGetSample.js deleted file mode 100644 index f7f107dabbf8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get health report of resource - * - * @summary Get health report of resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json - */ -async function getHealthReportOfResource() { - const resourceId = - "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2/resourcegroups/E2E-IBB0WX/providers/Microsoft.Security/securityconnectors/AwsConnectorAllOfferings"; - const healthReportName = "909c629a-bf39-4521-8e4f-10b443a0bc02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.healthReports.get(resourceId, healthReportName); - console.log(result); -} - -async function main() { - getHealthReportOfResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsListSample.js deleted file mode 100644 index 4658105e7f83..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/healthReportsListSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * - * @summary Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json - */ -async function listHealthReports() { - const scope = "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.healthReports.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listHealthReports(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesCreateOrUpdateSample.js deleted file mode 100644 index d60f2aaab856..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesCreateOrUpdateSample.js +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json - */ -async function createOrUpdateAnInformationProtectionPolicyForAManagementGroup() { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const informationProtectionPolicy = { - informationTypes: { - "3bf3549199b841f286d5C1200a7df658": { - custom: true, - displayName: "Custom", - enabled: true, - keywords: [{ canBeNumeric: true, custom: true, pattern: "%custom%" }], - order: 1400, - recommendedLabelId: "7aa516c7-5a53-4857-bc6e-6808c6acd542", - }, - "7fb9419d24734ad88e11B25cc8cf6a07": { - custom: false, - displayName: "Networking", - enabled: true, - keywords: [{ canBeNumeric: false, custom: true, pattern: "%networking%" }], - order: 100, - recommendedLabelId: "575739d2-3d53-4df0-9042-4c7772d5c7b1", - }, - }, - labels: { - "1345da73Bc5a4a8fB7dd3820eb713da8": { - displayName: "Public", - enabled: true, - order: 100, - }, - "575739d23d534df090424c7772d5c7b1": { - displayName: "Confidential", - enabled: true, - order: 300, - }, - "7aa516c75a534857Bc6e6808c6acd542": { - displayName: "General", - enabled: true, - order: 200, - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.createOrUpdate( - scope, - informationProtectionPolicyName, - informationProtectionPolicy, - ); - console.log(result); -} - -async function main() { - createOrUpdateAnInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesGetSample.js deleted file mode 100644 index c018edeb4e87..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesGetSample.js +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json - */ -async function getTheCustomizedInformationProtectionPolicyForAManagementGroup() { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json - */ -async function getTheEffectiveInformationProtectionPolicyForAManagementGroup() { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "effective"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -async function main() { - getTheCustomizedInformationProtectionPolicyForAManagementGroup(); - getTheEffectiveInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesListSample.js deleted file mode 100644 index 5eb1cb2f94e5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/informationProtectionPoliciesListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Information protection policies of a specific management group. - * - * @summary Information protection policies of a specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json - */ -async function getInformationProtectionPolicies() { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.informationProtectionPolicies.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getInformationProtectionPolicies(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsGetSample.js deleted file mode 100644 index 28bd65354fbd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get IoT Security Analytics metrics. - * - * @summary Use this method to get IoT Security Analytics metrics. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json - */ -async function getSecuritySolutionAnalytics() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.get(resourceGroupName, solutionName); - console.log(result); -} - -async function main() { - getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsListSample.js deleted file mode 100644 index a6e7e83b6fb3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionAnalyticsListSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get IoT security Analytics metrics in an array. - * - * @summary Use this method to get IoT security Analytics metrics in an array. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json - */ -async function getSecuritySolutionAnalytics() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.list(resourceGroupName, solutionName); - console.log(result); -} - -async function main() { - getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionCreateOrUpdateSample.js deleted file mode 100644 index 1e5918aa0de4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionCreateOrUpdateSample.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to create or update yours IoT Security solution - * - * @summary Use this method to create or update yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json - */ -async function createOrUpdateAIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const iotSecuritySolutionData = { - disabledDataSources: [], - displayName: "Solution Default", - export: [], - iotHubs: [ - "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub", - ], - location: "East Us", - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - status: "Enabled", - tags: {}, - unmaskedIpLoggingStatus: "Enabled", - userDefinedResources: { - query: 'where type != "microsoft.devices/iothubs" | where name contains "iot"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - workspace: - "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.createOrUpdate( - resourceGroupName, - solutionName, - iotSecuritySolutionData, - ); - console.log(result); -} - -async function main() { - createOrUpdateAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionDeleteSample.js deleted file mode 100644 index 3e9aebed11ac..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to delete yours IoT Security solution - * - * @summary Use this method to delete yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json - */ -async function deleteAnIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.delete(resourceGroupName, solutionName); - console.log(result); -} - -async function main() { - deleteAnIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionGetSample.js deleted file mode 100644 index b08cdec7605d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to User this method to get details of a specific IoT Security solution based on solution name - * - * @summary User this method to get details of a specific IoT Security solution based on solution name - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json - */ -async function getAIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.get(resourceGroupName, solutionName); - console.log(result); -} - -async function main() { - getAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListByResourceGroupSample.js deleted file mode 100644 index fa6655284646..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListByResourceGroupSample.js +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json - */ -async function listIoTSecuritySolutionsByResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json - */ -async function listIoTSecuritySolutionsByResourceGroupAndIoTHub() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyRg"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listByResourceGroup( - resourceGroupName, - options, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listIoTSecuritySolutionsByResourceGroup(); - listIoTSecuritySolutionsByResourceGroupAndIoTHub(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListBySubscriptionSample.js deleted file mode 100644 index 0917ae61f1b2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionListBySubscriptionSample.js +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json - */ -async function listIoTSecuritySolutionsByIoTHub() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listBySubscription(options)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json - */ -async function listIoTSecuritySolutionsBySubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listIoTSecuritySolutionsByIoTHub(); - listIoTSecuritySolutionsBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionUpdateSample.js deleted file mode 100644 index 792601d382ef..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionUpdateSample.js +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * - * @summary Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json - */ -async function useThisMethodToUpdateExistingIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const solutionName = "default"; - const updateIotSecuritySolutionData = { - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - tags: { foo: "bar" }, - userDefinedResources: { - query: 'where type != "microsoft.devices/iothubs" | where name contains "v2"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.update( - resourceGroupName, - solutionName, - updateIotSecuritySolutionData, - ); - console.log(result); -} - -async function main() { - useThisMethodToUpdateExistingIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js deleted file mode 100644 index 36921099c2da..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to dismiss an aggregated IoT Security Solution Alert. - * - * @summary Use this method to dismiss an aggregated IoT Security Solution Alert. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json - */ -async function dismissAnAggregatedIoTSecuritySolutionAlert() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02/dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsAggregatedAlert.dismiss( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main() { - dismissAnAggregatedIoTSecuritySolutionAlert(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js deleted file mode 100644 index 14691230dda1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * - * @summary Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json - */ -async function getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsAggregatedAlert.get( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main() { - getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js deleted file mode 100644 index 13938a5c4e8a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the aggregated alert list of yours IoT Security solution. - * - * @summary Use this method to get the aggregated alert list of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json - */ -async function getTheAggregatedAlertListOfYoursIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolutionsAnalyticsAggregatedAlert.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getTheAggregatedAlertListOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationGetSample.js deleted file mode 100644 index c06b62ce72b8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * - * @summary Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json - */ -async function getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedRecommendationName = "OpenPortsOnDevice"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsRecommendation.get( - resourceGroupName, - solutionName, - aggregatedRecommendationName, - ); - console.log(result); -} - -async function main() { - getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationListSample.js deleted file mode 100644 index 4b358dcea489..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/iotSecuritySolutionsAnalyticsRecommendationListSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * - * @summary Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json - */ -async function getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolutionsAnalyticsRecommendation.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesCreateOrUpdateSample.js deleted file mode 100644 index 31f232acb687..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesCreateOrUpdateSample.js +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Create a policy for protecting resources using Just-in-Time access control - * - * @summary Create a policy for protecting resources using Just-in-Time access control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json - */ -async function createJitNetworkAccessPolicy() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body = { - name: "default", - type: "Microsoft.Security/locations/jitNetworkAccessPolicies", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", - kind: "Basic", - location: "westeurope", - provisioningState: "Succeeded", - requests: [ - { - requestor: "barbara@contoso.com", - startTimeUtc: new Date("2018-05-17T08:06:45.5691611Z"), - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "192.127.0.2", - endTimeUtc: new Date("2018-05-17T09:06:45.5691611Z"), - number: 3389, - status: "Initiated", - statusReason: "UserRequested", - }, - ], - }, - ], - }, - ], - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 22, - protocol: "*", - }, - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 3389, - protocol: "*", - }, - ], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.createOrUpdate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main() { - createJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesDeleteSample.js deleted file mode 100644 index 897601b4ff53..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesDeleteSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete a Just-in-Time access control policy. - * - * @summary Delete a Just-in-Time access control policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json - */ -async function deleteAJitNetworkAccessPolicy() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.delete( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main() { - deleteAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesGetSample.js deleted file mode 100644 index bc87e9b525b7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json - */ -async function getJitNetworkAccessPolicy() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.get( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main() { - getJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesInitiateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesInitiateSample.js deleted file mode 100644 index b8fcee81bb4a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesInitiateSample.js +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Initiate a JIT access from a specific Just-in-Time policy configuration. - * - * @summary Initiate a JIT access from a specific Just-in-Time policy configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json - */ -async function initiateAnActionOnAJitNetworkAccessPolicy() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body = { - justification: "testing a new version of the product", - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { allowedSourceAddressPrefix: "192.127.0.2", number: 3389, endTimeUtc: new Date() }, - ], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.initiate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main() { - initiateAnActionOnAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByRegionSample.js deleted file mode 100644 index 96f6532d3eef..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json - */ -async function getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js deleted file mode 100644 index cb7fe60f20d1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json - */ -async function getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByResourceGroupAndRegion( - resourceGroupName, - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupSample.js deleted file mode 100644 index 08b83adb708b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListByResourceGroupSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json - */ -async function getJitNetworkAccessPoliciesOnAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getJitNetworkAccessPoliciesOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListSample.js deleted file mode 100644 index 503ba15d153a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/jitNetworkAccessPoliciesListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control. - * - * @summary Policies for protecting resources using Just-in-Time access control. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json - */ -async function getJitNetworkAccessPoliciesOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getJitNetworkAccessPoliciesOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/locationsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/locationsGetSample.js deleted file mode 100644 index 8c12e3effa46..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/locationsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details of a specific location - * - * @summary Details of a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json - */ -async function getSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.locations.get(ascLocation); - console.log(result); -} - -async function main() { - getSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/locationsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/locationsListSample.js deleted file mode 100644 index 7c4e711622ec..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/locationsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * - * @summary The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json - */ -async function getSecurityDataLocations() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.locations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityDataLocations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsGetSample.js deleted file mode 100644 index 4003a6f29abb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsGetSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to The default configuration or data needed to onboard the machine to MDE - * - * @summary The default configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json - */ -async function theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.get(); - console.log(result); -} - -async function main() { - theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsListSample.js deleted file mode 100644 index fbb7497ed39a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/mdeOnboardingsListSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to The configuration or data needed to onboard the machine to MDE - * - * @summary The configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json - */ -async function theConfigurationOrDataNeededToOnboardTheMachineToMde() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.list(); - console.log(result); -} - -async function main() { - theConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/package.json b/sdk/security/arm-security/samples/v6-beta/javascript/package.json deleted file mode 100644 index e406b1323271..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/package.json +++ /dev/null @@ -1,32 +0,0 @@ -{ - "name": "@azure-samples/arm-security-js-beta", - "private": true, - "version": "1.0.0", - "description": " client library samples for JavaScript (Beta)", - "engines": { - "node": ">=20.0.0" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/security/arm-security" - }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security", - "dependencies": { - "@azure/arm-security": "next", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - } -} diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/pricingsDeleteSample.js deleted file mode 100644 index 6d3c292361d3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * - * @summary Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json - */ -async function deleteAPricingOnResource() { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.delete(scopeId, pricingName); - console.log(result); -} - -async function main() { - deleteAPricingOnResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/pricingsGetSample.js deleted file mode 100644 index c3e960e3bb8f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsGetSample.js +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json - */ -async function getPricingsOnResourceVirtualMachinesPlan() { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json - */ -async function getPricingsOnSubscriptionCloudPosturePlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json - */ -async function getPricingsOnSubscriptionContainersPlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Containers"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json - */ -async function getPricingsOnSubscriptionDnsPlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Dns"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json - */ -async function getPricingsOnSubscriptionStorageAccountsPlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "StorageAccounts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json - */ -async function getPricingsOnSubscriptionVirtualMachinesPlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -async function main() { - getPricingsOnResourceVirtualMachinesPlan(); - getPricingsOnSubscriptionCloudPosturePlan(); - getPricingsOnSubscriptionContainersPlan(); - getPricingsOnSubscriptionDnsPlan(); - getPricingsOnSubscriptionStorageAccountsPlan(); - getPricingsOnSubscriptionVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/pricingsListSample.js deleted file mode 100644 index 39c7deb540dc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsListSample.js +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json - */ -async function getPricingsOnResource() { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json - */ -async function getPricingsOnSubscription() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json - */ -async function getPricingsOnSubscriptionWithPlansFilter() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -async function main() { - getPricingsOnResource(); - getPricingsOnSubscription(); - getPricingsOnSubscriptionWithPlansFilter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/pricingsUpdateSample.js deleted file mode 100644 index de706427dedb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/pricingsUpdateSample.js +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json - */ -async function updatePricingOnResourceExampleForVirtualMachinesPlan() { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "virtualMachines"; - const pricing = { pricingTier: "Standard", subPlan: "P1" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json - */ -async function updatePricingOnSubscriptionExampleForVirtualMachinesPlan() { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const pricing = { - enforce: "True", - pricingTier: "Standard", - subPlan: "P2", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -async function main() { - updatePricingOnResourceExampleForVirtualMachinesPlan(); - updatePricingOnSubscriptionExampleForCloudPosturePlan(); - updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess(); - updatePricingOnSubscriptionExampleForVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsGetSample.js deleted file mode 100644 index 420ce7e0fde0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Supported regulatory compliance details and state for selected assessment - * - * @summary Supported regulatory compliance details and state for selected assessment - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json - */ -async function getSelectedRegulatoryComplianceAssessmentDetailsAndState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const regulatoryComplianceAssessmentName = "968548cb-02b3-8cd2-11f8-0cf64ab1a347"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceAssessments.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - regulatoryComplianceAssessmentName, - ); - console.log(result); -} - -async function main() { - getSelectedRegulatoryComplianceAssessmentDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsListSample.js deleted file mode 100644 index 4c7cdc155f7e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceAssessmentsListSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Details and state of assessments mapped to selected regulatory compliance control - * - * @summary Details and state of assessments mapped to selected regulatory compliance control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json - */ -async function getAllAssessmentsMappedToSelectedRegulatoryComplianceControl() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceAssessments.list( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllAssessmentsMappedToSelectedRegulatoryComplianceControl(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsGetSample.js deleted file mode 100644 index 1131ec61133c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsGetSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Selected regulatory compliance control details and state - * - * @summary Selected regulatory compliance control details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json - */ -async function getSelectedRegulatoryComplianceControlDetailsAndState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceControls.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - ); - console.log(result); -} - -async function main() { - getSelectedRegulatoryComplianceControlDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsListSample.js deleted file mode 100644 index 0e8c766dbb6a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceControlsListSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to All supported regulatory compliance controls details and state for selected standard - * - * @summary All supported regulatory compliance controls details and state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json - */ -async function getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceControls.list( - regulatoryComplianceStandardName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsGetSample.js deleted file mode 100644 index 672517f4c105..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Supported regulatory compliance details state for selected standard - * - * @summary Supported regulatory compliance details state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json - */ -async function getSelectedRegulatoryComplianceStandardDetailsAndState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceStandards.get(regulatoryComplianceStandardName); - console.log(result); -} - -async function main() { - getSelectedRegulatoryComplianceStandardDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsListSample.js deleted file mode 100644 index 67f641db10ce..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/regulatoryComplianceStandardsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Supported regulatory compliance standards details and state - * - * @summary Supported regulatory compliance standards details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json - */ -async function getAllSupportedRegulatoryComplianceStandardsDetailsAndState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceStandards.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getAllSupportedRegulatoryComplianceStandardsDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sample.env b/sdk/security/arm-security/samples/v6-beta/javascript/sample.env deleted file mode 100644 index 672847a3fea0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sample.env +++ /dev/null @@ -1,4 +0,0 @@ -# App registration secret for AAD authentication -AZURE_CLIENT_SECRET= -AZURE_CLIENT_ID= -AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListBySubscriptionSample.js deleted file mode 100644 index 26b6287211ea..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to For a specified subscription, list the available security controls, their assessments, and the max score - * - * @summary For a specified subscription, list the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json - */ -async function listSecurityControlsDefinitionBySubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControlDefinitions.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityControlsDefinitionBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListSample.js deleted file mode 100644 index 2c5812d474f0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlDefinitionsListSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List the available security controls, their assessments, and the max score - * - * @summary List the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json - */ -async function listSecurityControlsDefinition() { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.secureScoreControlDefinitions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityControlsDefinition(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListBySecureScoreSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListBySecureScoreSample.js deleted file mode 100644 index 5664e4d8ee11..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListBySecureScoreSample.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json - */ -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.listBySecureScore(secureScoreName)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json - */ -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const expand = "definition"; - const options = { - expand, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.listBySecureScore(secureScoreName, options)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative(); - getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListSample.js deleted file mode 100644 index fd3bc19561ae..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoreControlsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get all security controls within a scope - * - * @summary Get all security controls within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json - */ -async function listAllSecureScoresControls() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllSecureScoresControls(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresGetSample.js deleted file mode 100644 index 3b2402e0460c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * - * @summary Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json - */ -async function getSingleSecureScore() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.secureScores.get(secureScoreName); - console.log(result); -} - -async function main() { - getSingleSecureScore(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresListSample.js deleted file mode 100644 index 6a745459565c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/secureScoresListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * - * @summary List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json - */ -async function listSecureScores() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScores.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecureScores(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationCreateOrUpdateSample.js deleted file mode 100644 index 85677f9e2257..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationCreateOrUpdateSample.js +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or update a security Application on the given security connector. - * - * @summary Creates or update a security Application on the given security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json - */ -async function createApplication() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application = { - description: "An application on critical GCP recommendations", - conditionSets: [ - { - conditions: [{ operator: "contains", property: "$.Id", value: "-prod-" }], - }, - ], - displayName: "GCP Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.createOrUpdate( - resourceGroupName, - securityConnectorName, - applicationId, - application, - ); - console.log(result); -} - -async function main() { - createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationDeleteSample.js deleted file mode 100644 index d97a587d8e2a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationDeleteSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json - */ -async function deleteSecurityApplication() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.delete( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main() { - deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationGetSample.js deleted file mode 100644 index 7138eba31020..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json - */ -async function getSecurityApplicationsBySpecificApplicationId() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.get( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main() { - getSecurityApplicationsBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationsListSample.js deleted file mode 100644 index c8b7509578ac..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorApplicationsListSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a list of all relevant applications over a security connector level scope - * - * @summary Get a list of all relevant applications over a security connector level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json - */ -async function listSecurityApplicationsBySecurityConnectorLevelScope() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectorApplications.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityApplicationsBySecurityConnectorLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsCreateOrUpdateSample.js deleted file mode 100644 index 7a891b901a28..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsCreateOrUpdateSample.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * - * @summary Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json - */ -async function createOrUpdateASecurityConnector() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector = { - environmentData: { environmentType: "AwsAccount", scanInterval: 4 }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.createOrUpdate( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main() { - createOrUpdateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsDeleteSample.js deleted file mode 100644 index 6a0713f4ab65..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a security connector. - * - * @summary Deletes a security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json - */ -async function deleteASecurityConnector() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.delete(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main() { - deleteASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsGetSample.js deleted file mode 100644 index 7108b0d4c78d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Retrieves details of a specific security connector - * - * @summary Retrieves details of a specific security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json - */ -async function retrieveASecurityConnector() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.get(resourceGroupName, securityConnectorName); - console.log(result); -} - -async function main() { - retrieveASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListByResourceGroupSample.js deleted file mode 100644 index c98fc8dac4f9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListByResourceGroupSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * - * @summary Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json - */ -async function listAllSecurityConnectorsOfASpecifiedResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectors.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllSecurityConnectorsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListSample.js deleted file mode 100644 index 6f08c52cf702..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * - * @summary Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json - */ -async function listAllSecurityConnectorsOfASpecifiedSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listAllSecurityConnectorsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsUpdateSample.js deleted file mode 100644 index 192646c17711..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityConnectorsUpdateSample.js +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates a security connector - * - * @summary Updates a security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json - */ -async function updateASecurityConnector() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector = { - environmentData: { environmentType: "AwsAccount" }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.update( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main() { - updateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsCreateSample.js deleted file mode 100644 index 28c44496bb13..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsCreateSample.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Create security contact configurations for the subscription - * - * @summary Create security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json - */ -async function createSecurityContactData() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const securityContact = { - emails: "john@contoso.com;jane@contoso.com", - isEnabled: true, - notificationsByRole: { roles: ["Owner"], state: "On" }, - notificationsSources: [ - { minimalRiskLevel: "Critical", sourceType: "AttackPath" }, - { minimalSeverity: "Medium", sourceType: "Alert" }, - ], - phone: "(214)275-4038", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.create(securityContactName, securityContact); - console.log(result); -} - -async function main() { - createSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsDeleteSample.js deleted file mode 100644 index 5582b5e647d0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete security contact configurations for the subscription - * - * @summary Delete security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json - */ -async function deletesASecurityContactData() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.delete(securityContactName); - console.log(result); -} - -async function main() { - deletesASecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsGetSample.js deleted file mode 100644 index b8fef94da999..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get Default Security contact configurations for the subscription - * - * @summary Get Default Security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json - */ -async function getASecurityContact() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.get(securityContactName); - console.log(result); -} - -async function main() { - getASecurityContact(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsListSample.js deleted file mode 100644 index e3c5f3a509a1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityContactsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to List all security contact configurations for the subscription - * - * @summary List all security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json - */ -async function listSecurityContactData() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityContacts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsCreateOrUpdateSample.js deleted file mode 100644 index ccf3b86cecd3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsCreateOrUpdateSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates Microsoft Defender for Cloud security operator on the given scope. - * - * @summary Creates Microsoft Defender for Cloud security operator on the given scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json - */ -async function createASecurityOperatorOnTheGivenScope() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.createOrUpdate(pricingName, securityOperatorName); - console.log(result); -} - -async function main() { - createASecurityOperatorOnTheGivenScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsDeleteSample.js deleted file mode 100644 index 47f0e13ffa38..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsDeleteSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete Microsoft Defender for Cloud securityOperator in the subscription. - * - * @summary Delete Microsoft Defender for Cloud securityOperator in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json - */ -async function deleteSecurityOperatorOnSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.delete(pricingName, securityOperatorName); - console.log(result); -} - -async function main() { - deleteSecurityOperatorOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsGetSample.js deleted file mode 100644 index 4680ed948ac9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a specific security operator for the requested scope. - * - * @summary Get a specific security operator for the requested scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json - */ -async function getASpecificSecurityOperatorByScopeAndSecurityOperatorName() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.get(pricingName, securityOperatorName); - console.log(result); -} - -async function main() { - getASpecificSecurityOperatorByScopeAndSecurityOperatorName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsListSample.js deleted file mode 100644 index 8e9dbcc3c496..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securityOperatorsListSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud securityOperators in the subscription. - * - * @summary Lists Microsoft Defender for Cloud securityOperators in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json - */ -async function listSecurityOperators() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.list(pricingName); - console.log(result); -} - -async function main() { - listSecurityOperators(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsGetSample.js deleted file mode 100644 index c9f6f7412824..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsGetSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a specific Security Solution. - * - * @summary Gets a specific Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json - */ -async function getASecuritySolutionFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const securitySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutions.get( - resourceGroupName, - ascLocation, - securitySolutionName, - ); - console.log(result); -} - -async function main() { - getASecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsListSample.js deleted file mode 100644 index a4d77e7ff33d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of Security Solutions for the subscription. - * - * @summary Gets a list of Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json - */ -async function getSecuritySolutions() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securitySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListByHomeRegionSample.js deleted file mode 100644 index f04d919d6d81..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListByHomeRegionSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets list of all supported Security Solutions for subscription and location. - * - * @summary Gets list of all supported Security Solutions for subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json - */ -async function getSecuritySolutionsFromASecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westcentralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.securitySolutionsReferenceDataOperations.listByHomeRegion(ascLocation); - console.log(result); -} - -async function main() { - getSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListSample.js deleted file mode 100644 index 287c1f41a637..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/securitySolutionsReferenceDataListSample.js +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of all supported Security Solutions for the subscription. - * - * @summary Gets a list of all supported Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json - */ -async function getSecuritySolutions() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutionsReferenceDataOperations.list(); - console.log(result); -} - -async function main() { - getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sensitivitySettingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sensitivitySettingsListSample.js deleted file mode 100644 index 61ada310ea21..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sensitivitySettingsListSample.js +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list with a single sensitivity settings resource - * - * @summary Gets a list with a single sensitivity settings resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json - */ -async function getSensitivitySettingsList() { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sensitivitySettings.list(); - console.log(result); -} - -async function main() { - getSensitivitySettingsList(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentCreateOrUpdateSample.js deleted file mode 100644 index 03811d9a8459..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentCreateOrUpdateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * - * @summary Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json - */ -async function createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.createOrUpdate( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main() { - createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentDeleteSample.js deleted file mode 100644 index e5bc65c9e7d0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentDeleteSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Removing server vulnerability assessment from a resource. - * - * @summary Removing server vulnerability assessment from a resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json - */ -async function deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.beginDeleteAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main() { - deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentGetSample.js deleted file mode 100644 index 79fda33dfcda..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentGetSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json - */ -async function getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main() { - getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentListByExtendedResourceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentListByExtendedResourceSample.js deleted file mode 100644 index dd35c9fe7384..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentListByExtendedResourceSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json - */ -async function getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main() { - getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js deleted file mode 100644 index 418f38449bc7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Create or update a server vulnerability assessments setting of the requested kind on the subscription - * - * @summary Create or update a server vulnerability assessments setting of the requested kind on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json - */ -async function setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const serverVulnerabilityAssessmentsSetting = { - kind: "AzureServersSetting", - selectedProvider: "MdeTvm", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.createOrUpdate( - settingKind, - serverVulnerabilityAssessmentsSetting, - ); - console.log(result); -} - -async function main() { - setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsDeleteSample.js deleted file mode 100644 index f5f030948698..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Delete the server vulnerability assessments setting of the requested kind from the subscription - * - * @summary Delete the server vulnerability assessments setting of the requested kind from the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json - */ -async function deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.delete(settingKind); - console.log(result); -} - -async function main() { - deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsGetSample.js deleted file mode 100644 index b4889f2a161d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * - * @summary Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json - */ -async function getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentsSettings.get(settingKind); - console.log(result); -} - -async function main() { - getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js deleted file mode 100644 index 2c2b23a05efa..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a list of all the server vulnerability assessments settings over a subscription level scope - * - * @summary Get a list of all the server vulnerability assessments settings over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json - */ -async function listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.serverVulnerabilityAssessmentsSettings.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/settingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/settingsGetSample.js deleted file mode 100644 index 33bd2121c887..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/settingsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Settings of different configurations in Microsoft Defender for Cloud - * - * @summary Settings of different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json - */ -async function getASettingOnSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.get(settingName); - console.log(result); -} - -async function main() { - getASettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/settingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/settingsListSample.js deleted file mode 100644 index b86a374d6b03..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/settingsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Settings about different configurations in Microsoft Defender for Cloud - * - * @summary Settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json - */ -async function getSettingsOfSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.settings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSettingsOfSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/settingsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/settingsUpdateSample.js deleted file mode 100644 index 3c666de311ac..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/settingsUpdateSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to updating settings about different configurations in Microsoft Defender for Cloud - * - * @summary updating settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json - */ -async function updateASettingForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const setting = { - enabled: true, - kind: "DataExportSettings", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.update(settingName, setting); - console.log(result); -} - -async function main() { - updateASettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesGetSample.js deleted file mode 100644 index 63ea50f98822..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesGetSample.js +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a single software data of the virtual machine. - * - * @summary Gets a single software data of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json - */ -async function getsASingleSoftwareDataOfTheVirtualMachine() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const softwareName = "outlook_16.0.10371.20060"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.softwareInventories.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - softwareName, - ); - console.log(result); -} - -async function main() { - getsASingleSoftwareDataOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListByExtendedResourceSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListByExtendedResourceSample.js deleted file mode 100644 index 419ac9b1b48b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListByExtendedResourceSample.js +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the software inventory of the virtual machine. - * - * @summary Gets the software inventory of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json - */ -async function getsTheSoftwareInventoryOfTheVirtualMachine() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.softwareInventories.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getsTheSoftwareInventoryOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListBySubscriptionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListBySubscriptionSample.js deleted file mode 100644 index 7171e831a3c1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/softwareInventoriesListBySubscriptionSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the software inventory of all virtual machines in the subscriptions. - * - * @summary Gets the software inventory of all virtual machines in the subscriptions. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json - */ -async function getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.softwareInventories.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesAddSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesAddSample.js deleted file mode 100644 index 438716d108d5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesAddSample.js +++ /dev/null @@ -1,77 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json - */ -async function createABaselineForAllRules() { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body = { - latestScan: false, - results: { - va1234: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - va5678: [["Test", "0.0.0.0", "125.125.125.125"]], - }, - }; - const options = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_AddLatest.json - */ -async function createABaselineForAllRulesUsingTheLatestScanResults() { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body = { latestScan: true, results: {} }; - const options = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main() { - createABaselineForAllRules(); - createABaselineForAllRulesUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js deleted file mode 100644 index f5bb66590283..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.js +++ /dev/null @@ -1,74 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json - */ -async function createABaseline() { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body = { - latestScan: false, - results: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - }; - const options = { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_PutLatest.json - */ -async function createABaselineUsingTheLatestScanResults() { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body = { latestScan: true, results: [] }; - const options = { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main() { - createABaseline(); - createABaselineUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js deleted file mode 100644 index ee9a149a9cc3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes a rule from the Baseline of a given database. - * - * @summary Deletes a rule from the Baseline of a given database. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json - */ -async function deleteTheBaseline() { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.delete( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main() { - deleteTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesGetSample.js deleted file mode 100644 index f9750fd18d19..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesGetSample.js +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the results for a given rule in the Baseline. - * - * @summary Gets the results for a given rule in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json - */ -async function getTheBaseline() { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.get( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main() { - getTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesListSample.js deleted file mode 100644 index 84d9fe80f301..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentBaselineRulesListSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the results for all rules in the Baseline. - * - * @summary Gets the results for all rules in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json - */ -async function listBaselineForAllRules() { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.list(workspaceId, resourceId); - console.log(result); -} - -async function main() { - listBaselineForAllRules(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsGetSample.js deleted file mode 100644 index 35403152c25d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsGetSample.js +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json - */ -async function getScanDetailsOfAScanRecord() { - const scanId = "Scheduled-20200623"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord() { - const scanId = "latest"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main() { - getScanDetailsOfAScanRecord(); - getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsListSample.js deleted file mode 100644 index 97d8b814c955..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScanResultsListSample.js +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json - */ -async function listScanResults() { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_ListLatest.json - */ -async function listScanResultsOfTheLatestScan() { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main() { - listScanResults(); - listScanResultsOfTheLatestScan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansGetSample.js deleted file mode 100644 index c546d50fcb7c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansGetSample.js +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json - */ -async function getScanDetailsOfAScanRecord() { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get(scanId, workspaceId, resourceId); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord() { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get(scanId, workspaceId, resourceId); - console.log(result); -} - -async function main() { - getScanDetailsOfAScanRecord(); - getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansListSample.js deleted file mode 100644 index df6cbdc3d43c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/sqlVulnerabilityAssessmentScansListSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list of scan records. - * - * @summary Gets a list of scan records. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json - */ -async function listScanDetails() { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.list(workspaceId, resourceId); - console.log(result); -} - -async function main() { - listScanDetails(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsGetSample.js deleted file mode 100644 index 6c9dbe9b0454..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsGetSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get a security sub-assessment on your scanned resource - * - * @summary Get a security sub-assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation() { - const scope = - "subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/DEMORG/providers/Microsoft.Compute/virtualMachines/vm2"; - const assessmentName = "1195afff-c881-495e-9bc5-1486211ae03f"; - const subAssessmentName = "95f7da9c-a2a4-1322-0758-fcd24ef09b85"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.subAssessments.get(scope, assessmentName, subAssessmentName); - console.log(result); -} - -async function main() { - getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListAllSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListAllSample.js deleted file mode 100644 index 592aa279377a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListAllSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a subscription scope - * - * @summary Get security sub-assessments on all your scanned resources inside a subscription scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json - */ -async function listSecuritySubAssessments() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.subAssessments.listAll(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListSample.js deleted file mode 100644 index f48cc95bf398..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/subAssessmentsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a scope - * - * @summary Get security sub-assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json - */ -async function listSecuritySubAssessments() { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const assessmentName = "82e20e14-edc5-4373-bfc4-f13121257c37"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.subAssessments.list(scope, assessmentName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetResourceGroupLevelTaskSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetResourceGroupLevelTaskSample.js deleted file mode 100644 index 182c52900e19..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetResourceGroupLevelTaskSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json - */ -async function getSecurityRecommendationTaskInAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getResourceGroupLevelTask( - resourceGroupName, - ascLocation, - taskName, - ); - console.log(result); -} - -async function main() { - getSecurityRecommendationTaskInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetSubscriptionLevelTaskSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetSubscriptionLevelTaskSample.js deleted file mode 100644 index f022fa5bc222..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksGetSubscriptionLevelTaskSample.js +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getSubscriptionLevelTask(ascLocation, taskName); - console.log(result); -} - -async function main() { - getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByHomeRegionSample.js deleted file mode 100644 index ebc253c7dc8d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByHomeRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json - */ -async function getSecurityRecommendationsTasksFromSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityRecommendationsTasksFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByResourceGroupSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByResourceGroupSample.js deleted file mode 100644 index cd88d1beb4dc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListByResourceGroupSample.js +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json - */ -async function getSecurityRecommendationTasksInAResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.listByResourceGroup(resourceGroupName, ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityRecommendationTasksInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksListSample.js deleted file mode 100644 index b65360f5ee0c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json - */ -async function getSecurityRecommendationsTasks() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getSecurityRecommendationsTasks(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateResourceGroupLevelTaskStateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateResourceGroupLevelTaskStateSample.js deleted file mode 100644 index 3767a5af5df7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateResourceGroupLevelTaskStateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json - */ -async function changeSecurityRecommendationTaskState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateResourceGroupLevelTaskState( - resourceGroupName, - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main() { - changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateSubscriptionLevelTaskStateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateSubscriptionLevelTaskStateSample.js deleted file mode 100644 index a389a18be17f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/tasksUpdateSubscriptionLevelTaskStateSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json - */ -async function changeSecurityRecommendationTaskState() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateSubscriptionLevelTaskState( - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main() { - changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/topologyGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/topologyGetSample.js deleted file mode 100644 index a19d292e6cf9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/topologyGetSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a specific topology component. - * - * @summary Gets a specific topology component. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json - */ -async function getTopology() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myservers"; - const ascLocation = "centralus"; - const topologyResourceName = "vnets"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.topology.get(resourceGroupName, ascLocation, topologyResourceName); - console.log(result); -} - -async function main() { - getTopology(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/topologyListByHomeRegionSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/topologyListByHomeRegionSample.js deleted file mode 100644 index b12fd18675eb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/topologyListByHomeRegionSample.js +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription and location. - * - * @summary Gets a list that allows to build a topology view of a subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json - */ -async function getTopologyOnASubscriptionFromSecurityDataLocation() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.topology.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getTopologyOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/topologyListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/topologyListSample.js deleted file mode 100644 index a04e846fc58d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/topologyListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription. - * - * @summary Gets a list that allows to build a topology view of a subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json - */ -async function getTopologyOnASubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.topology.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getTopologyOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/updateSensitivitySettingsSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/updateSensitivitySettingsSample.js deleted file mode 100644 index e38d107ee305..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/updateSensitivitySettingsSample.js +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Updates data sensitivity settings for sensitive data discovery - * - * @summary Updates data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json - */ -async function updateSensitivitySettings() { - const sensitivitySettings = { - sensitiveInfoTypesIds: [ - "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - "b452f22b-f87d-4f48-8490-ecf0873325b5", - "d59ee8b6-2618-404b-a5e7-aa377cd67543", - ], - sensitivityThresholdLabelId: "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - sensitivityThresholdLabelOrder: 2, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.updateSensitivitySettings(sensitivitySettings); - console.log(result); -} - -async function main() { - updateSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsCreateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsCreateSample.js deleted file mode 100644 index 945efa05a05a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsCreateSample.js +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to creating settings about where we should store your security data and logs - * - * @summary creating settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json - */ -async function createAWorkspaceSettingDataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - scope: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.create(workspaceSettingName, workspaceSetting); - console.log(result); -} - -async function main() { - createAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsDeleteSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsDeleteSample.js deleted file mode 100644 index 24474aef0c71..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsDeleteSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * - * @summary Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json - */ -async function deleteAWorkspaceSettingDataForResourceGroup() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.delete(workspaceSettingName); - console.log(result); -} - -async function main() { - deleteAWorkspaceSettingDataForResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsGetSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsGetSample.js deleted file mode 100644 index 3935a015eff0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsGetSample.js +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json - */ -async function getAWorkspaceSettingOnSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.get(workspaceSettingName); - console.log(result); -} - -async function main() { - getAWorkspaceSettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsListSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsListSample.js deleted file mode 100644 index ba27275ace6f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsListSample.js +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json - */ -async function getWorkspaceSettingsOnSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.workspaceSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main() { - getWorkspaceSettingsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsUpdateSample.js b/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsUpdateSample.js deleted file mode 100644 index 8ab8a1bd3da4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/javascript/workspaceSettingsUpdateSample.js +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -const { SecurityCenter } = require("@azure/arm-security"); -const { DefaultAzureCredential } = require("@azure/identity"); -require("dotenv").config(); - -/** - * This sample demonstrates how to Settings about where we should store your security data and logs - * - * @summary Settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json - */ -async function updateAWorkspaceSettingDataForSubscription() { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.update(workspaceSettingName, workspaceSetting); - console.log(result); -} - -async function main() { - updateAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/README.md b/sdk/security/arm-security/samples/v6-beta/typescript/README.md deleted file mode 100644 index 095aef0f1f1c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/README.md +++ /dev/null @@ -1,547 +0,0 @@ -# client library samples for TypeScript (Beta) - -These sample programs show how to use the TypeScript client libraries for in some common scenarios. - -| **File Name** | **Description** | -| ----------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| [adaptiveApplicationControlsDeleteSample.ts][adaptiveapplicationcontrolsdeletesample] | Delete an application control machine group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json | -| [adaptiveApplicationControlsGetSample.ts][adaptiveapplicationcontrolsgetsample] | Gets an application control VM/server group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json | -| [adaptiveApplicationControlsListSample.ts][adaptiveapplicationcontrolslistsample] | Gets a list of application control machine groups for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json | -| [adaptiveApplicationControlsPutSample.ts][adaptiveapplicationcontrolsputsample] | Update an application control machine group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json | -| [adaptiveNetworkHardeningsEnforceSample.ts][adaptivenetworkhardeningsenforcesample] | Enforces the given rules on the NSG(s) listed in the request x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json | -| [adaptiveNetworkHardeningsGetSample.ts][adaptivenetworkhardeningsgetsample] | Gets a single Adaptive Network Hardening resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json | -| [adaptiveNetworkHardeningsListByExtendedResourceSample.ts][adaptivenetworkhardeningslistbyextendedresourcesample] | Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json | -| [advancedThreatProtectionCreateSample.ts][advancedthreatprotectioncreatesample] | Creates or updates the Advanced Threat Protection settings on a specified resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json | -| [advancedThreatProtectionGetSample.ts][advancedthreatprotectiongetsample] | Gets the Advanced Threat Protection settings for the specified resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json | -| [alertsGetResourceGroupLevelSample.ts][alertsgetresourcegrouplevelsample] | Get an alert that is associated a resource group or a resource in a resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json | -| [alertsGetSubscriptionLevelSample.ts][alertsgetsubscriptionlevelsample] | Get an alert that is associated with a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json | -| [alertsListByResourceGroupSample.ts][alertslistbyresourcegroupsample] | List all the alerts that are associated with the resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json | -| [alertsListResourceGroupLevelByRegionSample.ts][alertslistresourcegrouplevelbyregionsample] | List all the alerts that are associated with the resource group that are stored in a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json | -| [alertsListSample.ts][alertslistsample] | List all the alerts that are associated with the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json | -| [alertsListSubscriptionLevelByRegionSample.ts][alertslistsubscriptionlevelbyregionsample] | List all the alerts that are associated with the subscription that are stored in a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json | -| [alertsSimulateSample.ts][alertssimulatesample] | Simulate security alerts x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json | -| [alertsSuppressionRulesDeleteSample.ts][alertssuppressionrulesdeletesample] | Delete dismiss alert rule for this subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json | -| [alertsSuppressionRulesGetSample.ts][alertssuppressionrulesgetsample] | Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json | -| [alertsSuppressionRulesListSample.ts][alertssuppressionruleslistsample] | List of all the dismiss rules for the given subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json | -| [alertsSuppressionRulesUpdateSample.ts][alertssuppressionrulesupdatesample] | Update existing rule or create new rule if it doesn't exist x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json | -| [alertsUpdateResourceGroupLevelStateToActivateSample.ts][alertsupdateresourcegrouplevelstatetoactivatesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json | -| [alertsUpdateResourceGroupLevelStateToDismissSample.ts][alertsupdateresourcegrouplevelstatetodismisssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json | -| [alertsUpdateResourceGroupLevelStateToInProgressSample.ts][alertsupdateresourcegrouplevelstatetoinprogresssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json | -| [alertsUpdateResourceGroupLevelStateToResolveSample.ts][alertsupdateresourcegrouplevelstatetoresolvesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json | -| [alertsUpdateSubscriptionLevelStateToActivateSample.ts][alertsupdatesubscriptionlevelstatetoactivatesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json | -| [alertsUpdateSubscriptionLevelStateToDismissSample.ts][alertsupdatesubscriptionlevelstatetodismisssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json | -| [alertsUpdateSubscriptionLevelStateToInProgressSample.ts][alertsupdatesubscriptionlevelstatetoinprogresssample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json | -| [alertsUpdateSubscriptionLevelStateToResolveSample.ts][alertsupdatesubscriptionlevelstatetoresolvesample] | Update the alert's state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json | -| [allowedConnectionsGetSample.ts][allowedconnectionsgetsample] | Gets the list of all possible traffic between resources for the subscription and location, based on connection type. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json | -| [allowedConnectionsListByHomeRegionSample.ts][allowedconnectionslistbyhomeregionsample] | Gets the list of all possible traffic between resources for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json | -| [allowedConnectionsListSample.ts][allowedconnectionslistsample] | Gets the list of all possible traffic between resources for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json | -| [apiCollectionsGetByAzureApiManagementServiceSample.ts][apicollectionsgetbyazureapimanagementservicesample] | Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json | -| [apiCollectionsListByAzureApiManagementServiceSample.ts][apicollectionslistbyazureapimanagementservicesample] | Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json | -| [apiCollectionsListByResourceGroupSample.ts][apicollectionslistbyresourcegroupsample] | Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json | -| [apiCollectionsListBySubscriptionSample.ts][apicollectionslistbysubscriptionsample] | Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json | -| [apiCollectionsOffboardAzureApiManagementApiSample.ts][apicollectionsoffboardazureapimanagementapisample] | Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json | -| [apiCollectionsOnboardAzureApiManagementApiSample.ts][apicollectionsonboardazureapimanagementapisample] | Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json | -| [applicationCreateOrUpdateSample.ts][applicationcreateorupdatesample] | Creates or update a security application on the given subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json | -| [applicationDeleteSample.ts][applicationdeletesample] | Delete an Application over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json | -| [applicationGetSample.ts][applicationgetsample] | Get a specific application for the requested scope by applicationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json | -| [applicationsListSample.ts][applicationslistsample] | Get a list of all relevant applications over a subscription level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json | -| [assessmentsCreateOrUpdateSample.ts][assessmentscreateorupdatesample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/PutAssessment_example.json | -| [assessmentsDeleteSample.ts][assessmentsdeletesample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/DeleteAssessment_example.json | -| [assessmentsGetSample.ts][assessmentsgetsample] | Get a security assessment on your scanned resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessment_example.json | -| [assessmentsListSample.ts][assessmentslistsample] | Get security assessments on all your scanned resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/ListAssessments_example.json | -| [assessmentsMetadataCreateInSubscriptionSample.ts][assessmentsmetadatacreateinsubscriptionsample] | Create metadata information on an assessment type in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataDeleteInSubscriptionSample.ts][assessmentsmetadatadeleteinsubscriptionsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataGetInSubscriptionSample.ts][assessmentsmetadatagetinsubscriptionsample] | Get metadata information on an assessment type in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataGetSample.ts][assessmentsmetadatagetsample] | Get metadata information on an assessment type x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json | -| [assessmentsMetadataListBySubscriptionSample.ts][assessmentsmetadatalistbysubscriptionsample] | Get metadata information on all assessment types in a specific subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json | -| [assessmentsMetadataListSample.ts][assessmentsmetadatalistsample] | Get metadata information on all assessment types x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json | -| [autoProvisioningSettingsCreateSample.ts][autoprovisioningsettingscreatesample] | Details of a specific setting x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json | -| [autoProvisioningSettingsGetSample.ts][autoprovisioningsettingsgetsample] | Details of a specific setting x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json | -| [autoProvisioningSettingsListSample.ts][autoprovisioningsettingslistsample] | Exposes the auto provisioning settings of the subscriptions x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json | -| [automationsCreateOrUpdateSample.ts][automationscreateorupdatesample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json | -| [automationsDeleteSample.ts][automationsdeletesample] | Deletes a security automation. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json | -| [automationsGetSample.ts][automationsgetsample] | Retrieves information about the model of a security automation. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json | -| [automationsListByResourceGroupSample.ts][automationslistbyresourcegroupsample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json | -| [automationsListSample.ts][automationslistsample] | 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. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json | -| [automationsUpdateSample.ts][automationsupdatesample] | Updates a security automation x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json | -| [automationsValidateSample.ts][automationsvalidatesample] | Validates the security automation model before create or update. Any validation errors are returned to the client. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json | -| [azureDevOpsOrgsCreateOrUpdateSample.ts][azuredevopsorgscreateorupdatesample] | Creates or updates monitored Azure DevOps organization details. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsGetSample.ts][azuredevopsorgsgetsample] | Returns a monitored Azure DevOps organization resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsListAvailableSample.ts][azuredevopsorgslistavailablesample] | Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsListSample.ts][azuredevopsorgslistsample] | Returns a list of Azure DevOps organizations onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json | -| [azureDevOpsOrgsUpdateSample.ts][azuredevopsorgsupdatesample] | Updates monitored Azure DevOps organization details. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json | -| [azureDevOpsProjectsCreateOrUpdateSample.ts][azuredevopsprojectscreateorupdatesample] | Creates or updates a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsGetSample.ts][azuredevopsprojectsgetsample] | Returns a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsListSample.ts][azuredevopsprojectslistsample] | Returns a list of Azure DevOps projects onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json | -| [azureDevOpsProjectsUpdateSample.ts][azuredevopsprojectsupdatesample] | Updates a monitored Azure DevOps project resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json | -| [azureDevOpsReposCreateOrUpdateSample.ts][azuredevopsreposcreateorupdatesample] | Creates or updates a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json | -| [azureDevOpsReposGetSample.ts][azuredevopsreposgetsample] | Returns a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json | -| [azureDevOpsReposListSample.ts][azuredevopsreposlistsample] | Returns a list of Azure DevOps repositories onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json | -| [azureDevOpsReposUpdateSample.ts][azuredevopsreposupdatesample] | Updates a monitored Azure DevOps repository resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json | -| [complianceResultsGetSample.ts][complianceresultsgetsample] | Security Compliance Result x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json | -| [complianceResultsListSample.ts][complianceresultslistsample] | Security compliance results in the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json | -| [compliancesGetSample.ts][compliancesgetsample] | Details of a specific Compliance. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json | -| [compliancesListSample.ts][complianceslistsample] | The Compliance scores of the specific management group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json | -| [connectorsCreateOrUpdateSample.ts][connectorscreateorupdatesample] | Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json | -| [connectorsDeleteSample.ts][connectorsdeletesample] | Delete a cloud account connector from a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json | -| [connectorsGetSample.ts][connectorsgetsample] | Details of a specific cloud account connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json | -| [connectorsListSample.ts][connectorslistsample] | Cloud accounts connectors of a subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json | -| [customAssessmentAutomationsCreateSample.ts][customassessmentautomationscreatesample] | Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json | -| [customAssessmentAutomationsDeleteSample.ts][customassessmentautomationsdeletesample] | Deletes a custom assessment automation by name for a provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json | -| [customAssessmentAutomationsGetSample.ts][customassessmentautomationsgetsample] | Gets a single custom assessment automation by name for the provided subscription and resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json | -| [customAssessmentAutomationsListByResourceGroupSample.ts][customassessmentautomationslistbyresourcegroupsample] | List custom assessment automations by provided subscription and resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json | -| [customAssessmentAutomationsListBySubscriptionSample.ts][customassessmentautomationslistbysubscriptionsample] | List custom assessment automations by provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json | -| [customEntityStoreAssignmentsCreateSample.ts][customentitystoreassignmentscreatesample] | Creates a custom entity store assignment for the provided subscription, if not already exists. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json | -| [customEntityStoreAssignmentsDeleteSample.ts][customentitystoreassignmentsdeletesample] | Delete a custom entity store assignment by name for a provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json | -| [customEntityStoreAssignmentsGetSample.ts][customentitystoreassignmentsgetsample] | Gets a single custom entity store assignment by name for the provided subscription and resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json | -| [customEntityStoreAssignmentsListByResourceGroupSample.ts][customentitystoreassignmentslistbyresourcegroupsample] | List custom entity store assignments by a provided subscription and resource group x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json | -| [customEntityStoreAssignmentsListBySubscriptionSample.ts][customentitystoreassignmentslistbysubscriptionsample] | List custom entity store assignments by provided subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json | -| [defenderForStorageCreateSample.ts][defenderforstoragecreatesample] | Creates or updates the Defender for Storage settings on a specified storage account. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json | -| [defenderForStorageGetSample.ts][defenderforstoragegetsample] | Gets the Defender for Storage settings for the specified storage account. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json | -| [devOpsConfigurationsCreateOrUpdateSample.ts][devopsconfigurationscreateorupdatesample] | Creates or updates a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json | -| [devOpsConfigurationsDeleteSample.ts][devopsconfigurationsdeletesample] | Deletes a DevOps Connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json | -| [devOpsConfigurationsGetSample.ts][devopsconfigurationsgetsample] | Gets a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json | -| [devOpsConfigurationsListSample.ts][devopsconfigurationslistsample] | List DevOps Configurations. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json | -| [devOpsConfigurationsUpdateSample.ts][devopsconfigurationsupdatesample] | Updates a DevOps Configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json | -| [devOpsOperationResultsGetSample.ts][devopsoperationresultsgetsample] | Get devops long running operation result. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json | -| [deviceSecurityGroupsCreateOrUpdateSample.ts][devicesecuritygroupscreateorupdatesample] | Use this method to creates or updates the device security group on a specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsDeleteSample.ts][devicesecuritygroupsdeletesample] | User this method to deletes the device security group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsGetSample.ts][devicesecuritygroupsgetsample] | Use this method to get the device security group for the specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json | -| [deviceSecurityGroupsListSample.ts][devicesecuritygroupslistsample] | Use this method get the list of device security groups for the specified IoT Hub resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json | -| [discoveredSecuritySolutionsGetSample.ts][discoveredsecuritysolutionsgetsample] | Gets a specific discovered Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json | -| [discoveredSecuritySolutionsListByHomeRegionSample.ts][discoveredsecuritysolutionslistbyhomeregionsample] | Gets a list of discovered Security Solutions for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json | -| [discoveredSecuritySolutionsListSample.ts][discoveredsecuritysolutionslistsample] | Gets a list of discovered Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json | -| [externalSecuritySolutionsGetSample.ts][externalsecuritysolutionsgetsample] | Gets a specific external Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json | -| [externalSecuritySolutionsListByHomeRegionSample.ts][externalsecuritysolutionslistbyhomeregionsample] | Gets a list of external Security Solutions for the subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json | -| [externalSecuritySolutionsListSample.ts][externalsecuritysolutionslistsample] | Gets a list of external security solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json | -| [getSensitivitySettingsSample.ts][getsensitivitysettingssample] | Gets data sensitivity settings for sensitive data discovery x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json | -| [gitHubOwnersGetSample.ts][githubownersgetsample] | Returns a monitored GitHub owner. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json | -| [gitHubOwnersListAvailableSample.ts][githubownerslistavailablesample] | Returns a list of all GitHub owners accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json | -| [gitHubOwnersListSample.ts][githubownerslistsample] | Returns a list of GitHub owners onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json | -| [gitHubReposGetSample.ts][githubreposgetsample] | Returns a monitored GitHub repository. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json | -| [gitHubReposListSample.ts][githubreposlistsample] | Returns a list of GitHub repositories onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json | -| [gitLabGroupsGetSample.ts][gitlabgroupsgetsample] | Returns a monitored GitLab Group resource for a given fully-qualified name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json | -| [gitLabGroupsListAvailableSample.ts][gitlabgroupslistavailablesample] | Returns a list of all GitLab groups accessible by the user token consumed by the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json | -| [gitLabGroupsListSample.ts][gitlabgroupslistsample] | Returns a list of GitLab groups onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json | -| [gitLabProjectsGetSample.ts][gitlabprojectsgetsample] | Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json | -| [gitLabProjectsListSample.ts][gitlabprojectslistsample] | Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json | -| [gitLabSubgroupsListSample.ts][gitlabsubgroupslistsample] | Gets nested subgroups of given GitLab Group which are onboarded to the connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json | -| [governanceAssignmentsCreateOrUpdateSample.ts][governanceassignmentscreateorupdatesample] | Creates or updates a governance assignment on the given subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json | -| [governanceAssignmentsDeleteSample.ts][governanceassignmentsdeletesample] | Delete a GovernanceAssignment over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json | -| [governanceAssignmentsGetSample.ts][governanceassignmentsgetsample] | Get a specific governanceAssignment for the requested scope by AssignmentKey x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json | -| [governanceAssignmentsListSample.ts][governanceassignmentslistsample] | Get governance assignments on all of your resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json | -| [governanceRulesCreateOrUpdateSample.ts][governancerulescreateorupdatesample] | Creates or updates a governance rule over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json | -| [governanceRulesDeleteSample.ts][governancerulesdeletesample] | Delete a Governance rule over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json | -| [governanceRulesExecuteSample.ts][governancerulesexecutesample] | Execute a governance rule x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json | -| [governanceRulesGetSample.ts][governancerulesgetsample] | Get a specific governance rule for the requested scope by ruleId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json | -| [governanceRulesListSample.ts][governanceruleslistsample] | Get a list of all relevant governance rules over a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json | -| [governanceRulesOperationResultsSample.ts][governancerulesoperationresultssample] | Get governance rules long run operation result for the requested scope by ruleId and operationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json | -| [healthReportsGetSample.ts][healthreportsgetsample] | Get health report of resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json | -| [healthReportsListSample.ts][healthreportslistsample] | Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json | -| [informationProtectionPoliciesCreateOrUpdateSample.ts][informationprotectionpoliciescreateorupdatesample] | Details of the information protection policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json | -| [informationProtectionPoliciesGetSample.ts][informationprotectionpoliciesgetsample] | Details of the information protection policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json | -| [informationProtectionPoliciesListSample.ts][informationprotectionpolicieslistsample] | Information protection policies of a specific management group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json | -| [iotSecuritySolutionAnalyticsGetSample.ts][iotsecuritysolutionanalyticsgetsample] | Use this method to get IoT Security Analytics metrics. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json | -| [iotSecuritySolutionAnalyticsListSample.ts][iotsecuritysolutionanalyticslistsample] | Use this method to get IoT security Analytics metrics in an array. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json | -| [iotSecuritySolutionCreateOrUpdateSample.ts][iotsecuritysolutioncreateorupdatesample] | Use this method to create or update yours IoT Security solution x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json | -| [iotSecuritySolutionDeleteSample.ts][iotsecuritysolutiondeletesample] | Use this method to delete yours IoT Security solution x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json | -| [iotSecuritySolutionGetSample.ts][iotsecuritysolutiongetsample] | User this method to get details of a specific IoT Security solution based on solution name x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json | -| [iotSecuritySolutionListByResourceGroupSample.ts][iotsecuritysolutionlistbyresourcegroupsample] | Use this method to get the list IoT Security solutions organized by resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json | -| [iotSecuritySolutionListBySubscriptionSample.ts][iotsecuritysolutionlistbysubscriptionsample] | Use this method to get the list of IoT Security solutions by subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json | -| [iotSecuritySolutionUpdateSample.ts][iotsecuritysolutionupdatesample] | Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts][iotsecuritysolutionsanalyticsaggregatedalertdismisssample] | Use this method to dismiss an aggregated IoT Security Solution Alert. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts][iotsecuritysolutionsanalyticsaggregatedalertgetsample] | Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json | -| [iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts][iotsecuritysolutionsanalyticsaggregatedalertlistsample] | Use this method to get the aggregated alert list of yours IoT Security solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json | -| [iotSecuritySolutionsAnalyticsRecommendationGetSample.ts][iotsecuritysolutionsanalyticsrecommendationgetsample] | Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json | -| [iotSecuritySolutionsAnalyticsRecommendationListSample.ts][iotsecuritysolutionsanalyticsrecommendationlistsample] | Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json | -| [jitNetworkAccessPoliciesCreateOrUpdateSample.ts][jitnetworkaccesspoliciescreateorupdatesample] | Create a policy for protecting resources using Just-in-Time access control x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesDeleteSample.ts][jitnetworkaccesspoliciesdeletesample] | Delete a Just-in-Time access control policy. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesGetSample.ts][jitnetworkaccesspoliciesgetsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesInitiateSample.ts][jitnetworkaccesspoliciesinitiatesample] | Initiate a JIT access from a specific Just-in-Time policy configuration. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json | -| [jitNetworkAccessPoliciesListByRegionSample.ts][jitnetworkaccesspolicieslistbyregionsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json | -| [jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts][jitnetworkaccesspolicieslistbyresourcegroupandregionsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json | -| [jitNetworkAccessPoliciesListByResourceGroupSample.ts][jitnetworkaccesspolicieslistbyresourcegroupsample] | Policies for protecting resources using Just-in-Time access control for the subscription, location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json | -| [jitNetworkAccessPoliciesListSample.ts][jitnetworkaccesspolicieslistsample] | Policies for protecting resources using Just-in-Time access control. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json | -| [locationsGetSample.ts][locationsgetsample] | Details of a specific location x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json | -| [locationsListSample.ts][locationslistsample] | The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json | -| [mdeOnboardingsGetSample.ts][mdeonboardingsgetsample] | The default configuration or data needed to onboard the machine to MDE x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json | -| [mdeOnboardingsListSample.ts][mdeonboardingslistsample] | The configuration or data needed to onboard the machine to MDE x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json | -| [pricingsDeleteSample.ts][pricingsdeletesample] | Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json | -| [pricingsGetSample.ts][pricingsgetsample] | Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json | -| [pricingsListSample.ts][pricingslistsample] | Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json | -| [pricingsUpdateSample.ts][pricingsupdatesample] | Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json | -| [regulatoryComplianceAssessmentsGetSample.ts][regulatorycomplianceassessmentsgetsample] | Supported regulatory compliance details and state for selected assessment x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json | -| [regulatoryComplianceAssessmentsListSample.ts][regulatorycomplianceassessmentslistsample] | Details and state of assessments mapped to selected regulatory compliance control x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json | -| [regulatoryComplianceControlsGetSample.ts][regulatorycompliancecontrolsgetsample] | Selected regulatory compliance control details and state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json | -| [regulatoryComplianceControlsListSample.ts][regulatorycompliancecontrolslistsample] | All supported regulatory compliance controls details and state for selected standard x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json | -| [regulatoryComplianceStandardsGetSample.ts][regulatorycompliancestandardsgetsample] | Supported regulatory compliance details state for selected standard x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json | -| [regulatoryComplianceStandardsListSample.ts][regulatorycompliancestandardslistsample] | Supported regulatory compliance standards details and state x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json | -| [secureScoreControlDefinitionsListBySubscriptionSample.ts][securescorecontroldefinitionslistbysubscriptionsample] | For a specified subscription, list the available security controls, their assessments, and the max score x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json | -| [secureScoreControlDefinitionsListSample.ts][securescorecontroldefinitionslistsample] | List the available security controls, their assessments, and the max score x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json | -| [secureScoreControlsListBySecureScoreSample.ts][securescorecontrolslistbysecurescoresample] | Get all security controls for a specific initiative within a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json | -| [secureScoreControlsListSample.ts][securescorecontrolslistsample] | Get all security controls within a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json | -| [secureScoresGetSample.ts][securescoresgetsample] | Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json | -| [secureScoresListSample.ts][securescoreslistsample] | List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json | -| [securityConnectorApplicationCreateOrUpdateSample.ts][securityconnectorapplicationcreateorupdatesample] | Creates or update a security Application on the given security connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json | -| [securityConnectorApplicationDeleteSample.ts][securityconnectorapplicationdeletesample] | Delete an Application over a given scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json | -| [securityConnectorApplicationGetSample.ts][securityconnectorapplicationgetsample] | Get a specific application for the requested scope by applicationId x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json | -| [securityConnectorApplicationsListSample.ts][securityconnectorapplicationslistsample] | Get a list of all relevant applications over a security connector level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json | -| [securityConnectorsCreateOrUpdateSample.ts][securityconnectorscreateorupdatesample] | Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json | -| [securityConnectorsDeleteSample.ts][securityconnectorsdeletesample] | Deletes a security connector. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json | -| [securityConnectorsGetSample.ts][securityconnectorsgetsample] | Retrieves details of a specific security connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json | -| [securityConnectorsListByResourceGroupSample.ts][securityconnectorslistbyresourcegroupsample] | Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json | -| [securityConnectorsListSample.ts][securityconnectorslistsample] | Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json | -| [securityConnectorsUpdateSample.ts][securityconnectorsupdatesample] | Updates a security connector x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json | -| [securityContactsCreateSample.ts][securitycontactscreatesample] | Create security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json | -| [securityContactsDeleteSample.ts][securitycontactsdeletesample] | Delete security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json | -| [securityContactsGetSample.ts][securitycontactsgetsample] | Get Default Security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json | -| [securityContactsListSample.ts][securitycontactslistsample] | List all security contact configurations for the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json | -| [securityOperatorsCreateOrUpdateSample.ts][securityoperatorscreateorupdatesample] | Creates Microsoft Defender for Cloud security operator on the given scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json | -| [securityOperatorsDeleteSample.ts][securityoperatorsdeletesample] | Delete Microsoft Defender for Cloud securityOperator in the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json | -| [securityOperatorsGetSample.ts][securityoperatorsgetsample] | Get a specific security operator for the requested scope. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json | -| [securityOperatorsListSample.ts][securityoperatorslistsample] | Lists Microsoft Defender for Cloud securityOperators in the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json | -| [securitySolutionsGetSample.ts][securitysolutionsgetsample] | Gets a specific Security Solution. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json | -| [securitySolutionsListSample.ts][securitysolutionslistsample] | Gets a list of Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json | -| [securitySolutionsReferenceDataListByHomeRegionSample.ts][securitysolutionsreferencedatalistbyhomeregionsample] | Gets list of all supported Security Solutions for subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json | -| [securitySolutionsReferenceDataListSample.ts][securitysolutionsreferencedatalistsample] | Gets a list of all supported Security Solutions for the subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json | -| [sensitivitySettingsListSample.ts][sensitivitysettingslistsample] | Gets a list with a single sensitivity settings resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json | -| [serverVulnerabilityAssessmentCreateOrUpdateSample.ts][servervulnerabilityassessmentcreateorupdatesample] | Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentDeleteSample.ts][servervulnerabilityassessmentdeletesample] | Removing server vulnerability assessment from a resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentGetSample.ts][servervulnerabilityassessmentgetsample] | Gets a server vulnerability assessment onboarding statuses on a given resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentListByExtendedResourceSample.ts][servervulnerabilityassessmentlistbyextendedresourcesample] | Gets a list of server vulnerability assessment onboarding statuses on a given resource. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json | -| [serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts][servervulnerabilityassessmentssettingscreateorupdatesample] | Create or update a server vulnerability assessments setting of the requested kind on the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsDeleteSample.ts][servervulnerabilityassessmentssettingsdeletesample] | Delete the server vulnerability assessments setting of the requested kind from the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsGetSample.ts][servervulnerabilityassessmentssettingsgetsample] | Get a server vulnerability assessments setting of the requested kind, that is set on the subscription x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json | -| [serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts][servervulnerabilityassessmentssettingslistbysubscriptionsample] | Get a list of all the server vulnerability assessments settings over a subscription level scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json | -| [settingsGetSample.ts][settingsgetsample] | Settings of different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json | -| [settingsListSample.ts][settingslistsample] | Settings about different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json | -| [settingsUpdateSample.ts][settingsupdatesample] | updating settings about different configurations in Microsoft Defender for Cloud x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json | -| [softwareInventoriesGetSample.ts][softwareinventoriesgetsample] | Gets a single software data of the virtual machine. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json | -| [softwareInventoriesListByExtendedResourceSample.ts][softwareinventorieslistbyextendedresourcesample] | Gets the software inventory of the virtual machine. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json | -| [softwareInventoriesListBySubscriptionSample.ts][softwareinventorieslistbysubscriptionsample] | Gets the software inventory of all virtual machines in the subscriptions. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json | -| [sqlVulnerabilityAssessmentBaselineRulesAddSample.ts][sqlvulnerabilityassessmentbaselinerulesaddsample] | Add a list of baseline rules. Will overwrite any previously existing results (for all rules). x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json | -| [sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts][sqlvulnerabilityassessmentbaselinerulescreateorupdatesample] | Creates a Baseline for a rule in a database. Will overwrite any previously existing results. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json | -| [sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts][sqlvulnerabilityassessmentbaselinerulesdeletesample] | Deletes a rule from the Baseline of a given database. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json | -| [sqlVulnerabilityAssessmentBaselineRulesGetSample.ts][sqlvulnerabilityassessmentbaselinerulesgetsample] | Gets the results for a given rule in the Baseline. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json | -| [sqlVulnerabilityAssessmentBaselineRulesListSample.ts][sqlvulnerabilityassessmentbaselineruleslistsample] | Gets the results for all rules in the Baseline. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json | -| [sqlVulnerabilityAssessmentScanResultsGetSample.ts][sqlvulnerabilityassessmentscanresultsgetsample] | Gets the scan results of a single rule in a scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json | -| [sqlVulnerabilityAssessmentScanResultsListSample.ts][sqlvulnerabilityassessmentscanresultslistsample] | Gets a list of scan results for a single scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json | -| [sqlVulnerabilityAssessmentScansGetSample.ts][sqlvulnerabilityassessmentscansgetsample] | Gets the scan details of a single scan record. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json | -| [sqlVulnerabilityAssessmentScansListSample.ts][sqlvulnerabilityassessmentscanslistsample] | Gets a list of scan records. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json | -| [subAssessmentsGetSample.ts][subassessmentsgetsample] | Get a security sub-assessment on your scanned resource x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json | -| [subAssessmentsListAllSample.ts][subassessmentslistallsample] | Get security sub-assessments on all your scanned resources inside a subscription scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json | -| [subAssessmentsListSample.ts][subassessmentslistsample] | Get security sub-assessments on all your scanned resources inside a scope x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json | -| [tasksGetResourceGroupLevelTaskSample.ts][tasksgetresourcegroupleveltasksample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json | -| [tasksGetSubscriptionLevelTaskSample.ts][tasksgetsubscriptionleveltasksample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json | -| [tasksListByHomeRegionSample.ts][taskslistbyhomeregionsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json | -| [tasksListByResourceGroupSample.ts][taskslistbyresourcegroupsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json | -| [tasksListSample.ts][taskslistsample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json | -| [tasksUpdateResourceGroupLevelTaskStateSample.ts][tasksupdateresourcegroupleveltaskstatesample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json | -| [tasksUpdateSubscriptionLevelTaskStateSample.ts][tasksupdatesubscriptionleveltaskstatesample] | Recommended tasks that will help improve the security of the subscription proactively x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json | -| [topologyGetSample.ts][topologygetsample] | Gets a specific topology component. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json | -| [topologyListByHomeRegionSample.ts][topologylistbyhomeregionsample] | Gets a list that allows to build a topology view of a subscription and location. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json | -| [topologyListSample.ts][topologylistsample] | Gets a list that allows to build a topology view of a subscription. x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json | -| [updateSensitivitySettingsSample.ts][updatesensitivitysettingssample] | Updates data sensitivity settings for sensitive data discovery x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json | -| [workspaceSettingsCreateSample.ts][workspacesettingscreatesample] | creating settings about where we should store your security data and logs x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json | -| [workspaceSettingsDeleteSample.ts][workspacesettingsdeletesample] | Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json | -| [workspaceSettingsGetSample.ts][workspacesettingsgetsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json | -| [workspaceSettingsListSample.ts][workspacesettingslistsample] | 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 x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json | -| [workspaceSettingsUpdateSample.ts][workspacesettingsupdatesample] | Settings about where we should store your security data and logs x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json | - -## Prerequisites - -The sample programs are compatible with [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule). - -Before running the samples in Node, they must be compiled to JavaScript using the TypeScript compiler. For more information on TypeScript, see the [TypeScript documentation][typescript]. Install the TypeScript compiler using: - -```bash -npm install -g typescript -``` - -You need [an Azure subscription][freesub] to run these sample programs. - -Samples retrieve credentials to access the service endpoint from environment variables. Alternatively, edit the source code to include the appropriate credentials. See each individual sample for details on which environment variables/credentials it requires to function. - -Adapting the samples to run in the browser may require some additional consideration. For details, please see the [package README][package]. - -## Setup - -To run the samples using the published version of the package: - -1. Install the dependencies using `npm`: - -```bash -npm install -``` - -2. Compile the samples: - -```bash -npm run build -``` - -3. Edit the file `sample.env`, adding the correct credentials to access the Azure service and run the samples. Then rename the file from `sample.env` to just `.env`. The sample programs will read this file automatically. - -4. Run whichever samples you like (note that some samples may require additional setup, see the table above): - -```bash -node dist/adaptiveApplicationControlsDeleteSample.js -``` - -Alternatively, run a single sample with the correct environment variables set (setting up the `.env` file is not required if you do this), for example (cross-platform): - -```bash -cross-env SECURITY_SUBSCRIPTION_ID="" node dist/adaptiveApplicationControlsDeleteSample.js -``` - -## Next Steps - -Take a look at our [API Documentation][apiref] for more information about the APIs that are available in the clients. - -[adaptiveapplicationcontrolsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsDeleteSample.ts -[adaptiveapplicationcontrolsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsGetSample.ts -[adaptiveapplicationcontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsListSample.ts -[adaptiveapplicationcontrolsputsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsPutSample.ts -[adaptivenetworkhardeningsenforcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsEnforceSample.ts -[adaptivenetworkhardeningsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsGetSample.ts -[adaptivenetworkhardeningslistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsListByExtendedResourceSample.ts -[advancedthreatprotectioncreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionCreateSample.ts -[advancedthreatprotectiongetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionGetSample.ts -[alertsgetresourcegrouplevelsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetResourceGroupLevelSample.ts -[alertsgetsubscriptionlevelsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetSubscriptionLevelSample.ts -[alertslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListByResourceGroupSample.ts -[alertslistresourcegrouplevelbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListResourceGroupLevelByRegionSample.ts -[alertslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSample.ts -[alertslistsubscriptionlevelbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSubscriptionLevelByRegionSample.ts -[alertssimulatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSimulateSample.ts -[alertssuppressionrulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesDeleteSample.ts -[alertssuppressionrulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesGetSample.ts -[alertssuppressionruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesListSample.ts -[alertssuppressionrulesupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesUpdateSample.ts -[alertsupdateresourcegrouplevelstatetoactivatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToActivateSample.ts -[alertsupdateresourcegrouplevelstatetodismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToDismissSample.ts -[alertsupdateresourcegrouplevelstatetoinprogresssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToInProgressSample.ts -[alertsupdateresourcegrouplevelstatetoresolvesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToResolveSample.ts -[alertsupdatesubscriptionlevelstatetoactivatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToActivateSample.ts -[alertsupdatesubscriptionlevelstatetodismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToDismissSample.ts -[alertsupdatesubscriptionlevelstatetoinprogresssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToInProgressSample.ts -[alertsupdatesubscriptionlevelstatetoresolvesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToResolveSample.ts -[allowedconnectionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsGetSample.ts -[allowedconnectionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListByHomeRegionSample.ts -[allowedconnectionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListSample.ts -[apicollectionsgetbyazureapimanagementservicesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsGetByAzureApiManagementServiceSample.ts -[apicollectionslistbyazureapimanagementservicesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByAzureApiManagementServiceSample.ts -[apicollectionslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByResourceGroupSample.ts -[apicollectionslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListBySubscriptionSample.ts -[apicollectionsoffboardazureapimanagementapisample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOffboardAzureApiManagementApiSample.ts -[apicollectionsonboardazureapimanagementapisample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOnboardAzureApiManagementApiSample.ts -[applicationcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationCreateOrUpdateSample.ts -[applicationdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationDeleteSample.ts -[applicationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationGetSample.ts -[applicationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationsListSample.ts -[assessmentscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsCreateOrUpdateSample.ts -[assessmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsDeleteSample.ts -[assessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsGetSample.ts -[assessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsListSample.ts -[assessmentsmetadatacreateinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataCreateInSubscriptionSample.ts -[assessmentsmetadatadeleteinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataDeleteInSubscriptionSample.ts -[assessmentsmetadatagetinsubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetInSubscriptionSample.ts -[assessmentsmetadatagetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetSample.ts -[assessmentsmetadatalistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListBySubscriptionSample.ts -[assessmentsmetadatalistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListSample.ts -[autoprovisioningsettingscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsCreateSample.ts -[autoprovisioningsettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsGetSample.ts -[autoprovisioningsettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsListSample.ts -[automationscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsCreateOrUpdateSample.ts -[automationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsDeleteSample.ts -[automationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsGetSample.ts -[automationslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListByResourceGroupSample.ts -[automationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListSample.ts -[automationsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsUpdateSample.ts -[automationsvalidatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsValidateSample.ts -[azuredevopsorgscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsCreateOrUpdateSample.ts -[azuredevopsorgsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsGetSample.ts -[azuredevopsorgslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListAvailableSample.ts -[azuredevopsorgslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListSample.ts -[azuredevopsorgsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsUpdateSample.ts -[azuredevopsprojectscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsCreateOrUpdateSample.ts -[azuredevopsprojectsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsGetSample.ts -[azuredevopsprojectslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsListSample.ts -[azuredevopsprojectsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsUpdateSample.ts -[azuredevopsreposcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposCreateOrUpdateSample.ts -[azuredevopsreposgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposGetSample.ts -[azuredevopsreposlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposListSample.ts -[azuredevopsreposupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposUpdateSample.ts -[complianceresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsGetSample.ts -[complianceresultslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsListSample.ts -[compliancesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesGetSample.ts -[complianceslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesListSample.ts -[connectorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsCreateOrUpdateSample.ts -[connectorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsDeleteSample.ts -[connectorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsGetSample.ts -[connectorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsListSample.ts -[customassessmentautomationscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsCreateSample.ts -[customassessmentautomationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsDeleteSample.ts -[customassessmentautomationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsGetSample.ts -[customassessmentautomationslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListByResourceGroupSample.ts -[customassessmentautomationslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListBySubscriptionSample.ts -[customentitystoreassignmentscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsCreateSample.ts -[customentitystoreassignmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsDeleteSample.ts -[customentitystoreassignmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsGetSample.ts -[customentitystoreassignmentslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListByResourceGroupSample.ts -[customentitystoreassignmentslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListBySubscriptionSample.ts -[defenderforstoragecreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageCreateSample.ts -[defenderforstoragegetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageGetSample.ts -[devopsconfigurationscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsCreateOrUpdateSample.ts -[devopsconfigurationsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsDeleteSample.ts -[devopsconfigurationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsGetSample.ts -[devopsconfigurationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsListSample.ts -[devopsconfigurationsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsUpdateSample.ts -[devopsoperationresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsOperationResultsGetSample.ts -[devicesecuritygroupscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsCreateOrUpdateSample.ts -[devicesecuritygroupsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsDeleteSample.ts -[devicesecuritygroupsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsGetSample.ts -[devicesecuritygroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsListSample.ts -[discoveredsecuritysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsGetSample.ts -[discoveredsecuritysolutionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListByHomeRegionSample.ts -[discoveredsecuritysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListSample.ts -[externalsecuritysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsGetSample.ts -[externalsecuritysolutionslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListByHomeRegionSample.ts -[externalsecuritysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListSample.ts -[getsensitivitysettingssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/getSensitivitySettingsSample.ts -[githubownersgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersGetSample.ts -[githubownerslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListAvailableSample.ts -[githubownerslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListSample.ts -[githubreposgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposGetSample.ts -[githubreposlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposListSample.ts -[gitlabgroupsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsGetSample.ts -[gitlabgroupslistavailablesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListAvailableSample.ts -[gitlabgroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListSample.ts -[gitlabprojectsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsGetSample.ts -[gitlabprojectslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsListSample.ts -[gitlabsubgroupslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabSubgroupsListSample.ts -[governanceassignmentscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsCreateOrUpdateSample.ts -[governanceassignmentsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsDeleteSample.ts -[governanceassignmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsGetSample.ts -[governanceassignmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsListSample.ts -[governancerulescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesCreateOrUpdateSample.ts -[governancerulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesDeleteSample.ts -[governancerulesexecutesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesExecuteSample.ts -[governancerulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesGetSample.ts -[governanceruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesListSample.ts -[governancerulesoperationresultssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesOperationResultsSample.ts -[healthreportsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsGetSample.ts -[healthreportslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsListSample.ts -[informationprotectionpoliciescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesCreateOrUpdateSample.ts -[informationprotectionpoliciesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesGetSample.ts -[informationprotectionpolicieslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesListSample.ts -[iotsecuritysolutionanalyticsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsGetSample.ts -[iotsecuritysolutionanalyticslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsListSample.ts -[iotsecuritysolutioncreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionCreateOrUpdateSample.ts -[iotsecuritysolutiondeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionDeleteSample.ts -[iotsecuritysolutiongetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionGetSample.ts -[iotsecuritysolutionlistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListByResourceGroupSample.ts -[iotsecuritysolutionlistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListBySubscriptionSample.ts -[iotsecuritysolutionupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionUpdateSample.ts -[iotsecuritysolutionsanalyticsaggregatedalertdismisssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts -[iotsecuritysolutionsanalyticsaggregatedalertgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts -[iotsecuritysolutionsanalyticsaggregatedalertlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts -[iotsecuritysolutionsanalyticsrecommendationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts -[iotsecuritysolutionsanalyticsrecommendationlistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationListSample.ts -[jitnetworkaccesspoliciescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesCreateOrUpdateSample.ts -[jitnetworkaccesspoliciesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesDeleteSample.ts -[jitnetworkaccesspoliciesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesGetSample.ts -[jitnetworkaccesspoliciesinitiatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesInitiateSample.ts -[jitnetworkaccesspolicieslistbyregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByRegionSample.ts -[jitnetworkaccesspolicieslistbyresourcegroupandregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts -[jitnetworkaccesspolicieslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupSample.ts -[jitnetworkaccesspolicieslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListSample.ts -[locationsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsGetSample.ts -[locationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsListSample.ts -[mdeonboardingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsGetSample.ts -[mdeonboardingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsListSample.ts -[pricingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsDeleteSample.ts -[pricingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsGetSample.ts -[pricingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsListSample.ts -[pricingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsUpdateSample.ts -[regulatorycomplianceassessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsGetSample.ts -[regulatorycomplianceassessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsListSample.ts -[regulatorycompliancecontrolsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsGetSample.ts -[regulatorycompliancecontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsListSample.ts -[regulatorycompliancestandardsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsGetSample.ts -[regulatorycompliancestandardslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsListSample.ts -[securescorecontroldefinitionslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListBySubscriptionSample.ts -[securescorecontroldefinitionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListSample.ts -[securescorecontrolslistbysecurescoresample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListBySecureScoreSample.ts -[securescorecontrolslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListSample.ts -[securescoresgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresGetSample.ts -[securescoreslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresListSample.ts -[securityconnectorapplicationcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationCreateOrUpdateSample.ts -[securityconnectorapplicationdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationDeleteSample.ts -[securityconnectorapplicationgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationGetSample.ts -[securityconnectorapplicationslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationsListSample.ts -[securityconnectorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsCreateOrUpdateSample.ts -[securityconnectorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsDeleteSample.ts -[securityconnectorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsGetSample.ts -[securityconnectorslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListByResourceGroupSample.ts -[securityconnectorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListSample.ts -[securityconnectorsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsUpdateSample.ts -[securitycontactscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsCreateSample.ts -[securitycontactsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsDeleteSample.ts -[securitycontactsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsGetSample.ts -[securitycontactslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsListSample.ts -[securityoperatorscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsCreateOrUpdateSample.ts -[securityoperatorsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsDeleteSample.ts -[securityoperatorsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsGetSample.ts -[securityoperatorslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsListSample.ts -[securitysolutionsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsGetSample.ts -[securitysolutionslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsListSample.ts -[securitysolutionsreferencedatalistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListByHomeRegionSample.ts -[securitysolutionsreferencedatalistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListSample.ts -[sensitivitysettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sensitivitySettingsListSample.ts -[servervulnerabilityassessmentcreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentCreateOrUpdateSample.ts -[servervulnerabilityassessmentdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentDeleteSample.ts -[servervulnerabilityassessmentgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentGetSample.ts -[servervulnerabilityassessmentlistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentListByExtendedResourceSample.ts -[servervulnerabilityassessmentssettingscreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts -[servervulnerabilityassessmentssettingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsDeleteSample.ts -[servervulnerabilityassessmentssettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsGetSample.ts -[servervulnerabilityassessmentssettingslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts -[settingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsGetSample.ts -[settingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsListSample.ts -[settingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsUpdateSample.ts -[softwareinventoriesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesGetSample.ts -[softwareinventorieslistbyextendedresourcesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListByExtendedResourceSample.ts -[softwareinventorieslistbysubscriptionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListBySubscriptionSample.ts -[sqlvulnerabilityassessmentbaselinerulesaddsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts -[sqlvulnerabilityassessmentbaselinerulescreateorupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts -[sqlvulnerabilityassessmentbaselinerulesdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts -[sqlvulnerabilityassessmentbaselinerulesgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts -[sqlvulnerabilityassessmentbaselineruleslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesListSample.ts -[sqlvulnerabilityassessmentscanresultsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsGetSample.ts -[sqlvulnerabilityassessmentscanresultslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsListSample.ts -[sqlvulnerabilityassessmentscansgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansGetSample.ts -[sqlvulnerabilityassessmentscanslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansListSample.ts -[subassessmentsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsGetSample.ts -[subassessmentslistallsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListAllSample.ts -[subassessmentslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListSample.ts -[tasksgetresourcegroupleveltasksample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetResourceGroupLevelTaskSample.ts -[tasksgetsubscriptionleveltasksample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetSubscriptionLevelTaskSample.ts -[taskslistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByHomeRegionSample.ts -[taskslistbyresourcegroupsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByResourceGroupSample.ts -[taskslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListSample.ts -[tasksupdateresourcegroupleveltaskstatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateResourceGroupLevelTaskStateSample.ts -[tasksupdatesubscriptionleveltaskstatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateSubscriptionLevelTaskStateSample.ts -[topologygetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyGetSample.ts -[topologylistbyhomeregionsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListByHomeRegionSample.ts -[topologylistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListSample.ts -[updatesensitivitysettingssample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/updateSensitivitySettingsSample.ts -[workspacesettingscreatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsCreateSample.ts -[workspacesettingsdeletesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsDeleteSample.ts -[workspacesettingsgetsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsGetSample.ts -[workspacesettingslistsample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsListSample.ts -[workspacesettingsupdatesample]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsUpdateSample.ts -[apiref]: https://learn.microsoft.com/javascript/api/@azure/arm-security?view=azure-node-preview -[freesub]: https://azure.microsoft.com/free/ -[package]: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security/README.md -[typescript]: https://www.typescriptlang.org/docs/home.html diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/package.json b/sdk/security/arm-security/samples/v6-beta/typescript/package.json deleted file mode 100644 index 9e6646951ef8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/package.json +++ /dev/null @@ -1,41 +0,0 @@ -{ - "name": "@azure-samples/arm-security-ts-beta", - "private": true, - "version": "1.0.0", - "description": " client library samples for TypeScript (Beta)", - "engines": { - "node": ">=20.0.0" - }, - "scripts": { - "build": "tsc", - "prebuild": "rimraf dist/" - }, - "repository": { - "type": "git", - "url": "git+https://github.com/Azure/azure-sdk-for-js.git", - "directory": "sdk/security/arm-security" - }, - "keywords": [ - "node", - "azure", - "typescript", - "browser", - "isomorphic" - ], - "author": "Microsoft Corporation", - "license": "MIT", - "bugs": { - "url": "https://github.com/Azure/azure-sdk-for-js/issues" - }, - "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/security/arm-security", - "dependencies": { - "@azure/arm-security": "next", - "dotenv": "latest", - "@azure/identity": "^4.2.1" - }, - "devDependencies": { - "@types/node": "^20.0.0", - "typescript": "~5.8.2", - "rimraf": "latest" - } -} diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/sample.env b/sdk/security/arm-security/samples/v6-beta/typescript/sample.env deleted file mode 100644 index 672847a3fea0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/sample.env +++ /dev/null @@ -1,4 +0,0 @@ -# App registration secret for AAD authentication -AZURE_CLIENT_SECRET= -AZURE_CLIENT_ID= -AZURE_TENANT_ID= \ No newline at end of file diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsDeleteSample.ts deleted file mode 100644 index 3b733a4d526d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete an application control machine group - * - * @summary Delete an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/DeleteAdaptiveApplicationControls_example.json - */ -async function deleteAnApplicationControlMachineGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "GROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.delete( - ascLocation, - groupName, - ); - console.log(result); -} - -async function main(): Promise { - deleteAnApplicationControlMachineGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsGetSample.ts deleted file mode 100644 index 8dab71e6cb11..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets an application control VM/server group. - * - * @summary Gets an application control VM/server group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsGroup_example.json - */ -async function getsAConfiguredApplicationControlVMOrServerGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.get( - ascLocation, - groupName, - ); - console.log(result); -} - -async function main(): Promise { - getsAConfiguredApplicationControlVMOrServerGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsListSample.ts deleted file mode 100644 index 50461439f11a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsListSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - AdaptiveApplicationControlsListOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of application control machine groups for the subscription. - * - * @summary Gets a list of application control machine groups for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/GetAdaptiveApplicationControlsSubscription_example.json - */ -async function getsAListOfApplicationControlGroupsOfMachinesForTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const includePathRecommendations = true; - const summary = false; - const options: AdaptiveApplicationControlsListOptionalParams = { - includePathRecommendations, - summary, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.list(options); - console.log(result); -} - -async function main(): Promise { - getsAListOfApplicationControlGroupsOfMachinesForTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsPutSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsPutSample.ts deleted file mode 100644 index add99085477e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveApplicationControlsPutSample.ts +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - AdaptiveApplicationControlGroup, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update an application control machine group - * - * @summary Update an application control machine group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ApplicationWhitelistings/PutAdaptiveApplicationControls_example.json - */ -async function updateAnApplicationControlMachineGroupByAddingANewApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const groupName = "ERELGROUP1"; - const body: AdaptiveApplicationControlGroup = { - enforcementMode: "Audit", - pathRecommendations: [ - { - type: "PublisherSignature", - path: "[Exe] O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US\\*\\*\\0.0.0.0", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: - "O=MICROSOFT CORPORATION, L=REDMOND, S=WASHINGTON, C=US", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { recommendationAction: "Recommended", username: "Everyone" }, - ], - }, - { - type: "ProductSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\SECAGENT\\WASECAGENTPROV.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "MICROSOFT® COREXT", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "PublisherSignature", - path: "%OSDRIVE%\\WINDOWSAZURE\\PACKAGES_201973_7415\\COLLECTGUESTLOGS.EXE", - action: "Recommended", - common: true, - configurationStatus: "Configured", - fileType: "Exe", - publisherInfo: { - binaryName: "*", - productName: "*", - publisherName: "CN=MICROSOFT AZURE DEPENDENCY CODE SIGN", - version: "0.0.0.0", - }, - userSids: ["S-1-1-0"], - usernames: [ - { - recommendationAction: "Recommended", - username: "NT AUTHORITY\\SYSTEM", - }, - ], - }, - { - type: "File", - path: "C:\\directory\\file.exe", - action: "Add", - common: true, - }, - ], - protectionMode: { exe: "Audit", msi: "None", script: "None" }, - vmRecommendations: [ - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/erelh-stable/providers/microsoft.compute/virtualmachines/erelh-16090", - }, - { - configurationStatus: "Configured", - enforcementSupport: "Supported", - recommendationAction: "Recommended", - resourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourcegroups/matanvs/providers/microsoft.compute/virtualmachines/matanvs19", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveApplicationControls.put( - ascLocation, - groupName, - body, - ); - console.log(result); -} - -async function main(): Promise { - updateAnApplicationControlMachineGroupByAddingANewApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsEnforceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsEnforceSample.ts deleted file mode 100644 index b6b75571cac2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsEnforceSample.ts +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - AdaptiveNetworkHardeningEnforceRequest, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Enforces the given rules on the NSG(s) listed in the request - * - * @summary Enforces the given rules on the NSG(s) listed in the request - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/EnforceAdaptiveNetworkHardeningRules_example.json - */ -async function enforcesTheGivenRulesOnTheNsgSListedInTheRequest(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const body: AdaptiveNetworkHardeningEnforceRequest = { - networkSecurityGroups: [ - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg1/providers/Microsoft.Network/networkSecurityGroups/nsg1", - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/rg2/providers/Microsoft.Network/networkSecurityGroups/nsg2", - ], - rules: [ - { - name: "rule1", - destinationPort: 3389, - direction: "Inbound", - ipAddresses: ["100.10.1.1", "200.20.2.2", "81.199.3.0/24"], - protocols: ["TCP"], - }, - { - name: "rule2", - destinationPort: 22, - direction: "Inbound", - ipAddresses: [], - protocols: ["TCP"], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.beginEnforceAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - body, - ); - console.log(result); -} - -async function main(): Promise { - enforcesTheGivenRulesOnTheNsgSListedInTheRequest(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsGetSample.ts deleted file mode 100644 index 18d8d2676b8e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsGetSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a single Adaptive Network Hardening resource - * - * @summary Gets a single Adaptive Network Hardening resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/GetAdaptiveNetworkHardening_example.json - */ -async function getASingleAdaptiveNetworkHardeningResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const adaptiveNetworkHardeningResourceName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.adaptiveNetworkHardenings.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - adaptiveNetworkHardeningResourceName, - ); - console.log(result); -} - -async function main(): Promise { - getASingleAdaptiveNetworkHardeningResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsListByExtendedResourceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsListByExtendedResourceSample.ts deleted file mode 100644 index be02ecfe3060..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/adaptiveNetworkHardeningsListByExtendedResourceSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * - * @summary Gets a list of Adaptive Network Hardenings resources in scope of an extended resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AdaptiveNetworkHardenings/ListByExtendedResourceAdaptiveNetworkHardenings_example.json - */ -async function listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.adaptiveNetworkHardenings.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAdaptiveNetworkHardeningsResourcesOfAnExtendedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionCreateSample.ts deleted file mode 100644 index db1e4dcf23b0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionCreateSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - AdvancedThreatProtectionSetting, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates the Advanced Threat Protection settings on a specified resource. - * - * @summary Creates or updates the Advanced Threat Protection settings on a specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/PutAdvancedThreatProtectionSettings_example.json - */ -async function createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const advancedThreatProtectionSetting: AdvancedThreatProtectionSetting = { - name: "current", - type: "Microsoft.Security/advancedThreatProtectionSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount/providers/Microsoft.Security/advancedThreatProtectionSettings/current", - isEnabled: true, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.create( - resourceId, - advancedThreatProtectionSetting, - ); - console.log(result); -} - -async function main(): Promise { - createsOrUpdatesTheAdvancedThreatProtectionSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionGetSample.ts deleted file mode 100644 index 434b41ce4e40..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/advancedThreatProtectionGetSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the Advanced Threat Protection settings for the specified resource. - * - * @summary Gets the Advanced Threat Protection settings for the specified resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-01-01/examples/AdvancedThreatProtection/GetAdvancedThreatProtectionSettings_example.json - */ -async function getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.advancedThreatProtection.get(resourceId); - console.log(result); -} - -async function main(): Promise { - getsTheAdvancedThreatProtectionSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetResourceGroupLevelSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetResourceGroupLevelSample.ts deleted file mode 100644 index 74be36cb627f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetResourceGroupLevelSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get an alert that is associated a resource group or a resource in a resource group - * - * @summary Get an alert that is associated a resource group or a resource in a resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertResourceGroupLocation_example.json - */ -async function getSecurityAlertOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getResourceGroupLevel( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityAlertOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetSubscriptionLevelSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetSubscriptionLevelSample.ts deleted file mode 100644 index ee3a2f403f3f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsGetSubscriptionLevelSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get an alert that is associated with a subscription - * - * @summary Get an alert that is associated with a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertSubscriptionLocation_example.json - */ -async function getSecurityAlertOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518770965529163669_F144EE95-A3E5-42DA-A279-967D115809AA"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.getSubscriptionLevel( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityAlertOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListByResourceGroupSample.ts deleted file mode 100644 index 957399ab9bb5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListByResourceGroupSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group - * - * @summary List all the alerts that are associated with the resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroup_example.json - */ -async function getSecurityAlertsOnAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listByResourceGroup(resourceGroupName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityAlertsOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListResourceGroupLevelByRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListResourceGroupLevelByRegionSample.ts deleted file mode 100644 index 2e4e7830ede0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListResourceGroupLevelByRegionSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List all the alerts that are associated with the resource group that are stored in a specific location - * - * @summary List all the alerts that are associated with the resource group that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsResourceGroupLocation_example.json - */ -async function getSecurityAlertsOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listResourceGroupLevelByRegion( - ascLocation, - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityAlertsOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSample.ts deleted file mode 100644 index 446c0d3a2fe7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription - * - * @summary List all the alerts that are associated with the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscription_example.json - */ -async function getSecurityAlertsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSubscriptionLevelByRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSubscriptionLevelByRegionSample.ts deleted file mode 100644 index 322995bb179c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsListSubscriptionLevelByRegionSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List all the alerts that are associated with the subscription that are stored in a specific location - * - * @summary List all the alerts that are associated with the subscription that are stored in a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/GetAlertsSubscriptionsLocation_example.json - */ -async function getSecurityAlertsOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alerts.listSubscriptionLevelByRegion( - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityAlertsOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSimulateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSimulateSample.ts deleted file mode 100644 index 8753f840087b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSimulateSample.ts +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AlertSimulatorRequestBody, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Simulate security alerts - * - * @summary Simulate security alerts - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/SimulateAlerts_example.json - */ -async function simulateSecurityAlertsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const alertSimulatorRequestBody: AlertSimulatorRequestBody = { - properties: { - bundles: [ - "AppServices", - "DNS", - "KeyVaults", - "KubernetesService", - "ResourceManager", - "SqlServers", - "StorageAccounts", - "VirtualMachines", - "CosmosDbs", - ], - kind: "Bundles", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.beginSimulateAndWait( - ascLocation, - alertSimulatorRequestBody, - ); - console.log(result); -} - -async function main(): Promise { - simulateSecurityAlertsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesDeleteSample.ts deleted file mode 100644 index 90e1021dbb8b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesDeleteSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete dismiss alert rule for this subscription. - * - * @summary Delete dismiss alert rule for this subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/DeleteAlertsSuppressionRule_example.json - */ -async function deleteSuppressionRuleDataForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.delete( - alertsSuppressionRuleName, - ); - console.log(result); -} - -async function main(): Promise { - deleteSuppressionRuleDataForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesGetSample.ts deleted file mode 100644 index 266d989d6ac7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesGetSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * - * @summary Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRule_example.json - */ -async function getSuppressionAlertRuleForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.get( - alertsSuppressionRuleName, - ); - console.log(result); -} - -async function main(): Promise { - getSuppressionAlertRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesListSample.ts deleted file mode 100644 index cae88f206abf..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesListSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRulesWithAlertType_example.json - */ -async function getSuppressionAlertRuleForSubscriptionFilteredByAlertType(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to List of all the dismiss rules for the given subscription - * - * @summary List of all the dismiss rules for the given subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/GetAlertsSuppressionRules_example.json - */ -async function getSuppressionRulesForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.alertsSuppressionRules.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSuppressionAlertRuleForSubscriptionFilteredByAlertType(); - getSuppressionRulesForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesUpdateSample.ts deleted file mode 100644 index 33090d491a80..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsSuppressionRulesUpdateSample.ts +++ /dev/null @@ -1,52 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AlertsSuppressionRule, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update existing rule or create new rule if it doesn't exist - * - * @summary Update existing rule or create new rule if it doesn't exist - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/AlertsSuppressionRules/PutAlertsSuppressionRule_example.json - */ -async function updateOrCreateSuppressionRuleForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const alertsSuppressionRuleName = "dismissIpAnomalyAlerts"; - const alertsSuppressionRule: AlertsSuppressionRule = { - alertType: "IpAnomaly", - comment: "Test VM", - expirationDateUtc: new Date("2019-12-01T19:50:47.083633Z"), - reason: "FalsePositive", - state: "Enabled", - suppressionAlertsScope: { - allOf: [ - { field: "entities.ip.address" }, - { field: "entities.process.commandline" }, - ], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alertsSuppressionRules.update( - alertsSuppressionRuleName, - alertsSuppressionRule, - ); - console.log(result); -} - -async function main(): Promise { - updateOrCreateSuppressionRuleForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToActivateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToActivateSample.ts deleted file mode 100644 index ffac6f6da025..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToActivateSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_activate_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToActivate( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToDismissSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToDismissSample.ts deleted file mode 100644 index f588576fb0bc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToDismissSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_dismiss_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToDismiss( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToInProgressSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToInProgressSample.ts deleted file mode 100644 index b8572933a9bd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToInProgressSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_inProgress_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToInProgress( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToResolveSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToResolveSample.ts deleted file mode 100644 index fb0d38802d43..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateResourceGroupLevelStateToResolveSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertResourceGroupLocation_resolve_example.json - */ -async function updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "westeurope"; - const alertName = "2518765996949954086_2325cf9e-42a2-4f72-ae7f-9b863cba2d22"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateResourceGroupLevelStateToResolve( - resourceGroupName, - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToActivateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToActivateSample.ts deleted file mode 100644 index c18b4a3ab22f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToActivateSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_activate_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToActivate( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToDismissSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToDismissSample.ts deleted file mode 100644 index 27b9d0b8e811..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToDismissSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_dismiss_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToDismiss( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToInProgressSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToInProgressSample.ts deleted file mode 100644 index 07811f4e6e6f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToInProgressSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_inProgress_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToInProgress( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToResolveSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToResolveSample.ts deleted file mode 100644 index 117eea048ba8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/alertsUpdateSubscriptionLevelStateToResolveSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Update the alert's state - * - * @summary Update the alert's state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-01-01/examples/Alerts/UpdateAlertSubscriptionLocation_resolve_example.json - */ -async function updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const alertName = "2518298467986649999_4d25bfef-2d77-4a08-adc0-3e35715cc92a"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.alerts.updateSubscriptionLevelStateToResolve( - ascLocation, - alertName, - ); - console.log(result); -} - -async function main(): Promise { - updateSecurityAlertStateOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsGetSample.ts deleted file mode 100644 index fde84ed6bafd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsGetSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location, based on connection type. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnections_example.json - */ -async function getAllowedConnections(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "myResourceGroup"; - const ascLocation = "centralus"; - const connectionType = "Internal"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.allowedConnections.get( - resourceGroupName, - ascLocation, - connectionType, - ); - console.log(result); -} - -async function main(): Promise { - getAllowedConnections(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListByHomeRegionSample.ts deleted file mode 100644 index 343b287d137b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListByHomeRegionSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription and location. - * - * @summary Gets the list of all possible traffic between resources for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscriptionLocation_example.json - */ -async function getAllowedConnectionsOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.allowedConnections.listByHomeRegion( - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllowedConnectionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListSample.ts deleted file mode 100644 index 15ad92eafd42..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/allowedConnectionsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the list of all possible traffic between resources for the subscription - * - * @summary Gets the list of all possible traffic between resources for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/AllowedConnections/GetAllowedConnectionsSubscription_example.json - */ -async function getAllowedConnectionsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.allowedConnections.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllowedConnectionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsGetByAzureApiManagementServiceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsGetByAzureApiManagementServiceSample.ts deleted file mode 100644 index bc7afe174728..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsGetByAzureApiManagementServiceSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_GetByAzureApiManagementService_example.json - */ -async function getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.getByAzureApiManagementService( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - getsAnAzureApiManagementApiIfItHasBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByAzureApiManagementServiceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByAzureApiManagementServiceSample.ts deleted file mode 100644 index a006a022a92f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByAzureApiManagementServiceSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByAzureApiManagementService_example.json - */ -async function getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listByAzureApiManagementService( - resourceGroupName, - serviceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getsAListOfAzureApiManagementApIsThatHaveBeenOnboardedToMicrosoftDefenderForApis(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByResourceGroupSample.ts deleted file mode 100644 index 50fbba626be8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListByResourceGroupSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListByResourceGroup_example.json - */ -async function getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getsAListOfApiCollectionsWithinAResourceGroupThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListBySubscriptionSample.ts deleted file mode 100644 index 7d5c206a71ea..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * - * @summary Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_ListBySubscription_example.json - */ -async function getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.aPICollections.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getsAListOfApiCollectionsWithinASubscriptionThatHaveBeenOnboardedToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOffboardAzureApiManagementApiSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOffboardAzureApiManagementApiSample.ts deleted file mode 100644 index 11050ce6c300..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOffboardAzureApiManagementApiSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * - * @summary Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OffboardAzureApiManagementApi_example.json - */ -async function offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.aPICollections.offboardAzureApiManagementApi( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - offboardAnAzureApiManagementApiFromMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOnboardAzureApiManagementApiSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOnboardAzureApiManagementApiSample.ts deleted file mode 100644 index 38f382488b39..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/apiCollectionsOnboardAzureApiManagementApiSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * - * @summary Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-11-15/examples/ApiCollections/APICollections_OnboardAzureApiManagementApi_example.json - */ -async function onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3fa85f64-5717-4562-b3fc-2c963f66afa6"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const serviceName = "apimService1"; - const apiId = "echo-api"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.aPICollections.beginOnboardAzureApiManagementApiAndWait( - resourceGroupName, - serviceName, - apiId, - ); - console.log(result); -} - -async function main(): Promise { - onboardAnAzureApiManagementApiToMicrosoftDefenderForApIs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationCreateOrUpdateSample.ts deleted file mode 100644 index b4052b7c7cc8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationCreateOrUpdateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { Application, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or update a security application on the given subscription. - * - * @summary Creates or update a security application on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutApplication_example.json - */ -async function createApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application: Application = { - description: "An application on critical recommendations", - conditionSets: [ - { - conditions: [ - { operator: "contains", property: "$.Id", value: "-bil-" }, - ], - }, - ], - displayName: "Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.createOrUpdate( - applicationId, - application, - ); - console.log(result); -} - -async function main(): Promise { - createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationDeleteSample.ts deleted file mode 100644 index ce957f15f6e2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationDeleteSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteApplication_example.json - */ -async function deleteSecurityApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.delete(applicationId); - console.log(result); -} - -async function main(): Promise { - deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationGetSample.ts deleted file mode 100644 index d549fa35440f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetApplication_example.json - */ -async function getSecurityApplicationBySpecificApplicationId(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.applicationOperations.get(applicationId); - console.log(result); -} - -async function main(): Promise { - getSecurityApplicationBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationsListSample.ts deleted file mode 100644 index 6152be561f51..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/applicationsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a list of all relevant applications over a subscription level scope - * - * @summary Get a list of all relevant applications over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySubscriptionApplications_example.json - */ -async function listApplicationsSecurityBySubscriptionLevelScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.applications.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listApplicationsSecurityBySubscriptionLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsCreateOrUpdateSample.ts deleted file mode 100644 index 5bb84465c61f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsCreateOrUpdateSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityAssessment, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/PutAssessment_example.json - */ -async function createSecurityRecommendationTaskOnAResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const assessment: SecurityAssessment = { - resourceDetails: { source: "Azure" }, - status: { code: "Healthy" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.createOrUpdate( - resourceId, - assessmentName, - assessment, - ); - console.log(result); -} - -async function main(): Promise { - createSecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsDeleteSample.ts deleted file mode 100644 index 6aa6702c7f27..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsDeleteSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/DeleteAssessment_example.json - */ -async function deleteASecurityRecommendationTaskOnAResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "8bb8be0a-6010-4789-812f-e4d661c4ed0e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.delete(resourceId, assessmentName); - console.log(result); -} - -async function main(): Promise { - deleteASecurityRecommendationTaskOnAResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsGetSample.ts deleted file mode 100644 index e04e34f96c56..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsGetSample.ts +++ /dev/null @@ -1,61 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - AssessmentsGetOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessment_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get(resourceId, assessmentName); - console.log(result); -} - -/** - * This sample demonstrates how to Get a security assessment on your scanned resource - * - * @summary Get a security assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/GetAssessmentWithExpand_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.Compute/virtualMachineScaleSets/vmss2"; - const assessmentName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const expand = "links"; - const options: AssessmentsGetOptionalParams = { expand }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessments.get( - resourceId, - assessmentName, - options, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityRecommendationTaskFromSecurityDataLocation(); - getSecurityRecommendationTaskFromSecurityDataLocationWithExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsListSample.ts deleted file mode 100644 index dad51463056c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get security assessments on all your scanned resources inside a scope - * - * @summary Get security assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/Assessments/ListAssessments_example.json - */ -async function listSecurityAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.assessments.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataCreateInSubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataCreateInSubscriptionSample.ts deleted file mode 100644 index ed49e523d614..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataCreateInSubscriptionSample.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - SecurityAssessmentMetadataResponse, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Create metadata information on an assessment type in a specific subscription - * - * @summary Create metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/CreateAssessmentsMetadata_subscription_example.json - */ -async function createSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const assessmentMetadata: SecurityAssessmentMetadataResponse = { - description: - "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.", - assessmentType: "CustomerManaged", - categories: ["Compute"], - displayName: - "Install endpoint protection solution on virtual machine scale sets", - implementationEffort: "Low", - remediationDescription: - 'To install an endpoint protection solution: 1. Follow the instructions in How do I turn on antimalware in my virtual machine scale set', - severity: "Medium", - threats: ["dataExfiltration", "dataSpillage", "maliciousInsider"], - userImpact: "Low", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.createInSubscription( - assessmentMetadataName, - assessmentMetadata, - ); - console.log(result); -} - -async function main(): Promise { - createSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataDeleteInSubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataDeleteInSubscriptionSample.ts deleted file mode 100644 index a0f09f403cfc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataDeleteInSubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/DeleteAssessmentsMetadata_subscription_example.json - */ -async function deleteASecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.deleteInSubscription( - assessmentMetadataName, - ); - console.log(result); -} - -async function main(): Promise { - deleteASecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetInSubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetInSubscriptionSample.ts deleted file mode 100644 index c245ce6f074e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetInSubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get metadata information on an assessment type in a specific subscription - * - * @summary Get metadata information on an assessment type in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_subscription_example.json - */ -async function getSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0980887d-03d6-408c-9566-532f3456804e"; - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.assessmentsMetadata.getInSubscription( - assessmentMetadataName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetSample.ts deleted file mode 100644 index 010193fb07c4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataGetSample.ts +++ /dev/null @@ -1,33 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get metadata information on an assessment type - * - * @summary Get metadata information on an assessment type - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/GetAssessmentsMetadata_example.json - */ -async function getSecurityAssessmentMetadata(): Promise { - const assessmentMetadataName = "21300918-b2e3-0346-785f-c77ff57d243b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.assessmentsMetadata.get(assessmentMetadataName); - console.log(result); -} - -async function main(): Promise { - getSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListBySubscriptionSample.ts deleted file mode 100644 index 804a07270292..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get metadata information on all assessment types in a specific subscription - * - * @summary Get metadata information on all assessment types in a specific subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_subscription_example.json - */ -async function listSecurityAssessmentMetadataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0980887d-03d6-408c-9566-532f3456804e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.assessmentsMetadata.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityAssessmentMetadataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListSample.ts deleted file mode 100644 index e98f1636b9b8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/assessmentsMetadataListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get metadata information on all assessment types - * - * @summary Get metadata information on all assessment types - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2021-06-01/examples/AssessmentsMetadata/ListAssessmentsMetadata_example.json - */ -async function listSecurityAssessmentMetadata(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.assessmentsMetadata.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityAssessmentMetadata(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsCreateSample.ts deleted file mode 100644 index 81c317ec171f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsCreateSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AutoProvisioningSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/CreateAutoProvisioningSettingsSubscription_example.json - */ -async function createAutoProvisioningSettingsForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const setting: AutoProvisioningSetting = { - name: "default", - type: "Microsoft.Security/autoProvisioningSettings", - autoProvision: "On", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/autoProvisioningSettings/default", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.create( - settingName, - setting, - ); - console.log(result); -} - -async function main(): Promise { - createAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsGetSample.ts deleted file mode 100644 index d073c9aeb0c5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of a specific setting - * - * @summary Details of a specific setting - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingSubscription_example.json - */ -async function getAnAutoProvisioningSettingForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.autoProvisioningSettings.get(settingName); - console.log(result); -} - -async function main(): Promise { - getAnAutoProvisioningSettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsListSample.ts deleted file mode 100644 index fa95f9a7c39e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/autoProvisioningSettingsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Exposes the auto provisioning settings of the subscriptions - * - * @summary Exposes the auto provisioning settings of the subscriptions - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/AutoProvisioningSettings/GetAutoProvisioningSettingsSubscription_example.json - */ -async function getAutoProvisioningSettingsForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.autoProvisioningSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAutoProvisioningSettingsForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsCreateOrUpdateSample.ts deleted file mode 100644 index 4553b61dcae2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsCreateOrUpdateSample.ts +++ /dev/null @@ -1,197 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { Automation, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationAllAssessments_example.json - */ -async function createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutAutomationHighSeverityAssessments_example.json - */ -async function createOrUpdateASecurityAutomationForAllHighSeverityAssessments(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any high severity security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "High", - operator: "Equals", - propertyJPath: "properties.metadata.severity", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PutDisableAutomation_example.json - */ -async function disableOrEnableASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - etag: "etag value (must be supplied for update)", - isEnabled: false, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.createOrUpdate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateASecurityAutomationForAllAssessmentsIncludingAllSeverities(); - createOrUpdateASecurityAutomationForAllHighSeverityAssessments(); - disableOrEnableASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsDeleteSample.ts deleted file mode 100644 index 880cd1140671..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a security automation. - * - * @summary Deletes a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/DeleteAutomation_example.json - */ -async function deleteASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const automationName = "myAutomationName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.delete( - resourceGroupName, - automationName, - ); - console.log(result); -} - -async function main(): Promise { - deleteASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsGetSample.ts deleted file mode 100644 index 77ce98984494..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsGetSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Retrieves information about the model of a security automation. - * - * @summary Retrieves information about the model of a security automation. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationResourceGroup_example.json - */ -async function retrieveASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.get( - resourceGroupName, - automationName, - ); - console.log(result); -} - -async function main(): Promise { - retrieveASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListByResourceGroupSample.ts deleted file mode 100644 index bca0c40611fb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListByResourceGroupSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsResourceGroup_example.json - */ -async function listAllSecurityAutomationsOfASpecifiedResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.automations.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllSecurityAutomationsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListSample.ts deleted file mode 100644 index ba5d7e9ad15b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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. - * - * @summary 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. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/GetAutomationsSubscription_example.json - */ -async function listAllSecurityAutomationsOfASpecifiedSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.automations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllSecurityAutomationsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsUpdateSample.ts deleted file mode 100644 index 39bf675bc4ee..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsUpdateSample.ts +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AutomationUpdateModel, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a security automation - * - * @summary Updates a security automation - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/PatchAutomation_example.json - */ -async function updateASecurityAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: AutomationUpdateModel = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [{ eventSource: "Assessments" }], - tags: { example: "exampleTag" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.update( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -async function main(): Promise { - updateASecurityAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsValidateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsValidateSample.ts deleted file mode 100644 index d64fa2e69806..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/automationsValidateSample.ts +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { Automation, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Validates the security automation model before create or update. Any validation errors are returned to the client. - * - * @summary Validates the security automation model before create or update. Any validation errors are returned to the client. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/Automations/ValidateAutomation_example.json - */ -async function validateTheSecurityAutomationModelBeforeCreateOrUpdate(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const automationName = "exampleAutomation"; - const automation: Automation = { - description: - "An example of a security automation that triggers one LogicApp resource (myTest1) on any security assessment of type customAssessment", - actions: [ - { - actionType: "LogicApp", - logicAppResourceId: - "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", - uri: "https://exampleTriggerUri1.com", - }, - ], - isEnabled: true, - location: "Central US", - scopes: [ - { - description: - "A description that helps to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription a5caac9c-5c04-49af-b3d0-e204f40345d5", - scopePath: - "/subscriptions/a5caac9c-5c04-49af-b3d0-e204f40345d5/resourceGroups/myResourceGroup", - }, - ], - sources: [ - { - eventSource: "Assessments", - ruleSets: [ - { - rules: [ - { - expectedValue: "customAssessment", - operator: "Equals", - propertyJPath: "$.Entity.AssessmentType", - propertyType: "String", - }, - ], - }, - ], - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.automations.validate( - resourceGroupName, - automationName, - automation, - ); - console.log(result); -} - -async function main(): Promise { - validateTheSecurityAutomationModelBeforeCreateOrUpdate(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsCreateOrUpdateSample.ts deleted file mode 100644 index 3138088f73e9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsCreateOrUpdateSample.ts +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsOrg, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates monitored Azure DevOps organization details. - * - * @summary Creates or updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsOrgs_example.json - */ -async function createOrUpdateAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg: AzureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsGetSample.ts deleted file mode 100644 index fd659933bbe8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps organization resource. - * - * @summary Returns a monitored Azure DevOps organization resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsOrgs_example.json - */ -async function getAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.get( - resourceGroupName, - securityConnectorName, - orgName, - ); - console.log(result); -} - -async function main(): Promise { - getAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListAvailableSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListAvailableSample.ts deleted file mode 100644 index 1bd6eab02e6c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListAvailableSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * - * @summary Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableAzureDevOpsOrgs_example.json - */ -async function listAvailableAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.listAvailable( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - listAvailableAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListSample.ts deleted file mode 100644 index 867a2c68564b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of Azure DevOps organizations onboarded to the connector. - * - * @summary Returns a list of Azure DevOps organizations onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsOrgs_example.json - */ -async function listAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsOrgs.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsUpdateSample.ts deleted file mode 100644 index d7c5a9d4e4ea..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsOrgsUpdateSample.ts +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsOrg, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates monitored Azure DevOps organization details. - * - * @summary Updates monitored Azure DevOps organization details. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsOrgs_example.json - */ -async function updateAzureDevOpsOrgs(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const azureDevOpsOrg: AzureDevOpsOrg = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsOrgs.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - azureDevOpsOrg, - ); - console.log(result); -} - -async function main(): Promise { - updateAzureDevOpsOrgs(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsCreateOrUpdateSample.ts deleted file mode 100644 index 1d2296dae657..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsCreateOrUpdateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsProject, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps project resource. - * - * @summary Creates or updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsProjects_example.json - */ -async function createOrUpdateAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject: AzureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsGetSample.ts deleted file mode 100644 index c31bb61ff7f2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsGetSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps project resource. - * - * @summary Returns a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsProjects_example.json - */ -async function getAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - ); - console.log(result); -} - -async function main(): Promise { - getAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsListSample.ts deleted file mode 100644 index 807c47b3fb28..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsListSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of Azure DevOps projects onboarded to the connector. - * - * @summary Returns a list of Azure DevOps projects onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsProjects_example.json - */ -async function listAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsProjects.list( - resourceGroupName, - securityConnectorName, - orgName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsUpdateSample.ts deleted file mode 100644 index 92a9a412ecdb..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsProjectsUpdateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsProject, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps project resource. - * - * @summary Updates a monitored Azure DevOps project resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsProjects_example.json - */ -async function updateAzureDevOpsProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const azureDevOpsProject: AzureDevOpsProject = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsProjects.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - azureDevOpsProject, - ); - console.log(result); -} - -async function main(): Promise { - updateAzureDevOpsProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposCreateOrUpdateSample.ts deleted file mode 100644 index fb4e221dcd83..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposCreateOrUpdateSample.ts +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsRepository, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a monitored Azure DevOps repository resource. - * - * @summary Creates or updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateAzureDevOpsRepos_example.json - */ -async function createOrUpdateAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository: AzureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposGetSample.ts deleted file mode 100644 index ca8a3a2984af..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposGetSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored Azure DevOps repository resource. - * - * @summary Returns a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetAzureDevOpsRepos_example.json - */ -async function getAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.get( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - ); - console.log(result); -} - -async function main(): Promise { - getAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposListSample.ts deleted file mode 100644 index d43eb04040a9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposListSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of Azure DevOps repositories onboarded to the connector. - * - * @summary Returns a list of Azure DevOps repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAzureDevOpsRepos_example.json - */ -async function listAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.azureDevOpsRepos.list( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposUpdateSample.ts deleted file mode 100644 index cd2eb7fae7e8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/azureDevOpsReposUpdateSample.ts +++ /dev/null @@ -1,53 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureDevOpsRepository, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a monitored Azure DevOps repository resource. - * - * @summary Updates a monitored Azure DevOps repository resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateAzureDevOpsRepos_example.json - */ -async function updateAzureDevOpsRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const orgName = "myAzDevOpsOrg"; - const projectName = "myAzDevOpsProject"; - const repoName = "myAzDevOpsRepo"; - const azureDevOpsRepository: AzureDevOpsRepository = { - properties: { - actionableRemediation: { state: "Enabled" }, - onboardingState: "NotApplicable", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.azureDevOpsRepos.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - orgName, - projectName, - repoName, - azureDevOpsRepository, - ); - console.log(result); -} - -async function main(): Promise { - updateAzureDevOpsRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsGetSample.ts deleted file mode 100644 index c77d5f396e58..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Security Compliance Result - * - * @summary Security Compliance Result - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/GetComplianceResults_example.json - */ -async function getComplianceResultsOnSubscription(): Promise { - const resourceId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceResultName = "DesignateMoreThanOneOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.complianceResults.get( - resourceId, - complianceResultName, - ); - console.log(result); -} - -async function main(): Promise { - getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsListSample.ts deleted file mode 100644 index dd9cd35e338c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/complianceResultsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Security compliance results in the subscription - * - * @summary Security compliance results in the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2017-08-01/examples/ComplianceResults/ListComplianceResults_example.json - */ -async function getComplianceResultsOnSubscription(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.complianceResults.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getComplianceResultsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesGetSample.ts deleted file mode 100644 index 14ecda010439..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesGetSample.ts +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of a specific Compliance. - * - * @summary Details of a specific Compliance. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliance_example.json - */ -async function getSecurityComplianceDataForADay(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const complianceName = "2018-01-01Z"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.compliances.get(scope, complianceName); - console.log(result); -} - -async function main(): Promise { - getSecurityComplianceDataForADay(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesListSample.ts deleted file mode 100644 index 4bb40000e5c8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/compliancesListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to The Compliance scores of the specific management group. - * - * @summary The Compliance scores of the specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/Compliances/GetCompliances_example.json - */ -async function getSecurityComplianceDataOverTime(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.compliances.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityComplianceDataOverTime(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsCreateOrUpdateSample.ts deleted file mode 100644 index 57a19ae7e73c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,133 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { ConnectorSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsAssumeRoleConnectorSubscription_example.json - */ -async function awsAssumeRoleCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev2"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - authenticationType: "awsAssumeRole", - awsAssumeRoleArn: "arn:aws:iam::81231569658:role/AscConnector", - awsExternalId: "20ff7fc3-e762-44dd-bd96-b71116dcdc23", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate( - connectorName, - connectorSetting, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateAwsCredConnectorSubscription_example.json - */ -async function awsCredCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - authenticationType: "awsCreds", - awsAccessKeyId: "AKIARPZCNODDNAEQFSOE", - awsSecretAccessKey: "", - }, - hybridComputeSettings: { - autoProvision: "On", - proxyServer: { ip: "167.220.197.140", port: "34" }, - region: "West US 2", - resourceGroupName: "AwsConnectorRG", - servicePrincipal: { - applicationId: "ad9bcd79-be9c-45ab-abd8-80ca1654a7d1", - secret: "", - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate( - connectorName, - connectorSetting, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * - * @summary Create a cloud account connector or update an existing one. Connect to your cloud account. For AWS, use either account credentials or role-based authentication. For GCP, use account organization credentials. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/CreateUpdateGcpCredentialsConnectorSubscription_example.json - */ -async function gcpCredentialsCreateACloudAccountConnectorForASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "gcp_dev"; - const connectorSetting: ConnectorSetting = { - authenticationDetails: { - type: "service_account", - authProviderX509CertUrl: "https://www.googleapis.com/oauth2/v1/certs", - authUri: "https://accounts.google.com/o/oauth2/auth", - authenticationType: "gcpCredentials", - clientEmail: "asc-135@asc-project-1234.iam.gserviceaccount.com", - clientId: "105889053725632919854", - clientX509CertUrl: - "https://www.googleapis.com/robot/v1/metadata/x509/asc-135%40asc-project-1234.iam.gserviceaccount.com", - organizationId: "AscDemoOrg", - privateKey: "******", - privateKeyId: "6efg587hra2568as34d22326b044cc20dc2af", - projectId: "asc-project-1234", - tokenUri: "https://oauth2.googleapis.com/token", - }, - hybridComputeSettings: { autoProvision: "Off" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.createOrUpdate( - connectorName, - connectorSetting, - ); - console.log(result); -} - -async function main(): Promise { - awsAssumeRoleCreateACloudAccountConnectorForASubscription(); - awsCredCreateACloudAccountConnectorForASubscription(); - gcpCredentialsCreateACloudAccountConnectorForASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsDeleteSample.ts deleted file mode 100644 index 49fcdb638d46..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsDeleteSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete a cloud account connector from a subscription - * - * @summary Delete a cloud account connector from a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/DeleteConnectorSubscription_example.json - */ -async function deleteACloudAccountConnectorFromASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.delete(connectorName); - console.log(result); -} - -async function main(): Promise { - deleteACloudAccountConnectorFromASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsGetSample.ts deleted file mode 100644 index 8d6ab71d7982..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of a specific cloud account connector - * - * @summary Details of a specific cloud account connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetConnectorSubscription_example.json - */ -async function detailsOfASpecificCloudAccountConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const connectorName = "aws_dev1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.connectors.get(connectorName); - console.log(result); -} - -async function main(): Promise { - detailsOfASpecificCloudAccountConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsListSample.ts deleted file mode 100644 index 3671dd70d437..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/connectorsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Cloud accounts connectors of a subscription - * - * @summary Cloud accounts connectors of a subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2020-01-01-preview/examples/Connectors/GetListConnectorSubscription_example.json - */ -async function getAllCloudAccountsConnectorsOfASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.connectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllCloudAccountsConnectorsOfASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsCreateSample.ts deleted file mode 100644 index 50a118b7fd9d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsCreateSample.ts +++ /dev/null @@ -1,54 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - CustomAssessmentAutomationRequest, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * - * @summary Creates or updates a custom assessment automation for the provided subscription. Please note that providing an existing custom assessment automation will replace the existing record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationCreate_example.json - */ -async function createACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const customAssessmentAutomationBody: CustomAssessmentAutomationRequest = { - description: "Data should be encrypted", - compressedQuery: - "DQAKAEkAYQBtAF8ARwByAG8AdQBwAA0ACgB8ACAAZQB4AHQAZQBuAGQAIABIAGUAYQBsAHQAaABTAHQAYQB0AHUAcwAgAD0AIABpAGYAZgAoAHQAbwBzAHQAcgBpAG4AZwAoAFIAZQBjAG8AcgBkAC4AVQBzAGUAcgBOAGEAbQBlACkAIABjAG8AbgB0AGEAaQBuAHMAIAAnAHUAcwBlAHIAJwAsACAAJwBVAE4ASABFAEEATABUAEgAWQAnACwAIAAnAEgARQBBAEwAVABIAFkAJwApAA0ACgA=", - displayName: "Password Policy", - remediationDescription: "Encrypt store by...", - severity: "Medium", - supportedCloud: "AWS", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.create( - resourceGroupName, - customAssessmentAutomationName, - customAssessmentAutomationBody, - ); - console.log(result); -} - -async function main(): Promise { - createACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsDeleteSample.ts deleted file mode 100644 index 914ff673a33c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsDeleteSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a custom assessment automation by name for a provided subscription - * - * @summary Deletes a custom assessment automation by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationDelete_example.json - */ -async function deleteACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.delete( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main(): Promise { - deleteACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsGetSample.ts deleted file mode 100644 index a568f160979c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsGetSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a single custom assessment automation by name for the provided subscription and resource group. - * - * @summary Gets a single custom assessment automation by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationGet_example.json - */ -async function getACustomAssessmentAutomation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customAssessmentAutomationName = "MyCustomAssessmentAutomation"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customAssessmentAutomations.get( - resourceGroupName, - customAssessmentAutomationName, - ); - console.log(result); -} - -async function main(): Promise { - getACustomAssessmentAutomation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListByResourceGroupSample.ts deleted file mode 100644 index 36c051e48ba3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListByResourceGroupSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription and resource group - * - * @summary List custom assessment automations by provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListByResourceGroup_example.json - */ -async function listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customAssessmentAutomations.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listCustomAssessmentAutomationsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListBySubscriptionSample.ts deleted file mode 100644 index 2c5f2b9183e9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customAssessmentAutomationsListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List custom assessment automations by provided subscription - * - * @summary List custom assessment automations by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomAssessmentAutomations/customAssessmentAutomationListBySubscription_example.json - */ -async function listCustomAssessmentAutomationsInASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customAssessmentAutomations.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listCustomAssessmentAutomationsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsCreateSample.ts deleted file mode 100644 index 5e3a7a46efaa..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsCreateSample.ts +++ /dev/null @@ -1,51 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - CustomEntityStoreAssignmentRequest, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates a custom entity store assignment for the provided subscription, if not already exists. - * - * @summary Creates a custom entity store assignment for the provided subscription, if not already exists. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentCreate_example.json - */ -async function createACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = - "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const customEntityStoreAssignmentRequestBody: CustomEntityStoreAssignmentRequest = - { - principal: - "aaduser=f3923a3e-ad57-4752-b1a9-fbf3c8e5e082;72f988bf-86f1-41af-91ab-2d7cd011db47", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.create( - resourceGroupName, - customEntityStoreAssignmentName, - customEntityStoreAssignmentRequestBody, - ); - console.log(result); -} - -async function main(): Promise { - createACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsDeleteSample.ts deleted file mode 100644 index 977c4710ce14..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsDeleteSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete a custom entity store assignment by name for a provided subscription - * - * @summary Delete a custom entity store assignment by name for a provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentDelete_example.json - */ -async function deleteACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = - "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.delete( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main(): Promise { - deleteACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsGetSample.ts deleted file mode 100644 index e26e17ea17bf..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a single custom entity store assignment by name for the provided subscription and resource group. - * - * @summary Gets a single custom entity store assignment by name for the provided subscription and resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentGet_example.json - */ -async function getACustomEntityStoreAssignment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const customEntityStoreAssignmentName = - "33e7cc6e-a139-4723-a0e5-76993aee0771"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.customEntityStoreAssignments.get( - resourceGroupName, - customEntityStoreAssignmentName, - ); - console.log(result); -} - -async function main(): Promise { - getACustomEntityStoreAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListByResourceGroupSample.ts deleted file mode 100644 index 1d18fdbaea0c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListByResourceGroupSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List custom entity store assignments by a provided subscription and resource group - * - * @summary List custom entity store assignments by a provided subscription and resource group - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListByResourceGroup_example.json - */ -async function listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "TestResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customEntityStoreAssignments.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listCustomEntityStoreAssignmentsInASubscriptionAndAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListBySubscriptionSample.ts deleted file mode 100644 index 94093896c4e0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/customEntityStoreAssignmentsListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List custom entity store assignments by provided subscription - * - * @summary List custom entity store assignments by provided subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-07-01-preview/examples/CustomEntityStoreAssignments/customEntityStoreAssignmentListBySubscription_example.json - */ -async function listCustomEntityStoreAssignmentsInASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.customEntityStoreAssignments.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listCustomEntityStoreAssignmentsInASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageCreateSample.ts deleted file mode 100644 index ef3c3ce71682..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageCreateSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { DefenderForStorageSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates the Defender for Storage settings on a specified storage account. - * - * @summary Creates or updates the Defender for Storage settings on a specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/PutDefenderForStorageSettings_example.json - */ -async function createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const defenderForStorageSetting: DefenderForStorageSetting = { - capGBPerMonth: -1, - isEnabledPropertiesMalwareScanningOnUploadIsEnabled: true, - overrideSubscriptionLevelSettings: true, - scanResultsEventGridTopicResourceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.EventGrid/topics/sampletopic", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.create( - resourceId, - settingName, - defenderForStorageSetting, - ); - console.log(result); -} - -async function main(): Promise { - createsOrUpdatesTheDefenderForStorageSettingsOnASpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageGetSample.ts deleted file mode 100644 index ae295353442c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/defenderForStorageGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the Defender for Storage settings for the specified storage account. - * - * @summary Gets the Defender for Storage settings for the specified storage account. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-12-01-preview/examples/DefenderForStorage/GetDefenderForStorageSettings_example.json - */ -async function getsTheDefenderForStorageSettingsForTheSpecifiedResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Storage/storageAccounts/samplestorageaccount"; - const settingName = "current"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.defenderForStorage.get(resourceId, settingName); - console.log(result); -} - -async function main(): Promise { - getsTheDefenderForStorageSettingsForTheSpecifiedResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsCreateOrUpdateSample.ts deleted file mode 100644 index 72f1d49506e0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsCreateOrUpdateSample.ts +++ /dev/null @@ -1,106 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { DevOpsConfiguration, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Enabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardCurrentOnly_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardCurrentOnly(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a DevOps Configuration. - * - * @summary Creates or updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/CreateOrUpdateDevOpsConfigurationsOnboardSelected_example.json - */ -async function createOrUpdateDevOpsConfigurationsOnboardSelected(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { - authorization: { code: "00000000000000000000" }, - autoDiscovery: "Disabled", - topLevelInventoryList: ["org1", "org2"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginCreateOrUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateDevOpsConfigurationsOnboardCurrentAndFuture(); - createOrUpdateDevOpsConfigurationsOnboardCurrentOnly(); - createOrUpdateDevOpsConfigurationsOnboardSelected(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsDeleteSample.ts deleted file mode 100644 index 41b125a75139..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a DevOps Connector. - * - * @summary Deletes a DevOps Connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/DeleteDevOpsConfigurations_example.json - */ -async function deleteDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginDeleteAndWait( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - deleteDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsGetSample.ts deleted file mode 100644 index 6839d15e8202..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a DevOps Configuration. - * - * @summary Gets a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsConfigurations_example.json - */ -async function getDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.get( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - getDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsListSample.ts deleted file mode 100644 index a31fb0b42d3f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List DevOps Configurations. - * - * @summary List DevOps Configurations. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListDevOpsConfigurations_example.json - */ -async function listDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.devOpsConfigurations.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsUpdateSample.ts deleted file mode 100644 index 003b740efdad..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsConfigurationsUpdateSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { DevOpsConfiguration, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a DevOps Configuration. - * - * @summary Updates a DevOps Configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/UpdateDevOpsConfigurations_example.json - */ -async function updateDevOpsConfigurations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const devOpsConfiguration: DevOpsConfiguration = { - properties: { autoDiscovery: "Enabled" }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsConfigurations.beginUpdateAndWait( - resourceGroupName, - securityConnectorName, - devOpsConfiguration, - ); - console.log(result); -} - -async function main(): Promise { - updateDevOpsConfigurations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsOperationResultsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsOperationResultsGetSample.ts deleted file mode 100644 index a0870a6b49d1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/devOpsOperationResultsGetSample.ts +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsFailed_example.json - */ -async function getDevOpsOperationResultsFailed(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "8d4caace-e7b3-4b3e-af99-73f76829ebcf"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Get devops long running operation result. - * - * @summary Get devops long running operation result. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetDevOpsOperationResultsSucceeded_example.json - */ -async function getDevOpsOperationResultsSucceeded(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const operationResultId = "4e826cf1-5c36-4808-a7d2-fb4f5170978b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.devOpsOperationResults.get( - resourceGroupName, - securityConnectorName, - operationResultId, - ); - console.log(result); -} - -async function main(): Promise { - getDevOpsOperationResultsFailed(); - getDevOpsOperationResultsSucceeded(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsCreateOrUpdateSample.ts deleted file mode 100644 index 5daabf309297..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsCreateOrUpdateSample.ts +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { DeviceSecurityGroup, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to creates or updates the device security group on a specified IoT Hub resource. - * - * @summary Use this method to creates or updates the device security group on a specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/PutDeviceSecurityGroups_example.json - */ -async function createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const deviceSecurityGroup: DeviceSecurityGroup = { - timeWindowRules: [ - { - isEnabled: true, - maxThreshold: 30, - minThreshold: 0, - ruleType: "ActiveConnectionsNotInAllowedRange", - timeWindowSize: "PT05M", - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.createOrUpdate( - resourceId, - deviceSecurityGroupName, - deviceSecurityGroup, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsDeleteSample.ts deleted file mode 100644 index 74db06c20188..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsDeleteSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to User this method to deletes the device security group. - * - * @summary User this method to deletes the device security group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/DeleteDeviceSecurityGroups_example.json - */ -async function deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.delete( - resourceId, - deviceSecurityGroupName, - ); - console.log(result); -} - -async function main(): Promise { - deleteADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsGetSample.ts deleted file mode 100644 index bd42ff65e065..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsGetSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the device security group for the specified IoT Hub resource. - * - * @summary Use this method to get the device security group for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/GetDeviceSecurityGroups_example.json - */ -async function getADeviceSecurityGroupForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const deviceSecurityGroupName = "samplesecuritygroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.deviceSecurityGroups.get( - resourceId, - deviceSecurityGroupName, - ); - console.log(result); -} - -async function main(): Promise { - getADeviceSecurityGroupForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsListSample.ts deleted file mode 100644 index cd2e7685b740..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/deviceSecurityGroupsListSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method get the list of device security groups for the specified IoT Hub resource. - * - * @summary Use this method get the list of device security groups for the specified IoT Hub resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/DeviceSecurityGroups/ListDeviceSecurityGroups_example.json - */ -async function listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource(): Promise { - const resourceId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/SampleRG/providers/Microsoft.Devices/iotHubs/sampleiothub"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.deviceSecurityGroups.list(resourceId)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllDeviceSecurityGroupsForTheSpecifiedIoTHubResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsGetSample.ts deleted file mode 100644 index ce2b405388da..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a specific discovered Security Solution. - * - * @summary Gets a specific discovered Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionResourceGroupLocation_example.json - */ -async function getDiscoveredSecuritySolutionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const discoveredSecuritySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.discoveredSecuritySolutions.get( - resourceGroupName, - ascLocation, - discoveredSecuritySolutionName, - ); - console.log(result); -} - -async function main(): Promise { - getDiscoveredSecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListByHomeRegionSample.ts deleted file mode 100644 index cd136decafe6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListByHomeRegionSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription and location. - * - * @summary Gets a list of discovered Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscriptionLocation_example.json - */ -async function getDiscoveredSecuritySolutionsFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.discoveredSecuritySolutions.listByHomeRegion( - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getDiscoveredSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListSample.ts deleted file mode 100644 index 1630a7e296b9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/discoveredSecuritySolutionsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of discovered Security Solutions for the subscription. - * - * @summary Gets a list of discovered Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/DiscoveredSecuritySolutions/GetDiscoveredSecuritySolutionsSubscription_example.json - */ -async function getDiscoveredSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.discoveredSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getDiscoveredSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsGetSample.ts deleted file mode 100644 index fe0f4a247a9f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsGetSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a specific external Security Solution. - * - * @summary Gets a specific external Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolution_example.json - */ -async function getExternalSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "defaultresourcegroup-eus"; - const ascLocation = "centralus"; - const externalSecuritySolutionsName = - "aad_defaultworkspace-20ff7fc3-e762-44dd-bd96-b71116dcdc23-eus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.externalSecuritySolutions.get( - resourceGroupName, - ascLocation, - externalSecuritySolutionsName, - ); - console.log(result); -} - -async function main(): Promise { - getExternalSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListByHomeRegionSample.ts deleted file mode 100644 index ebab5c90c668..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListByHomeRegionSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of external Security Solutions for the subscription and location. - * - * @summary Gets a list of external Security Solutions for the subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscriptionLocation_example.json - */ -async function getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.externalSecuritySolutions.listByHomeRegion( - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getExternalSecuritySolutionsOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListSample.ts deleted file mode 100644 index 5ce2ffad0be4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/externalSecuritySolutionsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of external security solutions for the subscription. - * - * @summary Gets a list of external security solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ExternalSecuritySolutions/GetExternalSecuritySolutionsSubscription_example.json - */ -async function getExternalSecuritySolutionsOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.externalSecuritySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getExternalSecuritySolutionsOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/getSensitivitySettingsSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/getSensitivitySettingsSample.ts deleted file mode 100644 index 938382d3dac7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/getSensitivitySettingsSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets data sensitivity settings for sensitive data discovery - * - * @summary Gets data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettings_example.json - */ -async function getSensitivitySettings(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.getSensitivitySettings(); - console.log(result); -} - -async function main(): Promise { - getSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersGetSample.ts deleted file mode 100644 index bdd8121d9e4b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored GitHub owner. - * - * @summary Returns a monitored GitHub owner. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubOwners_example.json - */ -async function getGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.get( - resourceGroupName, - securityConnectorName, - ownerName, - ); - console.log(result); -} - -async function main(): Promise { - getGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListAvailableSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListAvailableSample.ts deleted file mode 100644 index 102d5531b51c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListAvailableSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitHub owners accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitHubOwners_example.json - */ -async function listAvailableGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubOwners.listAvailable( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - listAvailableGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListSample.ts deleted file mode 100644 index e71a2bccc815..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubOwnersListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of GitHub owners onboarded to the connector. - * - * @summary Returns a list of GitHub owners onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubOwners_example.json - */ -async function listGitHubOwners(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitHubOwners.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGitHubOwners(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposGetSample.ts deleted file mode 100644 index ece77e46de5e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposGetSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored GitHub repository. - * - * @summary Returns a monitored GitHub repository. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitHubRepos_example.json - */ -async function getGitHubRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const repoName = "myGitHubRepo"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitHubRepos.get( - resourceGroupName, - securityConnectorName, - ownerName, - repoName, - ); - console.log(result); -} - -async function main(): Promise { - getGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposListSample.ts deleted file mode 100644 index d1f23d91be25..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitHubReposListSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of GitHub repositories onboarded to the connector. - * - * @summary Returns a list of GitHub repositories onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitHubRepos_example.json - */ -async function listGitHubRepos(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const ownerName = "myGitHubOwner"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitHubRepos.list( - resourceGroupName, - securityConnectorName, - ownerName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGitHubRepos(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsGetSample.ts deleted file mode 100644 index f1e2cd4443b2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored GitLab Group resource for a given fully-qualified name. - * - * @summary Returns a monitored GitLab Group resource for a given fully-qualified name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabGroups_example.json - */ -async function getGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.get( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main(): Promise { - getGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListAvailableSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListAvailableSample.ts deleted file mode 100644 index f2a761095859..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListAvailableSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * - * @summary Returns a list of all GitLab groups accessible by the user token consumed by the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListAvailableGitLabGroups_example.json - */ -async function listAvailableGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabGroups.listAvailable( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - listAvailableGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListSample.ts deleted file mode 100644 index 0c96c09be927..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabGroupsListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a list of GitLab groups onboarded to the connector. - * - * @summary Returns a list of GitLab groups onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabGroups_example.json - */ -async function listGitLabGroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitLabGroups.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGitLabGroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsGetSample.ts deleted file mode 100644 index 05109a1729d7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsGetSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * - * @summary Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/GetGitLabProjects_example.json - */ -async function getGitLabProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const projectName = "myGitLabProject"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabProjects.get( - resourceGroupName, - securityConnectorName, - groupFQName, - projectName, - ); - console.log(result); -} - -async function main(): Promise { - getGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsListSample.ts deleted file mode 100644 index 8bdac6fbf294..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabProjectsListSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * - * @summary Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabProjects_example.json - */ -async function listGitLabProjects(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup$mySubGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.gitLabProjects.list( - resourceGroupName, - securityConnectorName, - groupFQName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGitLabProjects(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabSubgroupsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabSubgroupsListSample.ts deleted file mode 100644 index 553be4e1eecd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/gitLabSubgroupsListSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * - * @summary Gets nested subgroups of given GitLab Group which are onboarded to the connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-09-01-preview/examples/SecurityConnectorsDevOps/ListGitLabSubgroups_example.json - */ -async function listGitLabSubgroups(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "0806e1cd-cfda-4ff8-b99c-2b0af42cffd3"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const groupFQName = "myGitLabGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.gitLabSubgroups.list( - resourceGroupName, - securityConnectorName, - groupFQName, - ); - console.log(result); -} - -async function main(): Promise { - listGitLabSubgroups(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsCreateOrUpdateSample.ts deleted file mode 100644 index deb5da252372..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsCreateOrUpdateSample.ts +++ /dev/null @@ -1,59 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { GovernanceAssignment, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a governance assignment on the given subscription. - * - * @summary Creates or updates a governance assignment on the given subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/PutGovernanceAssignment_example.json - */ -async function createGovernanceAssignment(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const governanceAssignment: GovernanceAssignment = { - additionalData: { - ticketLink: "https://snow.com", - ticketNumber: 123123, - ticketStatus: "Active", - }, - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isGracePeriod: true, - owner: "user@contoso.com", - remediationDueDate: new Date("2022-01-07T13:00:00.0000000Z"), - remediationEta: { - eta: new Date("2022-01-08T13:00:00.0000000Z"), - justification: "Justification of ETA", - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.createOrUpdate( - scope, - assessmentName, - assignmentKey, - governanceAssignment, - ); - console.log(result); -} - -async function main(): Promise { - createGovernanceAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsDeleteSample.ts deleted file mode 100644 index bc536579a998..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete a GovernanceAssignment over a given scope - * - * @summary Delete a GovernanceAssignment over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/DeleteGovernanceAssignment_example.json - */ -async function deleteSecurityAssignment(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.delete( - scope, - assessmentName, - assignmentKey, - ); - console.log(result); -} - -async function main(): Promise { - deleteSecurityAssignment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsGetSample.ts deleted file mode 100644 index ae8518d82f15..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a specific governanceAssignment for the requested scope by AssignmentKey - * - * @summary Get a specific governanceAssignment for the requested scope by AssignmentKey - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/GetGovernanceAssignment_example.json - */ -async function getGovernanceAssignmentBySpecificGovernanceAssignmentKey(): Promise { - const scope = - "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd/resourceGroups/compute_servers/providers/Microsoft.Compute/virtualMachines/win2012"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const assignmentKey = "6634ff9f-127b-4bf2-8e6e-b1737f5e789c"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceAssignments.get( - scope, - assessmentName, - assignmentKey, - ); - console.log(result); -} - -async function main(): Promise { - getGovernanceAssignmentBySpecificGovernanceAssignmentKey(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsListSample.ts deleted file mode 100644 index 1d38febf4cbe..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceAssignmentsListSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get governance assignments on all of your resources inside a scope - * - * @summary Get governance assignments on all of your resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceAssignments/ListGovernanceAssignments_example.json - */ -async function listGovernanceAssignments(): Promise { - const scope = "subscriptions/c32e05d9-7207-4e22-bdf4-4f7d9c72e5fd"; - const assessmentName = "6b9421dd-5555-2251-9b3d-2be58e2f82cd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceAssignments.list( - scope, - assessmentName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGovernanceAssignments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesCreateOrUpdateSample.ts deleted file mode 100644 index e1f81aef278b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesCreateOrUpdateSample.ts +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { GovernanceRule, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutManagementGroupGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule for a management group", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Management group rule", - excludedScopes: ["/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"], - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate( - scope, - ruleId, - governanceRule, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutSecurityConnectorGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule on critical GCP recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "GCP Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: true, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate( - scope, - ruleId, - governanceRule, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates or updates a governance rule over a given scope - * - * @summary Creates or updates a governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PutGovernanceRule_example.json - */ -async function createOrUpdateGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const governanceRule: GovernanceRule = { - description: "A rule for critical recommendations", - conditionSets: [ - { - conditions: [ - { - operator: "In", - property: "$.AssessmentKey", - value: - '["b1cd27e0-4ecc-4246-939f-49c426d9d72f", "fe83f80b-073d-4ccf-93d9-6797eb870201"]', - }, - ], - }, - ], - displayName: "Admin's rule", - governanceEmailNotification: { - disableManagerEmailNotification: false, - disableOwnerEmailNotification: false, - }, - isDisabled: false, - isGracePeriod: true, - ownerSource: { type: "Manually", value: "user@contoso.com" }, - remediationTimeframe: "7.00:00:00", - rulePriority: 200, - ruleType: "Integrated", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.createOrUpdate( - scope, - ruleId, - governanceRule, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateGovernanceRuleOverManagementGroupScope(); - createOrUpdateGovernanceRuleOverSecurityConnectorScope(); - createOrUpdateGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesDeleteSample.ts deleted file mode 100644 index dfaaf6509e6b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesDeleteSample.ts +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteManagementGroupGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteSecurityConnectorGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Delete a Governance rule over a given scope - * - * @summary Delete a Governance rule over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/DeleteGovernanceRule_example.json - */ -async function deleteAGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginDeleteAndWait(scope, ruleId); - console.log(result); -} - -async function main(): Promise { - deleteAGovernanceRuleOverManagementGroupScope(); - deleteAGovernanceRuleOverSecurityConnectorScope(); - deleteAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesExecuteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesExecuteSample.ts deleted file mode 100644 index e1d321c5bd60..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesExecuteSample.ts +++ /dev/null @@ -1,76 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostGovernanceRule_example.json - */ -async function executeGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait( - scope, - ruleId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostManagementGroupGovernanceRule_example.json - */ -async function executeGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait( - scope, - ruleId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Execute a governance rule - * - * @summary Execute a governance rule - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/PostSecurityConnectorGovernanceRule_example.json - */ -async function executeGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.beginExecuteAndWait( - scope, - ruleId, - ); - console.log(result); -} - -async function main(): Promise { - executeGovernanceRuleOverSubscriptionScope(); - executeGovernanceRuleOverManagementGroupScope(); - executeGovernanceRuleOverSecurityConnectorScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesGetSample.ts deleted file mode 100644 index f68db5c087ee..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesGetSample.ts +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRule_example.json - */ -async function getAGovernanceRuleOverManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -/** - * This sample demonstrates how to Get a specific governance rule for the requested scope by ruleId - * - * @summary Get a specific governance rule for the requested scope by ruleId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRule_example.json - */ -async function getAGovernanceRuleOverSubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.get(scope, ruleId); - console.log(result); -} - -async function main(): Promise { - getAGovernanceRuleOverManagementGroupScope(); - getAGovernanceRuleOverSecurityConnectorScope(); - getAGovernanceRuleOverSubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesListSample.ts deleted file mode 100644 index e83c4248348d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesListSample.ts +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListByManagementGroupGovernanceRules_example.json - */ -async function listGovernanceRulesByManagementGroupScope(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySecurityConnectorGovernanceRules_example.json - */ -async function listGovernanceRulesBySecurityConnectorScope(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get a list of all relevant governance rules over a scope - * - * @summary Get a list of all relevant governance rules over a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/ListBySubscriptionGovernanceRules_example.json - */ -async function listGovernanceRulesBySubscriptionScope(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.governanceRules.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listGovernanceRulesByManagementGroupScope(); - listGovernanceRulesBySecurityConnectorScope(); - listGovernanceRulesBySubscriptionScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesOperationResultsSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesOperationResultsSample.ts deleted file mode 100644 index f41c3c038c19..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/governanceRulesOperationResultsSample.ts +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetManagementGroupGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverManagementGroup(): Promise { - const scope = "providers/Microsoft.Management/managementGroups/contoso"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults( - scope, - ruleId, - operationId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetSecurityConnectorGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSecurityConnector(): Promise { - const scope = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults( - scope, - ruleId, - operationId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Get governance rules long run operation result for the requested scope by ruleId and operationId - * - * @summary Get governance rules long run operation result for the requested scope by ruleId and operationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-01-01-preview/examples/GovernanceRules/GetGovernanceRuleExecuteStatus_example.json - */ -async function getGovernanceRulesLongRunOperationResultOverSubscription(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ruleId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const operationId = "58b33f4f-c8c7-4b01-99cc-d437db4d40dd"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.governanceRules.operationResults( - scope, - ruleId, - operationId, - ); - console.log(result); -} - -async function main(): Promise { - getGovernanceRulesLongRunOperationResultOverManagementGroup(); - getGovernanceRulesLongRunOperationResultOverSecurityConnector(); - getGovernanceRulesLongRunOperationResultOverSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsGetSample.ts deleted file mode 100644 index f0d40476e85e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get health report of resource - * - * @summary Get health report of resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/GetHealthReports_example.json - */ -async function getHealthReportOfResource(): Promise { - const resourceId = - "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2/resourcegroups/E2E-IBB0WX/providers/Microsoft.Security/securityconnectors/AwsConnectorAllOfferings"; - const healthReportName = "909c629a-bf39-4521-8e4f-10b443a0bc02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.healthReports.get(resourceId, healthReportName); - console.log(result); -} - -async function main(): Promise { - getHealthReportOfResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsListSample.ts deleted file mode 100644 index 9274ce7fe839..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/healthReportsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * - * @summary Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-05-01-preview/examples/HealthReports/ListHealthReports_example.json - */ -async function listHealthReports(): Promise { - const scope = "subscriptions/a1efb6ca-fbc5-4782-9aaa-5c7daded1ce2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.healthReports.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listHealthReports(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesCreateOrUpdateSample.ts deleted file mode 100644 index 621efa938ba2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesCreateOrUpdateSample.ts +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - InformationProtectionPolicy, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/CreateOrUpdateInformationProtectionPolicy_example.json - */ -async function createOrUpdateAnInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const informationProtectionPolicy: InformationProtectionPolicy = { - informationTypes: { - "3bf3549199b841f286d5C1200a7df658": { - custom: true, - displayName: "Custom", - enabled: true, - keywords: [{ canBeNumeric: true, custom: true, pattern: "%custom%" }], - order: 1400, - recommendedLabelId: "7aa516c7-5a53-4857-bc6e-6808c6acd542", - }, - "7fb9419d24734ad88e11B25cc8cf6a07": { - custom: false, - displayName: "Networking", - enabled: true, - keywords: [ - { canBeNumeric: false, custom: true, pattern: "%networking%" }, - ], - order: 100, - recommendedLabelId: "575739d2-3d53-4df0-9042-4c7772d5c7b1", - }, - }, - labels: { - "1345da73Bc5a4a8fB7dd3820eb713da8": { - displayName: "Public", - enabled: true, - order: 100, - }, - "575739d23d534df090424c7772d5c7b1": { - displayName: "Confidential", - enabled: true, - order: 300, - }, - "7aa516c75a534857Bc6e6808c6acd542": { - displayName: "General", - enabled: true, - order: 200, - }, - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.createOrUpdate( - scope, - informationProtectionPolicyName, - informationProtectionPolicy, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateAnInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesGetSample.ts deleted file mode 100644 index da4c803d5a67..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesGetSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetCustomInformationProtectionPolicy_example.json - */ -async function getTheCustomizedInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "custom"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Details of the information protection policy. - * - * @summary Details of the information protection policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/GetEffectiveInformationProtectionPolicy_example.json - */ -async function getTheEffectiveInformationProtectionPolicyForAManagementGroup(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const informationProtectionPolicyName = "effective"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.informationProtectionPolicies.get( - scope, - informationProtectionPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - getTheCustomizedInformationProtectionPolicyForAManagementGroup(); - getTheEffectiveInformationProtectionPolicyForAManagementGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesListSample.ts deleted file mode 100644 index 2b866d36504c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/informationProtectionPoliciesListSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Information protection policies of a specific management group. - * - * @summary Information protection policies of a specific management group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/InformationProtectionPolicies/ListInformationProtectionPolicies_example.json - */ -async function getInformationProtectionPolicies(): Promise { - const scope = - "providers/Microsoft.Management/managementGroups/148059f7-faf3-49a6-ba35-85122112291e"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.informationProtectionPolicies.list(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getInformationProtectionPolicies(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsGetSample.ts deleted file mode 100644 index c9d6ff11adb5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get IoT Security Analytics metrics. - * - * @summary Use this method to get IoT Security Analytics metrics. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalytics.json - */ -async function getSecuritySolutionAnalytics(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.get( - resourceGroupName, - solutionName, - ); - console.log(result); -} - -async function main(): Promise { - getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsListSample.ts deleted file mode 100644 index b6b9fa8b6c29..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionAnalyticsListSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get IoT security Analytics metrics in an array. - * - * @summary Use this method to get IoT security Analytics metrics in an array. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAnalyticsList.json - */ -async function getSecuritySolutionAnalytics(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionAnalytics.list( - resourceGroupName, - solutionName, - ); - console.log(result); -} - -async function main(): Promise { - getSecuritySolutionAnalytics(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionCreateOrUpdateSample.ts deleted file mode 100644 index 0aef02f6a328..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionCreateOrUpdateSample.ts +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { IoTSecuritySolutionModel, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to create or update yours IoT Security solution - * - * @summary Use this method to create or update yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/CreateIoTSecuritySolution.json - */ -async function createOrUpdateAIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const iotSecuritySolutionData: IoTSecuritySolutionModel = { - disabledDataSources: [], - displayName: "Solution Default", - export: [], - iotHubs: [ - "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub", - ], - location: "East Us", - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - status: "Enabled", - tags: {}, - unmaskedIpLoggingStatus: "Enabled", - userDefinedResources: { - query: - 'where type != "microsoft.devices/iothubs" | where name contains "iot"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - workspace: - "/subscriptions/c4930e90-cd72-4aa5-93e9-2d081d129569/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace1", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.createOrUpdate( - resourceGroupName, - solutionName, - iotSecuritySolutionData, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionDeleteSample.ts deleted file mode 100644 index adacabfb112c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to delete yours IoT Security solution - * - * @summary Use this method to delete yours IoT Security solution - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/DeleteIoTSecuritySolution.json - */ -async function deleteAnIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.delete( - resourceGroupName, - solutionName, - ); - console.log(result); -} - -async function main(): Promise { - deleteAnIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionGetSample.ts deleted file mode 100644 index 918bb189fb24..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to User this method to get details of a specific IoT Security solution based on solution name - * - * @summary User this method to get details of a specific IoT Security solution based on solution name - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolution.json - */ -async function getAIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.get( - resourceGroupName, - solutionName, - ); - console.log(result); -} - -async function main(): Promise { - getAIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListByResourceGroupSample.ts deleted file mode 100644 index 9995f17c28da..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListByResourceGroupSample.ts +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - IotSecuritySolutionListByResourceGroupOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByRg.json - */ -async function listIoTSecuritySolutionsByResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list IoT Security solutions organized by resource group. - * - * @summary Use this method to get the list IoT Security solutions organized by resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHubAndRg.json - */ -async function listIoTSecuritySolutionsByResourceGroupAndIoTHub(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyRg"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options: IotSecuritySolutionListByResourceGroupOptionalParams = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listByResourceGroup( - resourceGroupName, - options, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listIoTSecuritySolutionsByResourceGroup(); - listIoTSecuritySolutionsByResourceGroupAndIoTHub(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListBySubscriptionSample.ts deleted file mode 100644 index 2293ee9239fc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionListBySubscriptionSample.ts +++ /dev/null @@ -1,68 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - IotSecuritySolutionListBySubscriptionOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsListByIotHub.json - */ -async function listIoTSecuritySolutionsByIoTHub(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const filter = - 'properties.iotHubs/any(i eq "/subscriptions/075423e9-7d33-4166-8bdf-3920b04e3735/resourceGroups/myRg/providers/Microsoft.Devices/IotHubs/FirstIotHub")'; - const options: IotSecuritySolutionListBySubscriptionOptionalParams = { - filter, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listBySubscription( - options, - )) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Use this method to get the list of IoT Security solutions by subscription. - * - * @summary Use this method to get the list of IoT Security solutions by subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/GetIoTSecuritySolutionsList.json - */ -async function listIoTSecuritySolutionsBySubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolution.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listIoTSecuritySolutionsByIoTHub(); - listIoTSecuritySolutionsBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionUpdateSample.ts deleted file mode 100644 index 85957b491c41..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionUpdateSample.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - UpdateIotSecuritySolutionData, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * - * @summary Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutions/UpdateIoTSecuritySolution.json - */ -async function useThisMethodToUpdateExistingIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const solutionName = "default"; - const updateIotSecuritySolutionData: UpdateIotSecuritySolutionData = { - recommendationsConfiguration: [ - { recommendationType: "IoT_OpenPorts", status: "Disabled" }, - { recommendationType: "IoT_SharedCredentials", status: "Disabled" }, - ], - tags: { foo: "bar" }, - userDefinedResources: { - query: - 'where type != "microsoft.devices/iothubs" | where name contains "v2"', - querySubscriptions: ["075423e9-7d33-4166-8bdf-3920b04e3735"], - }, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolution.update( - resourceGroupName, - solutionName, - updateIotSecuritySolutionData, - ); - console.log(result); -} - -async function main(): Promise { - useThisMethodToUpdateExistingIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts deleted file mode 100644 index 62b08eda0232..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertDismissSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to dismiss an aggregated IoT Security Solution Alert. - * - * @summary Use this method to dismiss an aggregated IoT Security Solution Alert. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/PostIoTSecuritySolutionsSecurityAggregatedAlertDismiss.json - */ -async function dismissAnAggregatedIoTSecuritySolutionAlert(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02/dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.iotSecuritySolutionsAnalyticsAggregatedAlert.dismiss( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main(): Promise { - dismissAnAggregatedIoTSecuritySolutionAlert(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts deleted file mode 100644 index ce5641e3d48e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * - * @summary Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlert.json - */ -async function getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const aggregatedAlertName = "IoT_Bruteforce_Fail/2019-02-02"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsAggregatedAlert.get( - resourceGroupName, - solutionName, - aggregatedAlertName, - ); - console.log(result); -} - -async function main(): Promise { - getTheAggregatedSecurityAnalyticsAlertOfYoursIoTSecuritySolutionThisAggregationIsPerformedByAlertName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts deleted file mode 100644 index b7d295204c02..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsAggregatedAlertListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the aggregated alert list of yours IoT Security solution. - * - * @summary Use this method to get the aggregated alert list of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityAggregatedAlertList.json - */ -async function getTheAggregatedAlertListOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "MyGroup"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolutionsAnalyticsAggregatedAlert.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getTheAggregatedAlertListOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts deleted file mode 100644 index 9617eca18019..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationGetSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * - * @summary Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendation.json - */ -async function getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const aggregatedRecommendationName = "OpenPortsOnDevice"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.iotSecuritySolutionsAnalyticsRecommendation.get( - resourceGroupName, - solutionName, - aggregatedRecommendationName, - ); - console.log(result); -} - -async function main(): Promise { - getTheAggregatedSecurityAnalyticsRecommendationOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationListSample.ts deleted file mode 100644 index c72d4b232155..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/iotSecuritySolutionsAnalyticsRecommendationListSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * - * @summary Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2019-08-01/examples/IoTSecuritySolutionsAnalytics/GetIoTSecuritySolutionsSecurityRecommendationList.json - */ -async function getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "075423e9-7d33-4166-8bdf-3920b04e3735"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "IoTEdgeResources"; - const solutionName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.iotSecuritySolutionsAnalyticsRecommendation.list( - resourceGroupName, - solutionName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getTheListOfAggregatedSecurityAnalyticsRecommendationsOfYoursIoTSecuritySolution(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesCreateOrUpdateSample.ts deleted file mode 100644 index 5c9f457d55c9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesCreateOrUpdateSample.ts +++ /dev/null @@ -1,90 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { JitNetworkAccessPolicy, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Create a policy for protecting resources using Just-in-Time access control - * - * @summary Create a policy for protecting resources using Just-in-Time access control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/CreateJitNetworkAccessPolicy_example.json - */ -async function createJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body: JitNetworkAccessPolicy = { - name: "default", - type: "Microsoft.Security/locations/jitNetworkAccessPolicies", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Security/locations/westeurope/jitNetworkAccessPolicies/default", - kind: "Basic", - location: "westeurope", - provisioningState: "Succeeded", - requests: [ - { - requestor: "barbara@contoso.com", - startTimeUtc: new Date("2018-05-17T08:06:45.5691611Z"), - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "192.127.0.2", - endTimeUtc: new Date("2018-05-17T09:06:45.5691611Z"), - number: 3389, - status: "Initiated", - statusReason: "UserRequested", - }, - ], - }, - ], - }, - ], - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [ - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 22, - protocol: "*", - }, - { - allowedSourceAddressPrefix: "*", - maxRequestAccessDuration: "PT3H", - number: 3389, - protocol: "*", - }, - ], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.createOrUpdate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main(): Promise { - createJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesDeleteSample.ts deleted file mode 100644 index 263f1b5f7bcd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesDeleteSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete a Just-in-Time access control policy. - * - * @summary Delete a Just-in-Time access control policy. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/DeleteJitNetworkAccessPolicy_example.json - */ -async function deleteAJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.delete( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - deleteAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesGetSample.ts deleted file mode 100644 index 8e42bf1fa3ed..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPolicy_example.json - */ -async function getJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.get( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - ); - console.log(result); -} - -async function main(): Promise { - getJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesInitiateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesInitiateSample.ts deleted file mode 100644 index ec9c0bea458b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesInitiateSample.ts +++ /dev/null @@ -1,55 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - JitNetworkAccessPolicyInitiateRequest, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Initiate a JIT access from a specific Just-in-Time policy configuration. - * - * @summary Initiate a JIT access from a specific Just-in-Time policy configuration. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/InitiateJitNetworkAccessPolicy_example.json - */ -async function initiateAnActionOnAJitNetworkAccessPolicy(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const jitNetworkAccessPolicyName = "default"; - const body: JitNetworkAccessPolicyInitiateRequest = { - justification: "testing a new version of the product", - virtualMachines: [ - { - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg1/providers/Microsoft.Compute/virtualMachines/vm1", - ports: [{ allowedSourceAddressPrefix: "192.127.0.2", number: 3389, endTimeUtc: new Date() }], - }, - ], - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.jitNetworkAccessPolicies.initiate( - resourceGroupName, - ascLocation, - jitNetworkAccessPolicyName, - body, - ); - console.log(result); -} - -async function main(): Promise { - initiateAnActionOnAJitNetworkAccessPolicy(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByRegionSample.ts deleted file mode 100644 index 075401dbf3b6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByRegionSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscriptionLocation_example.json - */ -async function getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByRegion( - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getJitNetworkAccessPoliciesOnASubscriptionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts deleted file mode 100644 index 10b90789fa8e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupAndRegionSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroupLocation_example.json - */ -async function getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByResourceGroupAndRegion( - resourceGroupName, - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getJitNetworkAccessPoliciesOnAResourceGroupFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupSample.ts deleted file mode 100644 index d933af26a3a5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListByResourceGroupSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control for the subscription, location - * - * @summary Policies for protecting resources using Just-in-Time access control for the subscription, location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesResourceGroup_example.json - */ -async function getJitNetworkAccessPoliciesOnAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getJitNetworkAccessPoliciesOnAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListSample.ts deleted file mode 100644 index 5b2206e99d1b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/jitNetworkAccessPoliciesListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Policies for protecting resources using Just-in-Time access control. - * - * @summary Policies for protecting resources using Just-in-Time access control. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/JitNetworkAccessPolicies/GetJitNetworkAccessPoliciesSubscription_example.json - */ -async function getJitNetworkAccessPoliciesOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.jitNetworkAccessPolicies.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getJitNetworkAccessPoliciesOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsGetSample.ts deleted file mode 100644 index 2fd523b3361a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details of a specific location - * - * @summary Details of a specific location - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocation_example.json - */ -async function getSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.locations.get(ascLocation); - console.log(result); -} - -async function main(): Promise { - getSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsListSample.ts deleted file mode 100644 index 37a61ecd7aa6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/locationsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * - * @summary The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Locations/GetLocations_example.json - */ -async function getSecurityDataLocations(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.locations.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityDataLocations(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsGetSample.ts deleted file mode 100644 index 6a1ea902e64f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsGetSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to The default configuration or data needed to onboard the machine to MDE - * - * @summary The default configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/GetMdeOnboardings_example.json - */ -async function theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.get(); - console.log(result); -} - -async function main(): Promise { - theDefaultConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsListSample.ts deleted file mode 100644 index cadd28fa6e4c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/mdeOnboardingsListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to The configuration or data needed to onboard the machine to MDE - * - * @summary The configuration or data needed to onboard the machine to MDE - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-10-01-preview/examples/MdeOnboardings/ListMdeOnboardings_example.json - */ -async function theConfigurationOrDataNeededToOnboardTheMachineToMde(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.mdeOnboardings.list(); - console.log(result); -} - -async function main(): Promise { - theConfigurationOrDataNeededToOnboardTheMachineToMde(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsDeleteSample.ts deleted file mode 100644 index d981bacd8cf7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsDeleteSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * - * @summary Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS and ARC MachinesS'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/DeleteResourcePricing_example.json - */ -async function deleteAPricingOnResource(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.delete(scopeId, pricingName); - console.log(result); -} - -async function main(): Promise { - deleteAPricingOnResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsGetSample.ts deleted file mode 100644 index 1e3eadbc20e4..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsGetSample.ts +++ /dev/null @@ -1,115 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetResourcePricingByNameVirtualMachines_example.json - */ -async function getPricingsOnResourceVirtualMachinesPlan(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameCloudPosture_example.json - */ -async function getPricingsOnSubscriptionCloudPosturePlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameContainers_example.json - */ -async function getPricingsOnSubscriptionContainersPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Containers"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameDns_example.json - */ -async function getPricingsOnSubscriptionDnsPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "Dns"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameStorageAccounts_example.json - */ -async function getPricingsOnSubscriptionStorageAccountsPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "StorageAccounts"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -/** - * This sample demonstrates how to Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * - * @summary Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/GetPricingByNameVirtualMachines_example.json - */ -async function getPricingsOnSubscriptionVirtualMachinesPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.get(scopeId, pricingName); - console.log(result); -} - -async function main(): Promise { - getPricingsOnResourceVirtualMachinesPlan(); - getPricingsOnSubscriptionCloudPosturePlan(); - getPricingsOnSubscriptionContainersPlan(); - getPricingsOnSubscriptionDnsPlan(); - getPricingsOnSubscriptionStorageAccountsPlan(); - getPricingsOnSubscriptionVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsListSample.ts deleted file mode 100644 index 2ec9fc2760ed..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsListSample.ts +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListResourcePricings_example.json - */ -async function getPricingsOnResource(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricings_example.json - */ -async function getPricingsOnSubscription(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * - * @summary Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/ListPricingsWithPlanFilter_example.json - */ -async function getPricingsOnSubscriptionWithPlansFilter(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.list(scopeId); - console.log(result); -} - -async function main(): Promise { - getPricingsOnResource(); - getPricingsOnSubscription(); - getPricingsOnSubscriptionWithPlansFilter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsUpdateSample.ts deleted file mode 100644 index 3ff61251150c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/pricingsUpdateSample.ts +++ /dev/null @@ -1,91 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { Pricing, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutResourcePricingByNameVirtualMachines_example.json - */ -async function updatePricingOnResourceExampleForVirtualMachinesPlan(): Promise { - const scopeId = - "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/DEMO/providers/Microsoft.Compute/virtualMachines/VM-1"; - const pricingName = "virtualMachines"; - const pricing: Pricing = { pricingTier: "Standard", subPlan: "P1" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByName_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing: Pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingByNamePartialSuccess_example.json - */ -async function updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const pricing: Pricing = { pricingTier: "Standard" }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -/** - * This sample demonstrates how to Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * - * @summary Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2024-01-01/examples/Pricings/PutPricingVMsByName_example.json - */ -async function updatePricingOnSubscriptionExampleForVirtualMachinesPlan(): Promise { - const scopeId = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "VirtualMachines"; - const pricing: Pricing = { - enforce: "True", - pricingTier: "Standard", - subPlan: "P2", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.pricings.update(scopeId, pricingName, pricing); - console.log(result); -} - -async function main(): Promise { - updatePricingOnResourceExampleForVirtualMachinesPlan(); - updatePricingOnSubscriptionExampleForCloudPosturePlan(); - updatePricingOnSubscriptionExampleForCloudPosturePlanPartialSuccess(); - updatePricingOnSubscriptionExampleForVirtualMachinesPlan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsGetSample.ts deleted file mode 100644 index 9cc5a68a46dc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsGetSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Supported regulatory compliance details and state for selected assessment - * - * @summary Supported regulatory compliance details and state for selected assessment - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessment_example.json - */ -async function getSelectedRegulatoryComplianceAssessmentDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const regulatoryComplianceAssessmentName = - "968548cb-02b3-8cd2-11f8-0cf64ab1a347"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceAssessments.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - regulatoryComplianceAssessmentName, - ); - console.log(result); -} - -async function main(): Promise { - getSelectedRegulatoryComplianceAssessmentDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsListSample.ts deleted file mode 100644 index c408cade50f6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceAssessmentsListSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Details and state of assessments mapped to selected regulatory compliance control - * - * @summary Details and state of assessments mapped to selected regulatory compliance control - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceAssessmentList_example.json - */ -async function getAllAssessmentsMappedToSelectedRegulatoryComplianceControl(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceAssessments.list( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllAssessmentsMappedToSelectedRegulatoryComplianceControl(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsGetSample.ts deleted file mode 100644 index 8c8b5580ab3c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Selected regulatory compliance control details and state - * - * @summary Selected regulatory compliance control details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControl_example.json - */ -async function getSelectedRegulatoryComplianceControlDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const regulatoryComplianceControlName = "1.1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceControls.get( - regulatoryComplianceStandardName, - regulatoryComplianceControlName, - ); - console.log(result); -} - -async function main(): Promise { - getSelectedRegulatoryComplianceControlDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsListSample.ts deleted file mode 100644 index 889767f78a8e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceControlsListSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to All supported regulatory compliance controls details and state for selected standard - * - * @summary All supported regulatory compliance controls details and state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceControlList_example.json - */ -async function getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceControls.list( - regulatoryComplianceStandardName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllRegulatoryComplianceControlsDetailsAndStateForSelectedStandard(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsGetSample.ts deleted file mode 100644 index 6320334e1443..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsGetSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Supported regulatory compliance details state for selected standard - * - * @summary Supported regulatory compliance details state for selected standard - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandard_example.json - */ -async function getSelectedRegulatoryComplianceStandardDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const regulatoryComplianceStandardName = "PCI-DSS-3.2"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.regulatoryComplianceStandards.get( - regulatoryComplianceStandardName, - ); - console.log(result); -} - -async function main(): Promise { - getSelectedRegulatoryComplianceStandardDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsListSample.ts deleted file mode 100644 index de8793cdcfc7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/regulatoryComplianceStandardsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Supported regulatory compliance standards details and state - * - * @summary Supported regulatory compliance standards details and state - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/RegulatoryCompliance/getRegulatoryComplianceStandardList_example.json - */ -async function getAllSupportedRegulatoryComplianceStandardsDetailsAndState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.regulatoryComplianceStandards.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getAllSupportedRegulatoryComplianceStandardsDetailsAndState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListBySubscriptionSample.ts deleted file mode 100644 index e5c7e187b07e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to For a specified subscription, list the available security controls, their assessments, and the max score - * - * @summary For a specified subscription, list the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_subscription_example.json - */ -async function listSecurityControlsDefinitionBySubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControlDefinitions.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityControlsDefinitionBySubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListSample.ts deleted file mode 100644 index 1de9118e6dda..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlDefinitionsListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List the available security controls, their assessments, and the max score - * - * @summary List the available security controls, their assessments, and the max score - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScoreControlDefinitions/ListSecureScoreControlDefinitions_example.json - */ -async function listSecurityControlsDefinition(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.secureScoreControlDefinitions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityControlsDefinition(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListBySecureScoreSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListBySecureScoreSample.ts deleted file mode 100644 index 3d27d7054a1b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListBySecureScoreSample.ts +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - SecureScoreControlsListBySecureScoreOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForName_builtin_example.json - */ -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.listBySecureScore( - secureScoreName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -/** - * This sample demonstrates how to Get all security controls for a specific initiative within a scope - * - * @summary Get all security controls for a specific initiative within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControlsForNameWithExpand_builtin_example.json - */ -async function getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const expand = "definition"; - const options: SecureScoreControlsListBySecureScoreOptionalParams = { - expand, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.listBySecureScore( - secureScoreName, - options, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiative(); - getSecurityControlsAndTheirCurrentScoreForTheSpecifiedInitiativeWithTheExpandParameter(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListSample.ts deleted file mode 100644 index 097abc358e77..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoreControlsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get all security controls within a scope - * - * @summary Get all security controls within a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScoreControls_example.json - */ -async function listAllSecureScoresControls(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScoreControls.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllSecureScoresControls(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresGetSample.ts deleted file mode 100644 index 2eab36abd640..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * - * @summary Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/GetSecureScoresSingle_example.json - */ -async function getSingleSecureScore(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const secureScoreName = "ascScore"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.secureScores.get(secureScoreName); - console.log(result); -} - -async function main(): Promise { - getSingleSecureScore(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresListSample.ts deleted file mode 100644 index 11909acb2273..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/secureScoresListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * - * @summary List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/secureScores/ListSecureScores_example.json - */ -async function listSecureScores(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.secureScores.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecureScores(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationCreateOrUpdateSample.ts deleted file mode 100644 index 8b6a0033238d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationCreateOrUpdateSample.ts +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { Application, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or update a security Application on the given security connector. - * - * @summary Creates or update a security Application on the given security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/PutSecurityConnectorApplication_example.json - */ -async function createApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const application: Application = { - description: "An application on critical GCP recommendations", - conditionSets: [ - { - conditions: [ - { operator: "contains", property: "$.Id", value: "-prod-" }, - ], - }, - ], - displayName: "GCP Admin's application", - sourceResourceType: "Assessments", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.createOrUpdate( - resourceGroupName, - securityConnectorName, - applicationId, - application, - ); - console.log(result); -} - -async function main(): Promise { - createApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationDeleteSample.ts deleted file mode 100644 index 7c0996ce9381..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationDeleteSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete an Application over a given scope - * - * @summary Delete an Application over a given scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/DeleteSecurityConnectorApplication_example.json - */ -async function deleteSecurityApplication(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.delete( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main(): Promise { - deleteSecurityApplication(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationGetSample.ts deleted file mode 100644 index f1cbf7be188b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationGetSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a specific application for the requested scope by applicationId - * - * @summary Get a specific application for the requested scope by applicationId - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/GetSecurityConnectorApplication_example.json - */ -async function getSecurityApplicationsBySpecificApplicationId(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const applicationId = "ad9a8e26-29d9-4829-bb30-e597a58cdbb8"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectorApplication.get( - resourceGroupName, - securityConnectorName, - applicationId, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityApplicationsBySpecificApplicationId(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationsListSample.ts deleted file mode 100644 index 087e92c65d90..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorApplicationsListSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a list of all relevant applications over a security connector level scope - * - * @summary Get a list of all relevant applications over a security connector level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2022-07-01-preview/examples/Applications/ListBySecurityConnectorApplications_example.json - */ -async function listSecurityApplicationsBySecurityConnectorLevelScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "gcpResourceGroup"; - const securityConnectorName = "gcpconnector"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectorApplications.list( - resourceGroupName, - securityConnectorName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityApplicationsBySecurityConnectorLevelScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsCreateOrUpdateSample.ts deleted file mode 100644 index 8f3da6b608c1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityConnector, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * - * @summary Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PutSecurityConnector_example.json - */ -async function createOrUpdateASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector: SecurityConnector = { - environmentData: { environmentType: "AwsAccount", scanInterval: 4 }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.createOrUpdate( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main(): Promise { - createOrUpdateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsDeleteSample.ts deleted file mode 100644 index ce8d5bbca1b7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a security connector. - * - * @summary Deletes a security connector. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/DeleteSecurityConnector_example.json - */ -async function deleteASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const securityConnectorName = "mySecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.delete( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - deleteASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsGetSample.ts deleted file mode 100644 index de5405475e1d..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsGetSample.ts +++ /dev/null @@ -1,41 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Retrieves details of a specific security connector - * - * @summary Retrieves details of a specific security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorSingleResource_example.json - */ -async function retrieveASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.get( - resourceGroupName, - securityConnectorName, - ); - console.log(result); -} - -async function main(): Promise { - retrieveASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListByResourceGroupSample.ts deleted file mode 100644 index 247f021ea00a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListByResourceGroupSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * - * @summary Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsResourceGroup_example.json - */ -async function listAllSecurityConnectorsOfASpecifiedResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectors.listByResourceGroup( - resourceGroupName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllSecurityConnectorsOfASpecifiedResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListSample.ts deleted file mode 100644 index 0bd7065a574f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * - * @summary Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/GetSecurityConnectorsSubscription_example.json - */ -async function listAllSecurityConnectorsOfASpecifiedSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityConnectors.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listAllSecurityConnectorsOfASpecifiedSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsUpdateSample.ts deleted file mode 100644 index f9e5e0e8d033..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityConnectorsUpdateSample.ts +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityConnector, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates a security connector - * - * @summary Updates a security connector - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-10-01-preview/examples/SecurityConnectors/PatchSecurityConnector_example.json - */ -async function updateASecurityConnector(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "a5caac9c-5c04-49af-b3d0-e204f40345d5"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "exampleResourceGroup"; - const securityConnectorName = "exampleSecurityConnectorName"; - const securityConnector: SecurityConnector = { - environmentData: { environmentType: "AwsAccount" }, - environmentName: "AWS", - etag: "etag value (must be supplied for update)", - hierarchyIdentifier: "exampleHierarchyId", - location: "Central US", - offerings: [ - { - nativeCloudConnection: { - cloudRoleArn: "arn:aws:iam::00000000:role/ASCMonitor", - }, - offeringType: "CspmMonitorAws", - }, - ], - tags: {}, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityConnectors.update( - resourceGroupName, - securityConnectorName, - securityConnector, - ); - console.log(result); -} - -async function main(): Promise { - updateASecurityConnector(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsCreateSample.ts deleted file mode 100644 index fe4c22a815c6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsCreateSample.ts +++ /dev/null @@ -1,49 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityContact, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Create security contact configurations for the subscription - * - * @summary Create security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/CreateSecurityContact_example.json - */ -async function createSecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const securityContact: SecurityContact = { - emails: "john@contoso.com;jane@contoso.com", - isEnabled: true, - notificationsByRole: { roles: ["Owner"], state: "On" }, - notificationsSources: [ - { minimalRiskLevel: "Critical", sourceType: "AttackPath" }, - { minimalSeverity: "Medium", sourceType: "Alert" }, - ], - phone: "(214)275-4038", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.create( - securityContactName, - securityContact, - ); - console.log(result); -} - -async function main(): Promise { - createSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsDeleteSample.ts deleted file mode 100644 index 38a887c36ce3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsDeleteSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete security contact configurations for the subscription - * - * @summary Delete security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/DeleteSecurityContact_example.json - */ -async function deletesASecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.delete(securityContactName); - console.log(result); -} - -async function main(): Promise { - deletesASecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsGetSample.ts deleted file mode 100644 index 7fec00a2958e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get Default Security contact configurations for the subscription - * - * @summary Get Default Security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContact_example.json - */ -async function getASecurityContact(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const securityContactName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityContacts.get(securityContactName); - console.log(result); -} - -async function main(): Promise { - getASecurityContact(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsListSample.ts deleted file mode 100644 index ae710bcdc3bd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityContactsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to List all security contact configurations for the subscription - * - * @summary List all security contact configurations for the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-12-01-preview/examples/SecurityContacts/GetSecurityContactsSubscription_example.json - */ -async function listSecurityContactData(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securityContacts.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecurityContactData(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsCreateOrUpdateSample.ts deleted file mode 100644 index f3473f3ef3fd..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsCreateOrUpdateSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates Microsoft Defender for Cloud security operator on the given scope. - * - * @summary Creates Microsoft Defender for Cloud security operator on the given scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/PutSecurityOperatorByName_example.json - */ -async function createASecurityOperatorOnTheGivenScope(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.createOrUpdate( - pricingName, - securityOperatorName, - ); - console.log(result); -} - -async function main(): Promise { - createASecurityOperatorOnTheGivenScope(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsDeleteSample.ts deleted file mode 100644 index 36690af0d859..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete Microsoft Defender for Cloud securityOperator in the subscription. - * - * @summary Delete Microsoft Defender for Cloud securityOperator in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/DeleteSecurityOperatorByName_example.json - */ -async function deleteSecurityOperatorOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.delete( - pricingName, - securityOperatorName, - ); - console.log(result); -} - -async function main(): Promise { - deleteSecurityOperatorOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsGetSample.ts deleted file mode 100644 index 257f681e2646..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a specific security operator for the requested scope. - * - * @summary Get a specific security operator for the requested scope. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/GetSecurityOperatorByName_example.json - */ -async function getASpecificSecurityOperatorByScopeAndSecurityOperatorName(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const securityOperatorName = "DefenderCSPMSecurityOperator"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.get( - pricingName, - securityOperatorName, - ); - console.log(result); -} - -async function main(): Promise { - getASpecificSecurityOperatorByScopeAndSecurityOperatorName(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsListSample.ts deleted file mode 100644 index e3b86ee0b9b0..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securityOperatorsListSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Lists Microsoft Defender for Cloud securityOperators in the subscription. - * - * @summary Lists Microsoft Defender for Cloud securityOperators in the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-01-01-preview/examples/SecurityOperators/ListSecurityOperators_example.json - */ -async function listSecurityOperators(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const pricingName = "CloudPosture"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securityOperators.list(pricingName); - console.log(result); -} - -async function main(): Promise { - listSecurityOperators(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsGetSample.ts deleted file mode 100644 index ae53984bda5e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsGetSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a specific Security Solution. - * - * @summary Gets a specific Security Solution. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsResourceGroupLocation_example.json - */ -async function getASecuritySolutionFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg2"; - const ascLocation = "centralus"; - const securitySolutionName = "paloalto7"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutions.get( - resourceGroupName, - ascLocation, - securitySolutionName, - ); - console.log(result); -} - -async function main(): Promise { - getASecuritySolutionFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsListSample.ts deleted file mode 100644 index 59bac13e9603..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of Security Solutions for the subscription. - * - * @summary Gets a list of Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutions/GetSecuritySolutionsSubscription_example.json - */ -async function getSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.securitySolutions.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListByHomeRegionSample.ts deleted file mode 100644 index bea052cd95b3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListByHomeRegionSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets list of all supported Security Solutions for subscription and location. - * - * @summary Gets list of all supported Security Solutions for subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscriptionLocation_example.json - */ -async function getSecuritySolutionsFromASecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westcentralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.securitySolutionsReferenceDataOperations.listByHomeRegion( - ascLocation, - ); - console.log(result); -} - -async function main(): Promise { - getSecuritySolutionsFromASecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListSample.ts deleted file mode 100644 index d0bd3b9d28d1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/securitySolutionsReferenceDataListSample.ts +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of all supported Security Solutions for the subscription. - * - * @summary Gets a list of all supported Security Solutions for the subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/SecuritySolutionsReferenceData/GetSecuritySolutionsReferenceDataSubscription_example.json - */ -async function getSecuritySolutions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.securitySolutionsReferenceDataOperations.list(); - console.log(result); -} - -async function main(): Promise { - getSecuritySolutions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sensitivitySettingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sensitivitySettingsListSample.ts deleted file mode 100644 index 574f575166b1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sensitivitySettingsListSample.ts +++ /dev/null @@ -1,32 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list with a single sensitivity settings resource - * - * @summary Gets a list with a single sensitivity settings resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/GetSensitivitySettingsList_example.json - */ -async function getSensitivitySettingsList(): Promise { - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sensitivitySettings.list(); - console.log(result); -} - -async function main(): Promise { - getSensitivitySettingsList(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentCreateOrUpdateSample.ts deleted file mode 100644 index 3bd326c4a87c..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentCreateOrUpdateSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * - * @summary Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/CreateServerVulnerabilityAssessments_example.json - */ -async function createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentOperations.createOrUpdate( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - createAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceCreatingTheResourceTheServerWillBeOnboardedToVulnerabilityAssessmentByMicrosoftSecurity(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentDeleteSample.ts deleted file mode 100644 index 175021e9e055..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentDeleteSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Removing server vulnerability assessment from a resource. - * - * @summary Removing server vulnerability assessment from a resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/DeleteServerVulnerabilityAssessments_example.json - */ -async function deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentOperations.beginDeleteAndWait( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - deleteAServerVulnerabilityAssessmentsOnAResourceOnlyDefaultResourceIsSupportedOnceDeletingMicrosoftSecurityWillNotProvideVulnerabilityAssessmentFindingsOnTheResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentGetSample.ts deleted file mode 100644 index 18dac9df8fe7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentGetSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/GetServerVulnerabilityAssessments_example.json - */ -async function getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.serverVulnerabilityAssessmentOperations.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - getAServerVulnerabilityAssessmentsOnboardingStatusOnAResourceCurrentlyMicrosoftSecurityOnlySupportsTheSingleDefaultResource(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentListByExtendedResourceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentListByExtendedResourceSample.ts deleted file mode 100644 index 6451622c258e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentListByExtendedResourceSample.ts +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * - * @summary Gets a list of server vulnerability assessment onboarding statuses on a given resource. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/ServerVulnerabilityAssessments/ListByExtendedResourceServerVulnerabilityAssessments_example.json - */ -async function getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "rg1"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "vm1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentOperations.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - ); - console.log(result); -} - -async function main(): Promise { - getAListOfServerVulnerabilityAssessmentsOnAResourceThoughThisApiReturnsAListCurrentlyMicrosoftSecurityOnlySupportsASingleDefaultTypeOfServerVulnerabilityAssessment(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts deleted file mode 100644 index 32d3090b6cd6..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsCreateOrUpdateSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { AzureServersSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Create or update a server vulnerability assessments setting of the requested kind on the subscription - * - * @summary Create or update a server vulnerability assessments setting of the requested kind on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/PutServerVulnerabilityAssessmentsSetting_example.json - */ -async function setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const serverVulnerabilityAssessmentsSetting: AzureServersSetting = { - kind: "AzureServersSetting", - selectedProvider: "MdeTvm", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentsSettings.createOrUpdate( - settingKind, - serverVulnerabilityAssessmentsSetting, - ); - console.log(result); -} - -async function main(): Promise { - setAServerVulnerabilityAssessmentsSettingOfTheKindSettingKindOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsDeleteSample.ts deleted file mode 100644 index 5e9597da88fc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsDeleteSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Delete the server vulnerability assessments setting of the requested kind from the subscription - * - * @summary Delete the server vulnerability assessments setting of the requested kind from the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/DeleteServerVulnerabilityAssessmentsSetting_example.json - */ -async function deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentsSettings.delete(settingKind); - console.log(result); -} - -async function main(): Promise { - deleteTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindFromTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsGetSample.ts deleted file mode 100644 index 86007a170c4f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsGetSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * - * @summary Get a server vulnerability assessments setting of the requested kind, that is set on the subscription - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/GetServerVulnerabilityAssessmentsSetting_example.json - */ -async function getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingKind = "azureServersSetting"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = - await client.serverVulnerabilityAssessmentsSettings.get(settingKind); - console.log(result); -} - -async function main(): Promise { - getTheServerVulnerabilityAssessmentsSettingOfTheKindSettingKindThatIsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts deleted file mode 100644 index 27ea608bcd3e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/serverVulnerabilityAssessmentsSettingsListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a list of all the server vulnerability assessments settings over a subscription level scope - * - * @summary Get a list of all the server vulnerability assessments settings over a subscription level scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2023-05-01/examples/ServerVulnerabilityAssessmentsSettings/ListServerVulnerabilityAssessmentsSettings_example.json - */ -async function listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.serverVulnerabilityAssessmentsSettings.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listTheServerVulnerabilityAssessmentsSettingsSetOnTheSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsGetSample.ts deleted file mode 100644 index 02e1c31adfc1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Settings of different configurations in Microsoft Defender for Cloud - * - * @summary Settings of different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSetting_example.json - */ -async function getASettingOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.get(settingName); - console.log(result); -} - -async function main(): Promise { - getASettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsListSample.ts deleted file mode 100644 index d076cfa27bc2..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Settings about different configurations in Microsoft Defender for Cloud - * - * @summary Settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/GetSettings_example.json - */ -async function getSettingsOfSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.settings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSettingsOfSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsUpdateSample.ts deleted file mode 100644 index 49d6b973bfcc..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/settingsUpdateSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { DataExportSettings, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to updating settings about different configurations in Microsoft Defender for Cloud - * - * @summary updating settings about different configurations in Microsoft Defender for Cloud - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2022-05-01/examples/Settings/UpdateSetting_example.json - */ -async function updateASettingForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const settingName = "WDATP"; - const setting: DataExportSettings = { - enabled: true, - kind: "DataExportSettings", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.settings.update(settingName, setting); - console.log(result); -} - -async function main(): Promise { - updateASettingForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesGetSample.ts deleted file mode 100644 index 9d699e7bdb30..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesGetSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a single software data of the virtual machine. - * - * @summary Gets a single software data of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/GetSoftware_example.json - */ -async function getsASingleSoftwareDataOfTheVirtualMachine(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const softwareName = "outlook_16.0.10371.20060"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.softwareInventories.get( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - softwareName, - ); - console.log(result); -} - -async function main(): Promise { - getsASingleSoftwareDataOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListByExtendedResourceSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListByExtendedResourceSample.ts deleted file mode 100644 index 1ab384d80602..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListByExtendedResourceSample.ts +++ /dev/null @@ -1,48 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the software inventory of the virtual machine. - * - * @summary Gets the software inventory of the virtual machine. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListByExtendedResourceSoftwareInventories_example.json - */ -async function getsTheSoftwareInventoryOfTheVirtualMachine(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "EITAN-TESTS"; - const resourceNamespace = "Microsoft.Compute"; - const resourceType = "virtualMachines"; - const resourceName = "Eitan-Test1"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.softwareInventories.listByExtendedResource( - resourceGroupName, - resourceNamespace, - resourceType, - resourceName, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getsTheSoftwareInventoryOfTheVirtualMachine(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListBySubscriptionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListBySubscriptionSample.ts deleted file mode 100644 index 45bc8c985708..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/softwareInventoriesListBySubscriptionSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the software inventory of all virtual machines in the subscriptions. - * - * @summary Gets the software inventory of all virtual machines in the subscriptions. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2021-05-01-preview/examples/SoftwareInventories/ListBySubscriptionSoftwareInventories_example.json - */ -async function getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "e5d1b86c-3051-44d5-8802-aa65d45a279b"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.softwareInventories.listBySubscription()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getsTheSoftwareInventoryOfAllVirtualMachinesInTheSubscriptions(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts deleted file mode 100644 index b633a9f88f46..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesAddSample.ts +++ /dev/null @@ -1,81 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - RulesResultsInput, - SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Add.json - */ -async function createABaselineForAllRules(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RulesResultsInput = { - latestScan: false, - results: { - va1234: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - va5678: [["Test", "0.0.0.0", "125.125.125.125"]], - }, - }; - const options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * - * @summary Add a list of baseline rules. Will overwrite any previously existing results (for all rules). - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_AddLatest.json - */ -async function createABaselineForAllRulesUsingTheLatestScanResults(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RulesResultsInput = { latestScan: true, results: {} }; - const options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { - body, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.add( - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main(): Promise { - createABaselineForAllRules(); - createABaselineForAllRulesUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts deleted file mode 100644 index 062d8f65be66..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateSample.ts +++ /dev/null @@ -1,82 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - RuleResultsInput, - SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Put.json - */ -async function createABaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RuleResultsInput = { - latestScan: false, - results: [ - ["userA", "SELECT"], - ["userB", "SELECT"], - ], - }; - const options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = - { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = - await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * - * @summary Creates a Baseline for a rule in a database. Will overwrite any previously existing results. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_PutLatest.json - */ -async function createABaselineUsingTheLatestScanResults(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const body: RuleResultsInput = { latestScan: true, results: [] }; - const options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = - { body }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = - await client.sqlVulnerabilityAssessmentBaselineRules.createOrUpdate( - ruleId, - workspaceId, - resourceId, - options, - ); - console.log(result); -} - -async function main(): Promise { - createABaseline(); - createABaselineUsingTheLatestScanResults(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts deleted file mode 100644 index df936f3dfc13..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesDeleteSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes a rule from the Baseline of a given database. - * - * @summary Deletes a rule from the Baseline of a given database. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Delete.json - */ -async function deleteTheBaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.delete( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - deleteTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts deleted file mode 100644 index 0e34e1eec763..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the results for a given rule in the Baseline. - * - * @summary Gets the results for a given rule in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_Get.json - */ -async function getTheBaseline(): Promise { - const ruleId = "VA1234"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.get( - ruleId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - getTheBaseline(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesListSample.ts deleted file mode 100644 index 4be112cacd1a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentBaselineRulesListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the results for all rules in the Baseline. - * - * @summary Gets the results for all rules in the Baseline. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsBaselineRuleOperations/ArcMachineBaselineRules_List.json - */ -async function listBaselineForAllRules(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentBaselineRules.list( - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - listBaselineForAllRules(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsGetSample.ts deleted file mode 100644 index d5d6b9e0b839..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsGetSample.ts +++ /dev/null @@ -1,66 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_Get.json - */ -async function getScanDetailsOfAScanRecord(): Promise { - const scanId = "Scheduled-20200623"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan results of a single rule in a scan record. - * - * @summary Gets the scan results of a single rule in a scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord(): Promise { - const scanId = "latest"; - const scanResultId = "VA2063"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.get( - scanId, - scanResultId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - getScanDetailsOfAScanRecord(); - getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsListSample.ts deleted file mode 100644 index 618ec87286ae..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScanResultsListSample.ts +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_List.json - */ -async function listScanResults(): Promise { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets a list of scan results for a single scan record. - * - * @summary Gets a list of scan results for a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentsScanResultsOperations/ArcMachineScanResults_ListLatest.json - */ -async function listScanResultsOfTheLatestScan(): Promise { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScanResults.list( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - listScanResults(); - listScanResultsOfTheLatestScan(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansGetSample.ts deleted file mode 100644 index 3a433b6e765e..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansGetSample.ts +++ /dev/null @@ -1,62 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_Get.json - */ -async function getScanDetailsOfAScanRecord(): Promise { - const scanId = "Scheduled-20200623"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -/** - * This sample demonstrates how to Gets the scan details of a single scan record. - * - * @summary Gets the scan details of a single scan record. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_GetLatest.json - */ -async function getScanDetailsOfTheLatestScanRecord(): Promise { - const scanId = "latest"; - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.get( - scanId, - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - getScanDetailsOfAScanRecord(); - getScanDetailsOfTheLatestScanRecord(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansListSample.ts deleted file mode 100644 index bc47d9f37ca5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/sqlVulnerabilityAssessmentScansListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list of scan records. - * - * @summary Gets a list of scan records. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-01-preview/examples/sqlVulnerabilityAssessmentScanOperations/ArcMachineScans_List.json - */ -async function listScanDetails(): Promise { - const workspaceId = "55555555-6666-7777-8888-999999999999"; - const resourceId = - "subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/Rg/providers/Microsoft.HybridCompute/machines/MyMachine/sqlServers/server1/databases/master"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.sqlVulnerabilityAssessmentScans.list( - workspaceId, - resourceId, - ); - console.log(result); -} - -async function main(): Promise { - listScanDetails(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsGetSample.ts deleted file mode 100644 index 41f914338d7f..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsGetSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get a security sub-assessment on your scanned resource - * - * @summary Get a security sub-assessment on your scanned resource - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/GetSubAssessment_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const scope = - "subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/DEMORG/providers/Microsoft.Compute/virtualMachines/vm2"; - const assessmentName = "1195afff-c881-495e-9bc5-1486211ae03f"; - const subAssessmentName = "95f7da9c-a2a4-1322-0758-fcd24ef09b85"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.subAssessments.get( - scope, - assessmentName, - subAssessmentName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListAllSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListAllSample.ts deleted file mode 100644 index 1d9eb758bada..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListAllSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a subscription scope - * - * @summary Get security sub-assessments on all your scanned resources inside a subscription scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubscriptionSubAssessments_example.json - */ -async function listSecuritySubAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.subAssessments.listAll(scope)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListSample.ts deleted file mode 100644 index 9aadac6a0b17..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/subAssessmentsListSample.ts +++ /dev/null @@ -1,37 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Get security sub-assessments on all your scanned resources inside a scope - * - * @summary Get security sub-assessments on all your scanned resources inside a scope - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/SubAssessments/ListSubAssessments_example.json - */ -async function listSecuritySubAssessments(): Promise { - const scope = "subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const assessmentName = "82e20e14-edc5-4373-bfc4-f13121257c37"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const resArray = new Array(); - for await (let item of client.subAssessments.list(scope, assessmentName)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - listSecuritySubAssessments(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetResourceGroupLevelTaskSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetResourceGroupLevelTaskSample.ts deleted file mode 100644 index e004c6681ede..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetResourceGroupLevelTaskSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskResourceGroupLocation_example.json - */ -async function getSecurityRecommendationTaskInAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getResourceGroupLevelTask( - resourceGroupName, - ascLocation, - taskName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityRecommendationTaskInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetSubscriptionLevelTaskSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetSubscriptionLevelTaskSample.ts deleted file mode 100644 index e812dc692ca3..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksGetSubscriptionLevelTaskSample.ts +++ /dev/null @@ -1,40 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTaskSubscriptionLocation_example.json - */ -async function getSecurityRecommendationTaskFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.getSubscriptionLevelTask( - ascLocation, - taskName, - ); - console.log(result); -} - -async function main(): Promise { - getSecurityRecommendationTaskFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByHomeRegionSample.ts deleted file mode 100644 index af0354853ec5..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByHomeRegionSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscriptionLocation_example.json - */ -async function getSecurityRecommendationsTasksFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityRecommendationsTasksFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByResourceGroupSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByResourceGroupSample.ts deleted file mode 100644 index 9be39ce3a623..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListByResourceGroupSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksResourceGroupLocation_example.json - */ -async function getSecurityRecommendationTasksInAResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.listByResourceGroup( - resourceGroupName, - ascLocation, - )) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityRecommendationTasksInAResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListSample.ts deleted file mode 100644 index 53d8f3688344..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/GetTasksSubscription_example.json - */ -async function getSecurityRecommendationsTasks(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.tasks.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getSecurityRecommendationsTasks(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateResourceGroupLevelTaskStateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateResourceGroupLevelTaskStateSample.ts deleted file mode 100644 index 50ccc33395a1..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateResourceGroupLevelTaskStateSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskResourceGroupLocation_example.json - */ -async function changeSecurityRecommendationTaskState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const resourceGroupName = process.env["SECURITY_RESOURCE_GROUP"] || "myRg"; - const ascLocation = "westeurope"; - const taskName = "d55b4dc0-779c-c66c-33e5-d7bce24c4222"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateResourceGroupLevelTaskState( - resourceGroupName, - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main(): Promise { - changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateSubscriptionLevelTaskStateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateSubscriptionLevelTaskStateSample.ts deleted file mode 100644 index 6af70ae89d33..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/tasksUpdateSubscriptionLevelTaskStateSample.ts +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Recommended tasks that will help improve the security of the subscription proactively - * - * @summary Recommended tasks that will help improve the security of the subscription proactively - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2015-06-01-preview/examples/Tasks/UpdateTaskSubscriptionLocation_example.json - */ -async function changeSecurityRecommendationTaskState(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const ascLocation = "westeurope"; - const taskName = "62609ee7-d0a5-8616-9fe4-1df5cca7758d"; - const taskUpdateActionType = "Dismiss"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.tasks.updateSubscriptionLevelTaskState( - ascLocation, - taskName, - taskUpdateActionType, - ); - console.log(result); -} - -async function main(): Promise { - changeSecurityRecommendationTaskState(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyGetSample.ts deleted file mode 100644 index 9bdd844551ea..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyGetSample.ts +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a specific topology component. - * - * @summary Gets a specific topology component. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopology_example.json - */ -async function getTopology(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const resourceGroupName = - process.env["SECURITY_RESOURCE_GROUP"] || "myservers"; - const ascLocation = "centralus"; - const topologyResourceName = "vnets"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.topology.get( - resourceGroupName, - ascLocation, - topologyResourceName, - ); - console.log(result); -} - -async function main(): Promise { - getTopology(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListByHomeRegionSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListByHomeRegionSample.ts deleted file mode 100644 index ba206b62a960..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListByHomeRegionSample.ts +++ /dev/null @@ -1,39 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription and location. - * - * @summary Gets a list that allows to build a topology view of a subscription and location. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscriptionLocation_example.json - */ -async function getTopologyOnASubscriptionFromSecurityDataLocation(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const ascLocation = "centralus"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.topology.listByHomeRegion(ascLocation)) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getTopologyOnASubscriptionFromSecurityDataLocation(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListSample.ts deleted file mode 100644 index 2c0c4223f647..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/topologyListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Gets a list that allows to build a topology view of a subscription. - * - * @summary Gets a list that allows to build a topology view of a subscription. - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/stable/2020-01-01/examples/Topology/GetTopologySubscription_example.json - */ -async function getTopologyOnASubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "3eeab341-f466-499c-a8be-85427e154bad"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.topology.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getTopologyOnASubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/updateSensitivitySettingsSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/updateSensitivitySettingsSample.ts deleted file mode 100644 index 8052b8faf22b..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/updateSensitivitySettingsSample.ts +++ /dev/null @@ -1,44 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { - UpdateSensitivitySettingsRequest, - SecurityCenter, -} from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Updates data sensitivity settings for sensitive data discovery - * - * @summary Updates data sensitivity settings for sensitive data discovery - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2023-02-15-preview/examples/SensitivitySettings/PutSensitivitySettings_example.json - */ -async function updateSensitivitySettings(): Promise { - const sensitivitySettings: UpdateSensitivitySettingsRequest = { - sensitiveInfoTypesIds: [ - "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - "b452f22b-f87d-4f48-8490-ecf0873325b5", - "d59ee8b6-2618-404b-a5e7-aa377cd67543", - ], - sensitivityThresholdLabelId: "f2f8a7a1-28c0-404b-9ab4-30a0a7af18cb", - sensitivityThresholdLabelOrder: 2, - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential); - const result = await client.updateSensitivitySettings(sensitivitySettings); - console.log(result); -} - -async function main(): Promise { - updateSensitivitySettings(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsCreateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsCreateSample.ts deleted file mode 100644 index fa0d3c9f38fa..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsCreateSample.ts +++ /dev/null @@ -1,47 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { WorkspaceSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to creating settings about where we should store your security data and logs - * - * @summary creating settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/CreateWorkspaceSetting_example.json - */ -async function createAWorkspaceSettingDataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting: WorkspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - scope: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.create( - workspaceSettingName, - workspaceSetting, - ); - console.log(result); -} - -async function main(): Promise { - createAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsDeleteSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsDeleteSample.ts deleted file mode 100644 index e25c294ba4f9..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsDeleteSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * - * @summary Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/DeleteWorkspaceSetting_example.json - */ -async function deleteAWorkspaceSettingDataForResourceGroup(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.delete(workspaceSettingName); - console.log(result); -} - -async function main(): Promise { - deleteAWorkspaceSettingDataForResourceGroup(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsGetSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsGetSample.ts deleted file mode 100644 index bb57742d6be7..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsGetSample.ts +++ /dev/null @@ -1,36 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSetting_example.json - */ -async function getAWorkspaceSettingOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.get(workspaceSettingName); - console.log(result); -} - -async function main(): Promise { - getAWorkspaceSettingOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsListSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsListSample.ts deleted file mode 100644 index 71288d51606a..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsListSample.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to 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 - * - * @summary 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 - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/GetWorkspaceSettings_example.json - */ -async function getWorkspaceSettingsOnSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const resArray = new Array(); - for await (let item of client.workspaceSettings.list()) { - resArray.push(item); - } - console.log(resArray); -} - -async function main(): Promise { - getWorkspaceSettingsOnSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsUpdateSample.ts b/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsUpdateSample.ts deleted file mode 100644 index 8b3633964a46..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/src/workspaceSettingsUpdateSample.ts +++ /dev/null @@ -1,46 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -// Copyright (c) Microsoft Corporation. -// Licensed under the MIT License. -import { WorkspaceSetting, SecurityCenter } from "@azure/arm-security"; -import { DefaultAzureCredential } from "@azure/identity"; -import "dotenv/config"; - -/** - * This sample demonstrates how to Settings about where we should store your security data and logs - * - * @summary Settings about where we should store your security data and logs - * x-ms-original-file: specification/security/resource-manager/Microsoft.Security/preview/2017-08-01-preview/examples/WorkspaceSettings/UpdateWorkspaceSetting_example.json - */ -async function updateAWorkspaceSettingDataForSubscription(): Promise { - const subscriptionId = - process.env["SECURITY_SUBSCRIPTION_ID"] || - "20ff7fc3-e762-44dd-bd96-b71116dcdc23"; - const workspaceSettingName = "default"; - const workspaceSetting: WorkspaceSetting = { - name: "default", - type: "Microsoft.Security/workspaceSettings", - id: "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/providers/Microsoft.Security/workspaceSettings/default", - workspaceId: - "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/myRg/providers/Microsoft.OperationalInsights/workspaces/myWorkspace", - }; - const credential = new DefaultAzureCredential(); - const client = new SecurityCenter(credential, subscriptionId); - const result = await client.workspaceSettings.update( - workspaceSettingName, - workspaceSetting, - ); - console.log(result); -} - -async function main(): Promise { - updateAWorkspaceSettingDataForSubscription(); -} - -main().catch(console.error); diff --git a/sdk/security/arm-security/samples/v6-beta/typescript/tsconfig.json b/sdk/security/arm-security/samples/v6-beta/typescript/tsconfig.json deleted file mode 100644 index 984eed535aa8..000000000000 --- a/sdk/security/arm-security/samples/v6-beta/typescript/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "target": "ES2020", - "module": "commonjs", - "moduleResolution": "node", - "resolveJsonModule": true, - "esModuleInterop": true, - "allowSyntheticDefaultImports": true, - "strict": true, - "alwaysStrict": true, - "outDir": "dist", - "rootDir": "src" - }, - "include": [ - "src/**/*.ts" - ] -} diff --git a/sdk/security/arm-security/src/api/advancedThreatProtection/index.ts b/sdk/security/arm-security/src/api/advancedThreatProtection/index.ts new file mode 100644 index 000000000000..4484fb4f7763 --- /dev/null +++ b/sdk/security/arm-security/src/api/advancedThreatProtection/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { create, get } from "./operations.js"; +export type { + AdvancedThreatProtectionCreateOptionalParams, + AdvancedThreatProtectionGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/advancedThreatProtection/operations.ts b/sdk/security/arm-security/src/api/advancedThreatProtection/operations.ts new file mode 100644 index 000000000000..3cc0d349964d --- /dev/null +++ b/sdk/security/arm-security/src/api/advancedThreatProtection/operations.ts @@ -0,0 +1,117 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + AdvancedThreatProtectionSetting, + advancedThreatProtectionSettingSerializer, + advancedThreatProtectionSettingDeserializer, +} from "../../models/atpSettingsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AdvancedThreatProtectionCreateOptionalParams, + AdvancedThreatProtectionGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _createSend( + context: Client, + resourceId: string, + advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, + options: AdvancedThreatProtectionCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}{?api%2Dversion}", + { + resourceId: resourceId, + settingName: "current", + "api%2Dversion": "2019-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: advancedThreatProtectionSettingSerializer(advancedThreatProtectionSetting), + }); +} + +export async function _createDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return advancedThreatProtectionSettingDeserializer(result.body); +} + +/** Creates or updates the Advanced Threat Protection settings on a specified resource. */ +export async function create( + context: Client, + resourceId: string, + advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, + options: AdvancedThreatProtectionCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend(context, resourceId, advancedThreatProtectionSetting, options); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + options: AdvancedThreatProtectionGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/advancedThreatProtectionSettings/{settingName}{?api%2Dversion}", + { + resourceId: resourceId, + settingName: "current", + "api%2Dversion": "2019-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return advancedThreatProtectionSettingDeserializer(result.body); +} + +/** Gets the Advanced Threat Protection settings for the specified resource. */ +export async function get( + context: Client, + resourceId: string, + options: AdvancedThreatProtectionGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/advancedThreatProtection/options.ts b/sdk/security/arm-security/src/api/advancedThreatProtection/options.ts new file mode 100644 index 000000000000..609225f4b0ff --- /dev/null +++ b/sdk/security/arm-security/src/api/advancedThreatProtection/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AdvancedThreatProtectionCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AdvancedThreatProtectionGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/alerts/index.ts b/sdk/security/arm-security/src/api/alerts/index.ts new file mode 100644 index 000000000000..e286a1669f48 --- /dev/null +++ b/sdk/security/arm-security/src/api/alerts/index.ts @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + simulate, + listByResourceGroup, + list, + updateResourceGroupLevelStateToInProgress, + updateResourceGroupLevelStateToActivate, + updateResourceGroupLevelStateToDismiss, + updateResourceGroupLevelStateToResolve, + listResourceGroupLevelByRegion, + getResourceGroupLevel, + updateSubscriptionLevelStateToInProgress, + updateSubscriptionLevelStateToActivate, + updateSubscriptionLevelStateToResolve, + updateSubscriptionLevelStateToDismiss, + listSubscriptionLevelByRegion, + getSubscriptionLevel, +} from "./operations.js"; +export type { + AlertsSimulateOptionalParams, + AlertsListByResourceGroupOptionalParams, + AlertsListOptionalParams, + AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + AlertsListResourceGroupLevelByRegionOptionalParams, + AlertsGetResourceGroupLevelOptionalParams, + AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + AlertsListSubscriptionLevelByRegionOptionalParams, + AlertsGetSubscriptionLevelOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/alerts/operations.ts b/sdk/security/arm-security/src/api/alerts/operations.ts new file mode 100644 index 000000000000..235ffc0ae32e --- /dev/null +++ b/sdk/security/arm-security/src/api/alerts/operations.ts @@ -0,0 +1,830 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + Alert, + alertDeserializer, + _AlertList, + _alertListDeserializer, + AlertSimulatorRequestBody, + alertSimulatorRequestBodySerializer, +} from "../../models/alertsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AlertsSimulateOptionalParams, + AlertsListByResourceGroupOptionalParams, + AlertsListOptionalParams, + AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + AlertsListResourceGroupLevelByRegionOptionalParams, + AlertsGetResourceGroupLevelOptionalParams, + AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + AlertsListSubscriptionLevelByRegionOptionalParams, + AlertsGetSubscriptionLevelOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _simulateSend( + context: Client, + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options: AlertsSimulateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/default/simulate{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + body: alertSimulatorRequestBodySerializer(alertSimulatorRequestBody), + }); +} + +export async function _simulateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Simulate security alerts */ +export function simulate( + context: Client, + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options: AlertsSimulateOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _simulateDeserialize, ["202", "200", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _simulateSend(context, ascLocation, alertSimulatorRequestBody, options), + resourceLocationConfig: "original-uri", + apiVersion: "2022-01-01", + }) as PollerLike, void>; +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: AlertsListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/alerts{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_AlertList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _alertListDeserializer(result.body); +} + +/** List all the alerts that are associated with the resource group */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: AlertsListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01" }, + ); +} + +export function _listSend( + context: Client, + options: AlertsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alerts{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_AlertList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _alertListDeserializer(result.body); +} + +/** List all the alerts that are associated with the subscription */ +export function list( + context: Client, + options: AlertsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01" }, + ); +} + +export function _updateResourceGroupLevelStateToInProgressSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateResourceGroupLevelStateToInProgressDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateResourceGroupLevelStateToInProgress( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateResourceGroupLevelStateToInProgressSend( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ); + return _updateResourceGroupLevelStateToInProgressDeserialize(result); +} + +export function _updateResourceGroupLevelStateToActivateSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateResourceGroupLevelStateToActivateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateResourceGroupLevelStateToActivate( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateResourceGroupLevelStateToActivateSend( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ); + return _updateResourceGroupLevelStateToActivateDeserialize(result); +} + +export function _updateResourceGroupLevelStateToDismissSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateResourceGroupLevelStateToDismissDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateResourceGroupLevelStateToDismiss( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateResourceGroupLevelStateToDismissSend( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ); + return _updateResourceGroupLevelStateToDismissDeserialize(result); +} + +export function _updateResourceGroupLevelStateToResolveSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateResourceGroupLevelStateToResolveDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateResourceGroupLevelStateToResolve( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateResourceGroupLevelStateToResolveSend( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ); + return _updateResourceGroupLevelStateToResolveDeserialize(result); +} + +export function _listResourceGroupLevelByRegionSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: AlertsListResourceGroupLevelByRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listResourceGroupLevelByRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_AlertList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _alertListDeserializer(result.body); +} + +/** List all the alerts that are associated with the resource group that are stored in a specific location */ +export function listResourceGroupLevelByRegion( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: AlertsListResourceGroupLevelByRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listResourceGroupLevelByRegionSend(context, resourceGroupName, ascLocation, options), + _listResourceGroupLevelByRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01" }, + ); +} + +export function _getResourceGroupLevelSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsGetResourceGroupLevelOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getResourceGroupLevelDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return alertDeserializer(result.body); +} + +/** Get an alert that is associated a resource group or a resource in a resource group */ +export async function getResourceGroupLevel( + context: Client, + resourceGroupName: string, + ascLocation: string, + alertName: string, + options: AlertsGetResourceGroupLevelOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getResourceGroupLevelSend( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ); + return _getResourceGroupLevelDeserialize(result); +} + +export function _updateSubscriptionLevelStateToInProgressSend( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/inProgress{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateSubscriptionLevelStateToInProgressDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateSubscriptionLevelStateToInProgress( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSubscriptionLevelStateToInProgressSend( + context, + ascLocation, + alertName, + options, + ); + return _updateSubscriptionLevelStateToInProgressDeserialize(result); +} + +export function _updateSubscriptionLevelStateToActivateSend( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/activate{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateSubscriptionLevelStateToActivateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateSubscriptionLevelStateToActivate( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSubscriptionLevelStateToActivateSend( + context, + ascLocation, + alertName, + options, + ); + return _updateSubscriptionLevelStateToActivateDeserialize(result); +} + +export function _updateSubscriptionLevelStateToResolveSend( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/resolve{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateSubscriptionLevelStateToResolveDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateSubscriptionLevelStateToResolve( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSubscriptionLevelStateToResolveSend( + context, + ascLocation, + alertName, + options, + ); + return _updateSubscriptionLevelStateToResolveDeserialize(result); +} + +export function _updateSubscriptionLevelStateToDismissSend( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}/dismiss{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateSubscriptionLevelStateToDismissDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Update the alert's state */ +export async function updateSubscriptionLevelStateToDismiss( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSubscriptionLevelStateToDismissSend( + context, + ascLocation, + alertName, + options, + ); + return _updateSubscriptionLevelStateToDismissDeserialize(result); +} + +export function _listSubscriptionLevelByRegionSend( + context: Client, + ascLocation: string, + options: AlertsListSubscriptionLevelByRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listSubscriptionLevelByRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_AlertList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _alertListDeserializer(result.body); +} + +/** List all the alerts that are associated with the subscription that are stored in a specific location */ +export function listSubscriptionLevelByRegion( + context: Client, + ascLocation: string, + options: AlertsListSubscriptionLevelByRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSubscriptionLevelByRegionSend(context, ascLocation, options), + _listSubscriptionLevelByRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01" }, + ); +} + +export function _getSubscriptionLevelSend( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsGetSubscriptionLevelOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/alerts/{alertName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + alertName: alertName, + "api%2Dversion": "2022-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getSubscriptionLevelDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return alertDeserializer(result.body); +} + +/** Get an alert that is associated with a subscription */ +export async function getSubscriptionLevel( + context: Client, + ascLocation: string, + alertName: string, + options: AlertsGetSubscriptionLevelOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSubscriptionLevelSend(context, ascLocation, alertName, options); + return _getSubscriptionLevelDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/alerts/options.ts b/sdk/security/arm-security/src/api/alerts/options.ts new file mode 100644 index 000000000000..9a470f4a1c61 --- /dev/null +++ b/sdk/security/arm-security/src/api/alerts/options.ts @@ -0,0 +1,52 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AlertsSimulateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AlertsListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateResourceGroupLevelStateToActivateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateResourceGroupLevelStateToDismissOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateResourceGroupLevelStateToResolveOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsListResourceGroupLevelByRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsGetResourceGroupLevelOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateSubscriptionLevelStateToActivateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateSubscriptionLevelStateToResolveOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsUpdateSubscriptionLevelStateToDismissOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsListSubscriptionLevelByRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsGetSubscriptionLevelOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/alertsSuppressionRules/index.ts b/sdk/security/arm-security/src/api/alertsSuppressionRules/index.ts new file mode 100644 index 000000000000..09961e3cfe06 --- /dev/null +++ b/sdk/security/arm-security/src/api/alertsSuppressionRules/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, update, get } from "./operations.js"; +export type { + AlertsSuppressionRulesListOptionalParams, + AlertsSuppressionRulesDeleteOptionalParams, + AlertsSuppressionRulesUpdateOptionalParams, + AlertsSuppressionRulesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/alertsSuppressionRules/operations.ts b/sdk/security/arm-security/src/api/alertsSuppressionRules/operations.ts new file mode 100644 index 000000000000..3e3c31aecf90 --- /dev/null +++ b/sdk/security/arm-security/src/api/alertsSuppressionRules/operations.ts @@ -0,0 +1,220 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + AlertsSuppressionRule, + alertsSuppressionRuleSerializer, + alertsSuppressionRuleDeserializer, + _AlertsSuppressionRulesList, + _alertsSuppressionRulesListDeserializer, +} from "../../models/alertsSuppressionRulesAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AlertsSuppressionRulesListOptionalParams, + AlertsSuppressionRulesDeleteOptionalParams, + AlertsSuppressionRulesUpdateOptionalParams, + AlertsSuppressionRulesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: AlertsSuppressionRulesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules{?api%2Dversion,AlertType}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2019-01-01-preview", + AlertType: options?.alertType, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_AlertsSuppressionRulesList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _alertsSuppressionRulesListDeserializer(result.body); +} + +/** List of all the dismiss rules for the given subscription */ +export function list( + context: Client, + options: AlertsSuppressionRulesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + alertsSuppressionRuleName: string, + options: AlertsSuppressionRulesDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + alertsSuppressionRuleName: alertsSuppressionRuleName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete dismiss alert rule for this subscription. */ +export async function $delete( + context: Client, + alertsSuppressionRuleName: string, + options: AlertsSuppressionRulesDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, alertsSuppressionRuleName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + alertsSuppressionRuleName: string, + alertsSuppressionRule: AlertsSuppressionRule, + options: AlertsSuppressionRulesUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + alertsSuppressionRuleName: alertsSuppressionRuleName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: alertsSuppressionRuleSerializer(alertsSuppressionRule), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return alertsSuppressionRuleDeserializer(result.body); +} + +/** Update existing rule or create new rule if it doesn't exist */ +export async function update( + context: Client, + alertsSuppressionRuleName: string, + alertsSuppressionRule: AlertsSuppressionRule, + options: AlertsSuppressionRulesUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend( + context, + alertsSuppressionRuleName, + alertsSuppressionRule, + options, + ); + return _updateDeserialize(result); +} + +export function _getSend( + context: Client, + alertsSuppressionRuleName: string, + options: AlertsSuppressionRulesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/alertsSuppressionRules/{alertsSuppressionRuleName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + alertsSuppressionRuleName: alertsSuppressionRuleName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return alertsSuppressionRuleDeserializer(result.body); +} + +/** Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription */ +export async function get( + context: Client, + alertsSuppressionRuleName: string, + options: AlertsSuppressionRulesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, alertsSuppressionRuleName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/alertsSuppressionRules/options.ts b/sdk/security/arm-security/src/api/alertsSuppressionRules/options.ts new file mode 100644 index 000000000000..cfdd025773c6 --- /dev/null +++ b/sdk/security/arm-security/src/api/alertsSuppressionRules/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AlertsSuppressionRulesListOptionalParams extends OperationOptions { + /** Type of the alert to get rules for */ + alertType?: string; +} + +/** Optional parameters. */ +export interface AlertsSuppressionRulesDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsSuppressionRulesUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AlertsSuppressionRulesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/allowedConnections/index.ts b/sdk/security/arm-security/src/api/allowedConnections/index.ts new file mode 100644 index 000000000000..3027e9a47669 --- /dev/null +++ b/sdk/security/arm-security/src/api/allowedConnections/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listByHomeRegion, get } from "./operations.js"; +export type { + AllowedConnectionsListOptionalParams, + AllowedConnectionsListByHomeRegionOptionalParams, + AllowedConnectionsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/allowedConnections/operations.ts b/sdk/security/arm-security/src/api/allowedConnections/operations.ts new file mode 100644 index 000000000000..0829f6160b7f --- /dev/null +++ b/sdk/security/arm-security/src/api/allowedConnections/operations.ts @@ -0,0 +1,179 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + AllowedConnectionsResource, + allowedConnectionsResourceDeserializer, + ConnectionType, + _AllowedConnectionsList, + _allowedConnectionsListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AllowedConnectionsListOptionalParams, + AllowedConnectionsListByHomeRegionOptionalParams, + AllowedConnectionsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: AllowedConnectionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/allowedConnections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_AllowedConnectionsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _allowedConnectionsListDeserializer(result.body); +} + +/** Gets the list of all possible traffic between resources for the subscription */ +export function list( + context: Client, + options: AllowedConnectionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: AllowedConnectionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_AllowedConnectionsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _allowedConnectionsListDeserializer(result.body); +} + +/** Gets the list of all possible traffic between resources for the subscription and location. */ +export function listByHomeRegion( + context: Client, + ascLocation: string, + options: AllowedConnectionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByHomeRegionSend(context, ascLocation, options), + _listByHomeRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + connectionType: ConnectionType, + options: AllowedConnectionsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/allowedConnections/{connectionType}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + connectionType: connectionType, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return allowedConnectionsResourceDeserializer(result.body); +} + +/** Gets the list of all possible traffic between resources for the subscription and location, based on connection type. */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + connectionType: ConnectionType, + options: AllowedConnectionsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, ascLocation, connectionType, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/allowedConnections/options.ts b/sdk/security/arm-security/src/api/allowedConnections/options.ts new file mode 100644 index 000000000000..f6143e57cb1a --- /dev/null +++ b/sdk/security/arm-security/src/api/allowedConnections/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AllowedConnectionsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AllowedConnectionsListByHomeRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AllowedConnectionsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/apiCollections/index.ts b/sdk/security/arm-security/src/api/apiCollections/index.ts new file mode 100644 index 000000000000..b4cee7b3005f --- /dev/null +++ b/sdk/security/arm-security/src/api/apiCollections/index.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + listByResourceGroup, + listBySubscription, + listByAzureApiManagementService, + offboardAzureApiManagementApi, + onboardAzureApiManagementApi, + getByAzureApiManagementService, +} from "./operations.js"; +export type { + APICollectionsListByResourceGroupOptionalParams, + APICollectionsListBySubscriptionOptionalParams, + APICollectionsListByAzureApiManagementServiceOptionalParams, + APICollectionsOffboardAzureApiManagementApiOptionalParams, + APICollectionsOnboardAzureApiManagementApiOptionalParams, + APICollectionsGetByAzureApiManagementServiceOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/apiCollections/operations.ts b/sdk/security/arm-security/src/api/apiCollections/operations.ts new file mode 100644 index 000000000000..6fd2ac02493f --- /dev/null +++ b/sdk/security/arm-security/src/api/apiCollections/operations.ts @@ -0,0 +1,361 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + ApiCollection, + apiCollectionDeserializer, + _ApiCollectionList, + _apiCollectionListDeserializer, +} from "../../models/apiCollectionsAPI/models.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + APICollectionsListByResourceGroupOptionalParams, + APICollectionsListBySubscriptionOptionalParams, + APICollectionsListByAzureApiManagementServiceOptionalParams, + APICollectionsOffboardAzureApiManagementApiOptionalParams, + APICollectionsOnboardAzureApiManagementApiOptionalParams, + APICollectionsGetByAzureApiManagementServiceOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: APICollectionsListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/apiCollections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_ApiCollectionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _apiCollectionListDeserializer(result.body); +} + +/** Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: APICollectionsListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-11-15" }, + ); +} + +export function _listBySubscriptionSend( + context: Client, + options: APICollectionsListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/apiCollections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_ApiCollectionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _apiCollectionListDeserializer(result.body); +} + +/** Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. */ +export function listBySubscription( + context: Client, + options: APICollectionsListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-11-15" }, + ); +} + +export function _listByAzureApiManagementServiceSend( + context: Client, + resourceGroupName: string, + serviceName: string, + options: APICollectionsListByAzureApiManagementServiceOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + serviceName: serviceName, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByAzureApiManagementServiceDeserialize( + result: PathUncheckedResponse, +): Promise<_ApiCollectionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _apiCollectionListDeserializer(result.body); +} + +/** Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ +export function listByAzureApiManagementService( + context: Client, + resourceGroupName: string, + serviceName: string, + options: APICollectionsListByAzureApiManagementServiceOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByAzureApiManagementServiceSend(context, resourceGroupName, serviceName, options), + _listByAzureApiManagementServiceDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-11-15" }, + ); +} + +export function _offboardAzureApiManagementApiSend( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsOffboardAzureApiManagementApiOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + serviceName: serviceName, + apiId: apiId, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _offboardAzureApiManagementApiDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. */ +export async function offboardAzureApiManagementApi( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsOffboardAzureApiManagementApiOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _offboardAzureApiManagementApiSend( + context, + resourceGroupName, + serviceName, + apiId, + options, + ); + return _offboardAzureApiManagementApiDeserialize(result); +} + +export function _onboardAzureApiManagementApiSend( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsOnboardAzureApiManagementApiOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + serviceName: serviceName, + apiId: apiId, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _onboardAzureApiManagementApiDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return apiCollectionDeserializer(result.body); +} + +/** Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ +export function onboardAzureApiManagementApi( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsOnboardAzureApiManagementApiOptionalParams = { requestOptions: {} }, +): PollerLike, ApiCollection> { + return getLongRunningPoller( + context, + _onboardAzureApiManagementApiDeserialize, + ["200", "201", "202"], + { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _onboardAzureApiManagementApiSend(context, resourceGroupName, serviceName, apiId, options), + resourceLocationConfig: "location", + apiVersion: "2023-11-15", + }, + ) as PollerLike, ApiCollection>; +} + +export function _getByAzureApiManagementServiceSend( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsGetByAzureApiManagementServiceOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/providers/Microsoft.Security/apiCollections/{apiId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + serviceName: serviceName, + apiId: apiId, + "api%2Dversion": "2023-11-15", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getByAzureApiManagementServiceDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return apiCollectionDeserializer(result.body); +} + +/** Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ +export async function getByAzureApiManagementService( + context: Client, + resourceGroupName: string, + serviceName: string, + apiId: string, + options: APICollectionsGetByAzureApiManagementServiceOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getByAzureApiManagementServiceSend( + context, + resourceGroupName, + serviceName, + apiId, + options, + ); + return _getByAzureApiManagementServiceDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/apiCollections/options.ts b/sdk/security/arm-security/src/api/apiCollections/options.ts new file mode 100644 index 000000000000..b4b385d56b96 --- /dev/null +++ b/sdk/security/arm-security/src/api/apiCollections/options.ts @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface APICollectionsListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface APICollectionsListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface APICollectionsListByAzureApiManagementServiceOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface APICollectionsOffboardAzureApiManagementApiOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface APICollectionsOnboardAzureApiManagementApiOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface APICollectionsGetByAzureApiManagementServiceOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/application/index.ts b/sdk/security/arm-security/src/api/application/index.ts new file mode 100644 index 000000000000..00360603cd4f --- /dev/null +++ b/sdk/security/arm-security/src/api/application/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { $delete, createOrUpdate, get } from "./operations.js"; +export type { + ApplicationDeleteOptionalParams, + ApplicationCreateOrUpdateOptionalParams, + ApplicationGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/application/operations.ts b/sdk/security/arm-security/src/api/application/operations.ts new file mode 100644 index 000000000000..1a2ec0a89bd5 --- /dev/null +++ b/sdk/security/arm-security/src/api/application/operations.ts @@ -0,0 +1,157 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + Application, + applicationSerializer, + applicationDeserializer, +} from "../../models/applicationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + ApplicationDeleteOptionalParams, + ApplicationCreateOrUpdateOptionalParams, + ApplicationGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _$deleteSend( + context: Client, + applicationId: string, + options: ApplicationDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete an Application over a given scope */ +export async function $delete( + context: Client, + applicationId: string, + options: ApplicationDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, applicationId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + applicationId: string, + application: Application, + options: ApplicationCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: applicationSerializer(application), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return applicationDeserializer(result.body); +} + +/** Creates or update a security application on the given subscription. */ +export async function createOrUpdate( + context: Client, + applicationId: string, + application: Application, + options: ApplicationCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, applicationId, application, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + applicationId: string, + options: ApplicationGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return applicationDeserializer(result.body); +} + +/** Get a specific application for the requested scope by applicationId */ +export async function get( + context: Client, + applicationId: string, + options: ApplicationGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, applicationId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/application/options.ts b/sdk/security/arm-security/src/api/application/options.ts new file mode 100644 index 000000000000..7ae2bcb66b15 --- /dev/null +++ b/sdk/security/arm-security/src/api/application/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ApplicationDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ApplicationCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ApplicationGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/applications/index.ts b/sdk/security/arm-security/src/api/applications/index.ts new file mode 100644 index 000000000000..071424e3234d --- /dev/null +++ b/sdk/security/arm-security/src/api/applications/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list } from "./operations.js"; +export type { ApplicationsListOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/applications/operations.ts b/sdk/security/arm-security/src/api/applications/operations.ts new file mode 100644 index 000000000000..e8dfdf5be07e --- /dev/null +++ b/sdk/security/arm-security/src/api/applications/operations.ts @@ -0,0 +1,68 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + _ApplicationsList, + _applicationsListDeserializer, + Application, +} from "../../models/applicationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { ApplicationsListOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: ApplicationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/applications{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_ApplicationsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _applicationsListDeserializer(result.body); +} + +/** Get a list of all relevant applications over a subscription level scope */ +export function list( + context: Client, + options: ApplicationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-07-01-preview" }, + ); +} diff --git a/sdk/security/arm-security/src/api/applications/options.ts b/sdk/security/arm-security/src/api/applications/options.ts new file mode 100644 index 000000000000..eaccf0bd7115 --- /dev/null +++ b/sdk/security/arm-security/src/api/applications/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ApplicationsListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/assessments/index.ts b/sdk/security/arm-security/src/api/assessments/index.ts new file mode 100644 index 000000000000..13ee2f8c3087 --- /dev/null +++ b/sdk/security/arm-security/src/api/assessments/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + AssessmentsListOptionalParams, + AssessmentsDeleteOptionalParams, + AssessmentsCreateOrUpdateOptionalParams, + AssessmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/assessments/operations.ts b/sdk/security/arm-security/src/api/assessments/operations.ts new file mode 100644 index 000000000000..2c72ffa8e672 --- /dev/null +++ b/sdk/security/arm-security/src/api/assessments/operations.ts @@ -0,0 +1,230 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + SecurityAssessmentResponse, + securityAssessmentResponseDeserializer, + SecurityAssessment, + securityAssessmentSerializer, + _SecurityAssessmentList, + _securityAssessmentListDeserializer, +} from "../../models/assessmentAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AssessmentsListOptionalParams, + AssessmentsDeleteOptionalParams, + AssessmentsCreateOrUpdateOptionalParams, + AssessmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: AssessmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityAssessmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityAssessmentListDeserializer(result.body); +} + +/** Get security assessments on all your scanned resources inside a scope */ +export function list( + context: Client, + scope: string, + options: AssessmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-05-04" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceId: string, + assessmentName: string, + options: AssessmentsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/assessments/{assessmentName}{?api%2Dversion}", + { + resourceId: resourceId, + assessmentName: assessmentName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** 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 */ +export async function $delete( + context: Client, + resourceId: string, + assessmentName: string, + options: AssessmentsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceId, assessmentName, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceId: string, + assessmentName: string, + assessment: SecurityAssessment, + options: AssessmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/assessments/{assessmentName}{?api%2Dversion}", + { + resourceId: resourceId, + assessmentName: assessmentName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityAssessmentSerializer(assessment), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityAssessmentResponseDeserializer(result.body); +} + +/** 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 */ +export async function createOrUpdate( + context: Client, + resourceId: string, + assessmentName: string, + assessment: SecurityAssessment, + options: AssessmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceId, + assessmentName, + assessment, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + assessmentName: string, + options: AssessmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/assessments/{assessmentName}{?api%2Dversion,%24expand}", + { + resourceId: resourceId, + assessmentName: assessmentName, + "api%2Dversion": "2025-05-04", + "%24expand": options?.expand, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityAssessmentResponseDeserializer(result.body); +} + +/** Get a security assessment on your scanned resource */ +export async function get( + context: Client, + resourceId: string, + assessmentName: string, + options: AssessmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, assessmentName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/assessments/options.ts b/sdk/security/arm-security/src/api/assessments/options.ts new file mode 100644 index 000000000000..761540854eba --- /dev/null +++ b/sdk/security/arm-security/src/api/assessments/options.ts @@ -0,0 +1,20 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ExpandEnum } from "../../models/assessmentAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AssessmentsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsGetOptionalParams extends OperationOptions { + /** OData expand. Optional. */ + expand?: ExpandEnum; +} diff --git a/sdk/security/arm-security/src/api/assessmentsMetadata/index.ts b/sdk/security/arm-security/src/api/assessmentsMetadata/index.ts new file mode 100644 index 000000000000..48ed11422d76 --- /dev/null +++ b/sdk/security/arm-security/src/api/assessmentsMetadata/index.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + list, + get, + listBySubscription, + deleteInSubscription, + createInSubscription, + getInSubscription, +} from "./operations.js"; +export type { + AssessmentsMetadataListOptionalParams, + AssessmentsMetadataGetOptionalParams, + AssessmentsMetadataListBySubscriptionOptionalParams, + AssessmentsMetadataDeleteInSubscriptionOptionalParams, + AssessmentsMetadataCreateInSubscriptionOptionalParams, + AssessmentsMetadataGetInSubscriptionOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/assessmentsMetadata/operations.ts b/sdk/security/arm-security/src/api/assessmentsMetadata/operations.ts new file mode 100644 index 000000000000..f2e73fd802dd --- /dev/null +++ b/sdk/security/arm-security/src/api/assessmentsMetadata/operations.ts @@ -0,0 +1,315 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + SecurityAssessmentMetadataResponse, + securityAssessmentMetadataResponseSerializer, + securityAssessmentMetadataResponseDeserializer, + _SecurityAssessmentMetadataResponseList, + _securityAssessmentMetadataResponseListDeserializer, +} from "../../models/assessmentAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AssessmentsMetadataListOptionalParams, + AssessmentsMetadataGetOptionalParams, + AssessmentsMetadataListBySubscriptionOptionalParams, + AssessmentsMetadataDeleteInSubscriptionOptionalParams, + AssessmentsMetadataCreateInSubscriptionOptionalParams, + AssessmentsMetadataGetInSubscriptionOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: AssessmentsMetadataListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/assessmentMetadata{?api%2Dversion}", + { + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityAssessmentMetadataResponseList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityAssessmentMetadataResponseListDeserializer(result.body); +} + +/** Get metadata information on all assessment types */ +export function list( + context: Client, + options: AssessmentsMetadataListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-05-04" }, + ); +} + +export function _getSend( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}{?api%2Dversion}", + { + assessmentMetadataName: assessmentMetadataName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityAssessmentMetadataResponseDeserializer(result.body); +} + +/** Get metadata information on an assessment type */ +export async function get( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, assessmentMetadataName, options); + return _getDeserialize(result); +} + +export function _listBySubscriptionSend( + context: Client, + options: AssessmentsMetadataListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityAssessmentMetadataResponseList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityAssessmentMetadataResponseListDeserializer(result.body); +} + +/** Get metadata information on all assessment types in a specific subscription */ +export function listBySubscription( + context: Client, + options: AssessmentsMetadataListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-05-04" }, + ); +} + +export function _deleteInSubscriptionSend( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataDeleteInSubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + assessmentMetadataName: assessmentMetadataName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _deleteInSubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** 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 */ +export async function deleteInSubscription( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataDeleteInSubscriptionOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _deleteInSubscriptionSend(context, assessmentMetadataName, options); + return _deleteInSubscriptionDeserialize(result); +} + +export function _createInSubscriptionSend( + context: Client, + assessmentMetadataName: string, + assessmentMetadata: SecurityAssessmentMetadataResponse, + options: AssessmentsMetadataCreateInSubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + assessmentMetadataName: assessmentMetadataName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityAssessmentMetadataResponseSerializer(assessmentMetadata), + }); +} + +export async function _createInSubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityAssessmentMetadataResponseDeserializer(result.body); +} + +/** Create metadata information on an assessment type in a specific subscription */ +export async function createInSubscription( + context: Client, + assessmentMetadataName: string, + assessmentMetadata: SecurityAssessmentMetadataResponse, + options: AssessmentsMetadataCreateInSubscriptionOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createInSubscriptionSend( + context, + assessmentMetadataName, + assessmentMetadata, + options, + ); + return _createInSubscriptionDeserialize(result); +} + +export function _getInSubscriptionSend( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataGetInSubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + assessmentMetadataName: assessmentMetadataName, + "api%2Dversion": "2025-05-04", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getInSubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityAssessmentMetadataResponseDeserializer(result.body); +} + +/** Get metadata information on an assessment type in a specific subscription */ +export async function getInSubscription( + context: Client, + assessmentMetadataName: string, + options: AssessmentsMetadataGetInSubscriptionOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getInSubscriptionSend(context, assessmentMetadataName, options); + return _getInSubscriptionDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/assessmentsMetadata/options.ts b/sdk/security/arm-security/src/api/assessmentsMetadata/options.ts new file mode 100644 index 000000000000..c956e7dfd498 --- /dev/null +++ b/sdk/security/arm-security/src/api/assessmentsMetadata/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AssessmentsMetadataListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsMetadataGetOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsMetadataListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsMetadataDeleteInSubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsMetadataCreateInSubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssessmentsMetadataGetInSubscriptionOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/assignments/index.ts b/sdk/security/arm-security/src/api/assignments/index.ts new file mode 100644 index 000000000000..3044addb94e7 --- /dev/null +++ b/sdk/security/arm-security/src/api/assignments/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listBySubscription, list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + AssignmentsListBySubscriptionOptionalParams, + AssignmentsListOptionalParams, + AssignmentsDeleteOptionalParams, + AssignmentsCreateOrUpdateOptionalParams, + AssignmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/assignments/operations.ts b/sdk/security/arm-security/src/api/assignments/operations.ts new file mode 100644 index 000000000000..b77cb3905c81 --- /dev/null +++ b/sdk/security/arm-security/src/api/assignments/operations.ts @@ -0,0 +1,277 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + Assignment, + assignmentSerializer, + assignmentDeserializer, + _AssignmentList, + _assignmentListDeserializer, +} from "../../models/standardsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AssignmentsListBySubscriptionOptionalParams, + AssignmentsListOptionalParams, + AssignmentsDeleteOptionalParams, + AssignmentsCreateOrUpdateOptionalParams, + AssignmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listBySubscriptionSend( + context: Client, + options: AssignmentsListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/assignments{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_AssignmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _assignmentListDeserializer(result.body); +} + +/** Get a list of all relevant standardAssignments over a subscription level scope */ +export function listBySubscription( + context: Client, + options: AssignmentsListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2021-08-01-preview" }, + ); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + options: AssignmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_AssignmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _assignmentListDeserializer(result.body); +} + +/** Get a list of all relevant standardAssignments available for scope */ +export function list( + context: Client, + resourceGroupName: string, + options: AssignmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2021-08-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + assignmentId: string, + options: AssignmentsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + assignmentId: assignmentId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a standard assignment over a given scope */ +export async function $delete( + context: Client, + resourceGroupName: string, + assignmentId: string, + options: AssignmentsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceGroupName, assignmentId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + assignmentId: string, + assignment: Assignment, + options: AssignmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + assignmentId: assignmentId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: assignmentSerializer(assignment), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return assignmentDeserializer(result.body); +} + +/** Create a security assignment on the given scope. Will create/update the required standard assignment. */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + assignmentId: string, + assignment: Assignment, + options: AssignmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + assignmentId, + assignment, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + assignmentId: string, + options: AssignmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/assignments/{assignmentId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + assignmentId: assignmentId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return assignmentDeserializer(result.body); +} + +/** Get a specific standard assignment for the requested scope by resourceId */ +export async function get( + context: Client, + resourceGroupName: string, + assignmentId: string, + options: AssignmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, assignmentId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/assignments/options.ts b/sdk/security/arm-security/src/api/assignments/options.ts new file mode 100644 index 000000000000..65eb83da1927 --- /dev/null +++ b/sdk/security/arm-security/src/api/assignments/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AssignmentsListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssignmentsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssignmentsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssignmentsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AssignmentsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/autoProvisioningSettings/index.ts b/sdk/security/arm-security/src/api/autoProvisioningSettings/index.ts new file mode 100644 index 000000000000..8e7d9126d35d --- /dev/null +++ b/sdk/security/arm-security/src/api/autoProvisioningSettings/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, create, get } from "./operations.js"; +export type { + AutoProvisioningSettingsListOptionalParams, + AutoProvisioningSettingsCreateOptionalParams, + AutoProvisioningSettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/autoProvisioningSettings/operations.ts b/sdk/security/arm-security/src/api/autoProvisioningSettings/operations.ts new file mode 100644 index 000000000000..3101c173ba3b --- /dev/null +++ b/sdk/security/arm-security/src/api/autoProvisioningSettings/operations.ts @@ -0,0 +1,172 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + AutoProvisioningSetting, + autoProvisioningSettingSerializer, + autoProvisioningSettingDeserializer, + _AutoProvisioningSettingList, + _autoProvisioningSettingListDeserializer, +} from "../../models/legacySettingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AutoProvisioningSettingsListOptionalParams, + AutoProvisioningSettingsCreateOptionalParams, + AutoProvisioningSettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: AutoProvisioningSettingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_AutoProvisioningSettingList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _autoProvisioningSettingListDeserializer(result.body); +} + +/** Exposes the auto provisioning settings of the subscriptions */ +export function list( + context: Client, + options: AutoProvisioningSettingsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2017-08-01-preview" }, + ); +} + +export function _createSend( + context: Client, + settingName: string, + setting: AutoProvisioningSetting, + options: AutoProvisioningSettingsCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingName: settingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: autoProvisioningSettingSerializer(setting), + }); +} + +export async function _createDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return autoProvisioningSettingDeserializer(result.body); +} + +/** Details of a specific setting */ +export async function create( + context: Client, + settingName: string, + setting: AutoProvisioningSetting, + options: AutoProvisioningSettingsCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend(context, settingName, setting, options); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + settingName: string, + options: AutoProvisioningSettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/autoProvisioningSettings/{settingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingName: settingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return autoProvisioningSettingDeserializer(result.body); +} + +/** Details of a specific setting */ +export async function get( + context: Client, + settingName: string, + options: AutoProvisioningSettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, settingName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/autoProvisioningSettings/options.ts b/sdk/security/arm-security/src/api/autoProvisioningSettings/options.ts new file mode 100644 index 000000000000..d76ae1a1e0ce --- /dev/null +++ b/sdk/security/arm-security/src/api/autoProvisioningSettings/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AutoProvisioningSettingsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutoProvisioningSettingsCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutoProvisioningSettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/automations/index.ts b/sdk/security/arm-security/src/api/automations/index.ts new file mode 100644 index 000000000000..27f73e42f25b --- /dev/null +++ b/sdk/security/arm-security/src/api/automations/index.ts @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + validate, + list, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "./operations.js"; +export type { + AutomationsValidateOptionalParams, + AutomationsListOptionalParams, + AutomationsListByResourceGroupOptionalParams, + AutomationsDeleteOptionalParams, + AutomationsUpdateOptionalParams, + AutomationsCreateOrUpdateOptionalParams, + AutomationsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/automations/operations.ts b/sdk/security/arm-security/src/api/automations/operations.ts new file mode 100644 index 000000000000..6ba4269cc547 --- /dev/null +++ b/sdk/security/arm-security/src/api/automations/operations.ts @@ -0,0 +1,393 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + Automation, + automationSerializer, + automationDeserializer, + AutomationUpdateModel, + automationUpdateModelSerializer, + _AutomationList, + _automationListDeserializer, + AutomationValidationStatus, + automationValidationStatusDeserializer, +} from "../../models/automationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AutomationsValidateOptionalParams, + AutomationsListOptionalParams, + AutomationsListByResourceGroupOptionalParams, + AutomationsDeleteOptionalParams, + AutomationsUpdateOptionalParams, + AutomationsCreateOrUpdateOptionalParams, + AutomationsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _validateSend( + context: Client, + resourceGroupName: string, + automationName: string, + automation: Automation, + options: AutomationsValidateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}/validate{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + automationName: automationName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: automationSerializer(automation), + }); +} + +export async function _validateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return automationValidationStatusDeserializer(result.body); +} + +/** Validates the security automation model before create or update. Any validation errors are returned to the client. */ +export async function validate( + context: Client, + resourceGroupName: string, + automationName: string, + automation: Automation, + options: AutomationsValidateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _validateSend( + context, + resourceGroupName, + automationName, + automation, + options, + ); + return _validateDeserialize(result); +} + +export function _listSend( + context: Client, + options: AutomationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/automations{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_AutomationList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _automationListDeserializer(result.body); +} + +/** 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. */ +export function list( + context: Client, + options: AutomationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-12-01-preview" }, + ); +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: AutomationsListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_AutomationList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _automationListDeserializer(result.body); +} + +/** 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. */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: AutomationsListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-12-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + automationName: string, + options: AutomationsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + automationName: automationName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes a security automation. */ +export async function $delete( + context: Client, + resourceGroupName: string, + automationName: string, + options: AutomationsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceGroupName, automationName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + automationName: string, + automation: AutomationUpdateModel, + options: AutomationsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + automationName: automationName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: automationUpdateModelSerializer(automation), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return automationDeserializer(result.body); +} + +/** Updates a security automation */ +export async function update( + context: Client, + resourceGroupName: string, + automationName: string, + automation: AutomationUpdateModel, + options: AutomationsUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend(context, resourceGroupName, automationName, automation, options); + return _updateDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + automationName: string, + automation: Automation, + options: AutomationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + automationName: automationName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: automationSerializer(automation), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return automationDeserializer(result.body); +} + +/** 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. */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + automationName: string, + automation: Automation, + options: AutomationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + automationName, + automation, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + automationName: string, + options: AutomationsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/automations/{automationName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + automationName: automationName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return automationDeserializer(result.body); +} + +/** Retrieves information about the model of a security automation. */ +export async function get( + context: Client, + resourceGroupName: string, + automationName: string, + options: AutomationsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, automationName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/automations/options.ts b/sdk/security/arm-security/src/api/automations/options.ts new file mode 100644 index 000000000000..d04b1f706508 --- /dev/null +++ b/sdk/security/arm-security/src/api/automations/options.ts @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AutomationsValidateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AutomationsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/azureDevOpsOrgs/index.ts b/sdk/security/arm-security/src/api/azureDevOpsOrgs/index.ts new file mode 100644 index 000000000000..0368793ce759 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsOrgs/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listAvailable, list, update, createOrUpdate, get } from "./operations.js"; +export type { + AzureDevOpsOrgsListAvailableOptionalParams, + AzureDevOpsOrgsListOptionalParams, + AzureDevOpsOrgsUpdateOptionalParams, + AzureDevOpsOrgsCreateOrUpdateOptionalParams, + AzureDevOpsOrgsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/azureDevOpsOrgs/operations.ts b/sdk/security/arm-security/src/api/azureDevOpsOrgs/operations.ts new file mode 100644 index 000000000000..1f87c6d99215 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsOrgs/operations.ts @@ -0,0 +1,332 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + AzureDevOpsOrg, + azureDevOpsOrgSerializer, + azureDevOpsOrgDeserializer, + AzureDevOpsOrgListResponse, + azureDevOpsOrgListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AzureDevOpsOrgsListAvailableOptionalParams, + AzureDevOpsOrgsListOptionalParams, + AzureDevOpsOrgsUpdateOptionalParams, + AzureDevOpsOrgsCreateOrUpdateOptionalParams, + AzureDevOpsOrgsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listAvailableSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: AzureDevOpsOrgsListAvailableOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableAzureDevOpsOrgs{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listAvailableDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsOrgListResponseDeserializer(result.body); +} + +/** Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. */ +export async function listAvailable( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: AzureDevOpsOrgsListAvailableOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listAvailableSend( + context, + resourceGroupName, + securityConnectorName, + options, + ); + return _listAvailableDeserialize(result); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: AzureDevOpsOrgsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsOrgListResponseDeserializer(result.body); +} + +/** Returns a list of Azure DevOps organizations onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: AzureDevOpsOrgsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options: AzureDevOpsOrgsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsOrgSerializer(azureDevOpsOrg), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsOrgDeserializer(result.body); +} + +/** Updates monitored Azure DevOps organization details. */ +export function update( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options: AzureDevOpsOrgsUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsOrg> { + return getLongRunningPoller(context, _updateDeserialize, ["200", "202", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _updateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsOrg>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options: AzureDevOpsOrgsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsOrgSerializer(azureDevOpsOrg), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsOrgDeserializer(result.body); +} + +/** Creates or updates monitored Azure DevOps organization details. */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options: AzureDevOpsOrgsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsOrg> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsOrg>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options: AzureDevOpsOrgsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsOrgDeserializer(result.body); +} + +/** Returns a monitored Azure DevOps organization resource. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options: AzureDevOpsOrgsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/azureDevOpsOrgs/options.ts b/sdk/security/arm-security/src/api/azureDevOpsOrgs/options.ts new file mode 100644 index 000000000000..dea94ecc83a6 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsOrgs/options.ts @@ -0,0 +1,25 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AzureDevOpsOrgsListAvailableOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AzureDevOpsOrgsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AzureDevOpsOrgsUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsOrgsCreateOrUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsOrgsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/azureDevOpsProjects/index.ts b/sdk/security/arm-security/src/api/azureDevOpsProjects/index.ts new file mode 100644 index 000000000000..280dff3bf595 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsProjects/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, update, createOrUpdate, get } from "./operations.js"; +export type { + AzureDevOpsProjectsListOptionalParams, + AzureDevOpsProjectsUpdateOptionalParams, + AzureDevOpsProjectsCreateOrUpdateOptionalParams, + AzureDevOpsProjectsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/azureDevOpsProjects/operations.ts b/sdk/security/arm-security/src/api/azureDevOpsProjects/operations.ts new file mode 100644 index 000000000000..9506c5ea9cab --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsProjects/operations.ts @@ -0,0 +1,294 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + AzureDevOpsProject, + azureDevOpsProjectSerializer, + azureDevOpsProjectDeserializer, + _AzureDevOpsProjectListResponse, + _azureDevOpsProjectListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AzureDevOpsProjectsListOptionalParams, + AzureDevOpsProjectsUpdateOptionalParams, + AzureDevOpsProjectsCreateOrUpdateOptionalParams, + AzureDevOpsProjectsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options: AzureDevOpsProjectsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_AzureDevOpsProjectListResponse> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _azureDevOpsProjectListResponseDeserializer(result.body); +} + +/** Returns a list of Azure DevOps projects onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options: AzureDevOpsProjectsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, orgName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options: AzureDevOpsProjectsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsProjectSerializer(azureDevOpsProject), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "202", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsProjectDeserializer(result.body); +} + +/** Updates a monitored Azure DevOps project resource. */ +export function update( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options: AzureDevOpsProjectsUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsProject> { + return getLongRunningPoller(context, _updateDeserialize, ["200", "202", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _updateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsProject>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options: AzureDevOpsProjectsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsProjectSerializer(azureDevOpsProject), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsProjectDeserializer(result.body); +} + +/** Creates or updates a monitored Azure DevOps project resource. */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options: AzureDevOpsProjectsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsProject> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsProject>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options: AzureDevOpsProjectsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsProjectDeserializer(result.body); +} + +/** Returns a monitored Azure DevOps project resource. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options: AzureDevOpsProjectsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/azureDevOpsProjects/options.ts b/sdk/security/arm-security/src/api/azureDevOpsProjects/options.ts new file mode 100644 index 000000000000..7a3232d9fe8a --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsProjects/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AzureDevOpsProjectsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AzureDevOpsProjectsUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsProjectsCreateOrUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsProjectsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/azureDevOpsRepos/index.ts b/sdk/security/arm-security/src/api/azureDevOpsRepos/index.ts new file mode 100644 index 000000000000..fbf9a31588e1 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsRepos/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, update, createOrUpdate, get } from "./operations.js"; +export type { + AzureDevOpsReposListOptionalParams, + AzureDevOpsReposUpdateOptionalParams, + AzureDevOpsReposCreateOrUpdateOptionalParams, + AzureDevOpsReposGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/azureDevOpsRepos/operations.ts b/sdk/security/arm-security/src/api/azureDevOpsRepos/operations.ts new file mode 100644 index 000000000000..71de41e46f56 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsRepos/operations.ts @@ -0,0 +1,312 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + AzureDevOpsRepository, + azureDevOpsRepositorySerializer, + azureDevOpsRepositoryDeserializer, + _AzureDevOpsRepositoryListResponse, + _azureDevOpsRepositoryListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + AzureDevOpsReposListOptionalParams, + AzureDevOpsReposUpdateOptionalParams, + AzureDevOpsReposCreateOrUpdateOptionalParams, + AzureDevOpsReposGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options: AzureDevOpsReposListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_AzureDevOpsRepositoryListResponse> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _azureDevOpsRepositoryListResponseDeserializer(result.body); +} + +/** Returns a list of Azure DevOps repositories onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options: AzureDevOpsReposListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => + _listSend(context, resourceGroupName, securityConnectorName, orgName, projectName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options: AzureDevOpsReposUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + repoName: repoName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsRepositorySerializer(azureDevOpsRepository), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "202", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsRepositoryDeserializer(result.body); +} + +/** Updates a monitored Azure DevOps repository resource. */ +export function update( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options: AzureDevOpsReposUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsRepository> { + return getLongRunningPoller(context, _updateDeserialize, ["200", "202", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _updateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsRepository>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options: AzureDevOpsReposCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + repoName: repoName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: azureDevOpsRepositorySerializer(azureDevOpsRepository), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsRepositoryDeserializer(result.body); +} + +/** Creates or updates a monitored Azure DevOps repository resource. */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options: AzureDevOpsReposCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, AzureDevOpsRepository> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, AzureDevOpsRepository>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + options: AzureDevOpsReposGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/azureDevOpsOrgs/{orgName}/projects/{projectName}/repos/{repoName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + orgName: orgName, + projectName: projectName, + repoName: repoName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return azureDevOpsRepositoryDeserializer(result.body); +} + +/** Returns a monitored Azure DevOps repository resource. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + options: AzureDevOpsReposGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/azureDevOpsRepos/options.ts b/sdk/security/arm-security/src/api/azureDevOpsRepos/options.ts new file mode 100644 index 000000000000..35c4039b68f8 --- /dev/null +++ b/sdk/security/arm-security/src/api/azureDevOpsRepos/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface AzureDevOpsReposListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface AzureDevOpsReposUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsReposCreateOrUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface AzureDevOpsReposGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/complianceResults/index.ts b/sdk/security/arm-security/src/api/complianceResults/index.ts new file mode 100644 index 000000000000..c4146c0fbb5c --- /dev/null +++ b/sdk/security/arm-security/src/api/complianceResults/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + ComplianceResultsListOptionalParams, + ComplianceResultsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/complianceResults/operations.ts b/sdk/security/arm-security/src/api/complianceResults/operations.ts new file mode 100644 index 000000000000..2aaab34419d5 --- /dev/null +++ b/sdk/security/arm-security/src/api/complianceResults/operations.ts @@ -0,0 +1,122 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + ComplianceResult, + complianceResultDeserializer, + _ComplianceResultList, + _complianceResultListDeserializer, +} from "../../models/complianceResultsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + ComplianceResultsListOptionalParams, + ComplianceResultsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: ComplianceResultsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/complianceResults{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2017-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_ComplianceResultList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _complianceResultListDeserializer(result.body); +} + +/** Security compliance results in the subscription */ +export function list( + context: Client, + scope: string, + options: ComplianceResultsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2017-08-01" }, + ); +} + +export function _getSend( + context: Client, + resourceId: string, + complianceResultName: string, + options: ComplianceResultsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/complianceResults/{complianceResultName}{?api%2Dversion}", + { + resourceId: resourceId, + complianceResultName: complianceResultName, + "api%2Dversion": "2017-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return complianceResultDeserializer(result.body); +} + +/** Security Compliance Result */ +export async function get( + context: Client, + resourceId: string, + complianceResultName: string, + options: ComplianceResultsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, complianceResultName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/complianceResults/options.ts b/sdk/security/arm-security/src/api/complianceResults/options.ts new file mode 100644 index 000000000000..51de76af0da7 --- /dev/null +++ b/sdk/security/arm-security/src/api/complianceResults/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ComplianceResultsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ComplianceResultsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/compliances/index.ts b/sdk/security/arm-security/src/api/compliances/index.ts new file mode 100644 index 000000000000..559e0fe75e11 --- /dev/null +++ b/sdk/security/arm-security/src/api/compliances/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { CompliancesListOptionalParams, CompliancesGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/compliances/operations.ts b/sdk/security/arm-security/src/api/compliances/operations.ts new file mode 100644 index 000000000000..ddec53d72ca9 --- /dev/null +++ b/sdk/security/arm-security/src/api/compliances/operations.ts @@ -0,0 +1,117 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + Compliance, + complianceDeserializer, + _ComplianceList, + _complianceListDeserializer, +} from "../../models/legacySettingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { CompliancesListOptionalParams, CompliancesGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: CompliancesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/compliances{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_ComplianceList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _complianceListDeserializer(result.body); +} + +/** The Compliance scores of the specific management group. */ +export function list( + context: Client, + scope: string, + options: CompliancesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2017-08-01-preview" }, + ); +} + +export function _getSend( + context: Client, + scope: string, + complianceName: string, + options: CompliancesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/compliances/{complianceName}{?api%2Dversion}", + { + scope: scope, + complianceName: complianceName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return complianceDeserializer(result.body); +} + +/** Details of a specific Compliance. */ +export async function get( + context: Client, + scope: string, + complianceName: string, + options: CompliancesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, complianceName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/compliances/options.ts b/sdk/security/arm-security/src/api/compliances/options.ts new file mode 100644 index 000000000000..660088e15c3b --- /dev/null +++ b/sdk/security/arm-security/src/api/compliances/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface CompliancesListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface CompliancesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/customRecommendations/index.ts b/sdk/security/arm-security/src/api/customRecommendations/index.ts new file mode 100644 index 000000000000..9bb353fa088d --- /dev/null +++ b/sdk/security/arm-security/src/api/customRecommendations/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + CustomRecommendationsListOptionalParams, + CustomRecommendationsDeleteOptionalParams, + CustomRecommendationsCreateOrUpdateOptionalParams, + CustomRecommendationsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/customRecommendations/operations.ts b/sdk/security/arm-security/src/api/customRecommendations/operations.ts new file mode 100644 index 000000000000..960283a4058a --- /dev/null +++ b/sdk/security/arm-security/src/api/customRecommendations/operations.ts @@ -0,0 +1,228 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + CustomRecommendation, + customRecommendationSerializer, + customRecommendationDeserializer, + _CustomRecommendationsList, + _customRecommendationsListDeserializer, +} from "../../models/securityStandardsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + CustomRecommendationsListOptionalParams, + CustomRecommendationsDeleteOptionalParams, + CustomRecommendationsCreateOrUpdateOptionalParams, + CustomRecommendationsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: CustomRecommendationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/customRecommendations{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_CustomRecommendationsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _customRecommendationsListDeserializer(result.body); +} + +/** Get a list of all relevant custom recommendations over a scope */ +export function list( + context: Client, + scope: string, + options: CustomRecommendationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2024-08-01" }, + ); +} + +export function _$deleteSend( + context: Client, + scope: string, + customRecommendationName: string, + options: CustomRecommendationsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}{?api%2Dversion}", + { + scope: scope, + customRecommendationName: customRecommendationName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a custom recommendation over a given scope */ +export async function $delete( + context: Client, + scope: string, + customRecommendationName: string, + options: CustomRecommendationsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, scope, customRecommendationName, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + scope: string, + customRecommendationName: string, + customRecommendationBody: CustomRecommendation, + options: CustomRecommendationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}{?api%2Dversion}", + { + scope: scope, + customRecommendationName: customRecommendationName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: customRecommendationSerializer(customRecommendationBody), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return customRecommendationDeserializer(result.body); +} + +/** Creates or updates a custom recommendation over a given scope */ +export async function createOrUpdate( + context: Client, + scope: string, + customRecommendationName: string, + customRecommendationBody: CustomRecommendation, + options: CustomRecommendationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + scope, + customRecommendationName, + customRecommendationBody, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + scope: string, + customRecommendationName: string, + options: CustomRecommendationsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}{?api%2Dversion}", + { + scope: scope, + customRecommendationName: customRecommendationName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return customRecommendationDeserializer(result.body); +} + +/** Get a specific custom recommendation for the requested scope by customRecommendationName */ +export async function get( + context: Client, + scope: string, + customRecommendationName: string, + options: CustomRecommendationsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, customRecommendationName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/customRecommendations/options.ts b/sdk/security/arm-security/src/api/customRecommendations/options.ts new file mode 100644 index 000000000000..268351d48129 --- /dev/null +++ b/sdk/security/arm-security/src/api/customRecommendations/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface CustomRecommendationsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface CustomRecommendationsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface CustomRecommendationsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface CustomRecommendationsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/defenderForStorage/index.ts b/sdk/security/arm-security/src/api/defenderForStorage/index.ts new file mode 100644 index 000000000000..42a70f53f374 --- /dev/null +++ b/sdk/security/arm-security/src/api/defenderForStorage/index.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + getMalwareScan, + cancelMalwareScan, + startMalwareScan, + list, + create, + get, +} from "./operations.js"; +export type { + DefenderForStorageGetMalwareScanOptionalParams, + DefenderForStorageCancelMalwareScanOptionalParams, + DefenderForStorageStartMalwareScanOptionalParams, + DefenderForStorageListOptionalParams, + DefenderForStorageCreateOptionalParams, + DefenderForStorageGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/defenderForStorage/operations.ts b/sdk/security/arm-security/src/api/defenderForStorage/operations.ts new file mode 100644 index 000000000000..1ba8be3404b0 --- /dev/null +++ b/sdk/security/arm-security/src/api/defenderForStorage/operations.ts @@ -0,0 +1,339 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer, SettingName } from "../../models/common/models.js"; +import { + DefenderForStorageSetting, + defenderForStorageSettingSerializer, + defenderForStorageSettingDeserializer, + _DefenderForStorageSettingList, + _defenderForStorageSettingListDeserializer, + MalwareScan, + malwareScanDeserializer, +} from "../../models/defenderForStorageAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + DefenderForStorageGetMalwareScanOptionalParams, + DefenderForStorageCancelMalwareScanOptionalParams, + DefenderForStorageStartMalwareScanOptionalParams, + DefenderForStorageListOptionalParams, + DefenderForStorageCreateOptionalParams, + DefenderForStorageGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _getMalwareScanSend( + context: Client, + resourceId: string, + settingName: SettingName, + scanId: string, + options: DefenderForStorageGetMalwareScanOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}{?api%2Dversion}", + { + resourceId: resourceId, + settingName: settingName, + scanId: scanId, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getMalwareScanDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return malwareScanDeserializer(result.body); +} + +/** Gets the Defender for Storage malware scan for the specified storage resource. */ +export async function getMalwareScan( + context: Client, + resourceId: string, + settingName: SettingName, + scanId: string, + options: DefenderForStorageGetMalwareScanOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getMalwareScanSend(context, resourceId, settingName, scanId, options); + return _getMalwareScanDeserialize(result); +} + +export function _cancelMalwareScanSend( + context: Client, + resourceId: string, + settingName: SettingName, + scanId: string, + options: DefenderForStorageCancelMalwareScanOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/malwareScans/{scanId}/cancelMalwareScan{?api%2Dversion}", + { + resourceId: resourceId, + settingName: settingName, + scanId: scanId, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _cancelMalwareScanDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return malwareScanDeserializer(result.body); +} + +/** Cancels a Defender for Storage malware scan for the specified storage account. */ +export async function cancelMalwareScan( + context: Client, + resourceId: string, + settingName: SettingName, + scanId: string, + options: DefenderForStorageCancelMalwareScanOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _cancelMalwareScanSend(context, resourceId, settingName, scanId, options); + return _cancelMalwareScanDeserialize(result); +} + +export function _startMalwareScanSend( + context: Client, + resourceId: string, + settingName: SettingName, + options: DefenderForStorageStartMalwareScanOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}/startMalwareScan{?api%2Dversion}", + { + resourceId: resourceId, + settingName: settingName, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _startMalwareScanDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return malwareScanDeserializer(result.body); +} + +/** Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files will be scanned for malware. */ +export async function startMalwareScan( + context: Client, + resourceId: string, + settingName: SettingName, + options: DefenderForStorageStartMalwareScanOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _startMalwareScanSend(context, resourceId, settingName, options); + return _startMalwareScanDeserialize(result); +} + +export function _listSend( + context: Client, + resourceId: string, + options: DefenderForStorageListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings{?api%2Dversion}", + { + resourceId: resourceId, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_DefenderForStorageSettingList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _defenderForStorageSettingListDeserializer(result.body); +} + +/** Lists the Defender for Storage settings for the specified storage account. */ +export function list( + context: Client, + resourceId: string, + options: DefenderForStorageListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceId, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-09-01-preview" }, + ); +} + +export function _createSend( + context: Client, + resourceId: string, + settingName: SettingName, + defenderForStorageSetting: DefenderForStorageSetting, + options: DefenderForStorageCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}{?api%2Dversion}", + { + resourceId: resourceId, + settingName: settingName, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: defenderForStorageSettingSerializer(defenderForStorageSetting), + }); +} + +export async function _createDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return defenderForStorageSettingDeserializer(result.body); +} + +/** Creates or updates the Defender for Storage settings on a specified storage account. */ +export async function create( + context: Client, + resourceId: string, + settingName: SettingName, + defenderForStorageSetting: DefenderForStorageSetting, + options: DefenderForStorageCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend( + context, + resourceId, + settingName, + defenderForStorageSetting, + options, + ); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + settingName: SettingName, + options: DefenderForStorageGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/defenderForStorageSettings/{settingName}{?api%2Dversion}", + { + resourceId: resourceId, + settingName: settingName, + "api%2Dversion": "2025-09-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return defenderForStorageSettingDeserializer(result.body); +} + +/** Gets the Defender for Storage settings for the specified storage account. */ +export async function get( + context: Client, + resourceId: string, + settingName: SettingName, + options: DefenderForStorageGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, settingName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/defenderForStorage/options.ts b/sdk/security/arm-security/src/api/defenderForStorage/options.ts new file mode 100644 index 000000000000..e62eca913019 --- /dev/null +++ b/sdk/security/arm-security/src/api/defenderForStorage/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface DefenderForStorageGetMalwareScanOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DefenderForStorageCancelMalwareScanOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DefenderForStorageStartMalwareScanOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DefenderForStorageListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DefenderForStorageCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DefenderForStorageGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/devOpsConfigurations/index.ts b/sdk/security/arm-security/src/api/devOpsConfigurations/index.ts new file mode 100644 index 000000000000..f0073cf1f053 --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsConfigurations/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, update, createOrUpdate, get } from "./operations.js"; +export type { + DevOpsConfigurationsListOptionalParams, + DevOpsConfigurationsDeleteOptionalParams, + DevOpsConfigurationsUpdateOptionalParams, + DevOpsConfigurationsCreateOrUpdateOptionalParams, + DevOpsConfigurationsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/devOpsConfigurations/operations.ts b/sdk/security/arm-security/src/api/devOpsConfigurations/operations.ts new file mode 100644 index 000000000000..05d2e96dbd18 --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsConfigurations/operations.ts @@ -0,0 +1,307 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + DevOpsConfiguration, + devOpsConfigurationSerializer, + devOpsConfigurationDeserializer, + _DevOpsConfigurationListResponse, + _devOpsConfigurationListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + DevOpsConfigurationsListOptionalParams, + DevOpsConfigurationsDeleteOptionalParams, + DevOpsConfigurationsUpdateOptionalParams, + DevOpsConfigurationsCreateOrUpdateOptionalParams, + DevOpsConfigurationsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_DevOpsConfigurationListResponse> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _devOpsConfigurationListResponseDeserializer(result.body); +} + +/** List DevOps Configurations. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes a DevOps Connector. */ +export function $delete( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["200", "202", "204"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _$deleteSend(context, resourceGroupName, securityConnectorName, options), + resourceLocationConfig: "location", + apiVersion: "2025-11-01-preview", + }) as PollerLike, void>; +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options: DevOpsConfigurationsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: devOpsConfigurationSerializer(devOpsConfiguration), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "202", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return devOpsConfigurationDeserializer(result.body); +} + +/** Updates a DevOps Configuration. */ +export function update( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options: DevOpsConfigurationsUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, DevOpsConfiguration> { + return getLongRunningPoller(context, _updateDeserialize, ["200", "202", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _updateSend(context, resourceGroupName, securityConnectorName, devOpsConfiguration, options), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, DevOpsConfiguration>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options: DevOpsConfigurationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: devOpsConfigurationSerializer(devOpsConfiguration), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return devOpsConfigurationDeserializer(result.body); +} + +/** Creates or updates a DevOps Configuration. */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options: DevOpsConfigurationsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, DevOpsConfiguration> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, DevOpsConfiguration>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return devOpsConfigurationDeserializer(result.body); +} + +/** Gets a DevOps Configuration. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: DevOpsConfigurationsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, securityConnectorName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/devOpsConfigurations/options.ts b/sdk/security/arm-security/src/api/devOpsConfigurations/options.ts new file mode 100644 index 000000000000..590c606e445f --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsConfigurations/options.ts @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface DevOpsConfigurationsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DevOpsConfigurationsDeleteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface DevOpsConfigurationsUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface DevOpsConfigurationsCreateOrUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface DevOpsConfigurationsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/devOpsOperationResults/index.ts b/sdk/security/arm-security/src/api/devOpsOperationResults/index.ts new file mode 100644 index 000000000000..c62bc603fa41 --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsOperationResults/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { get } from "./operations.js"; +export type { DevOpsOperationResultsGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/devOpsOperationResults/operations.ts b/sdk/security/arm-security/src/api/devOpsOperationResults/operations.ts new file mode 100644 index 000000000000..aac6519cf884 --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsOperationResults/operations.ts @@ -0,0 +1,75 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + OperationStatusResult, + operationStatusResultDeserializer, +} from "../../models/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { DevOpsOperationResultsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + operationResultId: string, + options: DevOpsOperationResultsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/operationResults/{operationResultId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + operationResultId: operationResultId, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return operationStatusResultDeserializer(result.body); +} + +/** Get devops long running operation result. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + operationResultId: string, + options: DevOpsOperationResultsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + operationResultId, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/devOpsOperationResults/options.ts b/sdk/security/arm-security/src/api/devOpsOperationResults/options.ts new file mode 100644 index 000000000000..5257d639afc7 --- /dev/null +++ b/sdk/security/arm-security/src/api/devOpsOperationResults/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface DevOpsOperationResultsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/deviceSecurityGroups/index.ts b/sdk/security/arm-security/src/api/deviceSecurityGroups/index.ts new file mode 100644 index 000000000000..e35b61acf0eb --- /dev/null +++ b/sdk/security/arm-security/src/api/deviceSecurityGroups/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + DeviceSecurityGroupsListOptionalParams, + DeviceSecurityGroupsDeleteOptionalParams, + DeviceSecurityGroupsCreateOrUpdateOptionalParams, + DeviceSecurityGroupsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/deviceSecurityGroups/operations.ts b/sdk/security/arm-security/src/api/deviceSecurityGroups/operations.ts new file mode 100644 index 000000000000..14c2e36f64b3 --- /dev/null +++ b/sdk/security/arm-security/src/api/deviceSecurityGroups/operations.ts @@ -0,0 +1,226 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + DeviceSecurityGroup, + deviceSecurityGroupSerializer, + deviceSecurityGroupDeserializer, + _DeviceSecurityGroupList, + _deviceSecurityGroupListDeserializer, +} from "../../models/ioTSecurityAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + DeviceSecurityGroupsListOptionalParams, + DeviceSecurityGroupsDeleteOptionalParams, + DeviceSecurityGroupsCreateOrUpdateOptionalParams, + DeviceSecurityGroupsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceId: string, + options: DeviceSecurityGroupsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/deviceSecurityGroups{?api%2Dversion}", + { + resourceId: resourceId, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_DeviceSecurityGroupList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _deviceSecurityGroupListDeserializer(result.body); +} + +/** Use this method get the list of device security groups for the specified IoT Hub resource. */ +export function list( + context: Client, + resourceId: string, + options: DeviceSecurityGroupsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceId, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-08-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + options: DeviceSecurityGroupsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}{?api%2Dversion}", + { + resourceId: resourceId, + deviceSecurityGroupName: deviceSecurityGroupName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** User this method to deletes the device security group. */ +export async function $delete( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + options: DeviceSecurityGroupsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceId, deviceSecurityGroupName, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + deviceSecurityGroup: DeviceSecurityGroup, + options: DeviceSecurityGroupsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}{?api%2Dversion}", + { + resourceId: resourceId, + deviceSecurityGroupName: deviceSecurityGroupName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: deviceSecurityGroupSerializer(deviceSecurityGroup), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return deviceSecurityGroupDeserializer(result.body); +} + +/** Use this method to creates or updates the device security group on a specified IoT Hub resource. */ +export async function createOrUpdate( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + deviceSecurityGroup: DeviceSecurityGroup, + options: DeviceSecurityGroupsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceId, + deviceSecurityGroupName, + deviceSecurityGroup, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + options: DeviceSecurityGroupsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/deviceSecurityGroups/{deviceSecurityGroupName}{?api%2Dversion}", + { + resourceId: resourceId, + deviceSecurityGroupName: deviceSecurityGroupName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return deviceSecurityGroupDeserializer(result.body); +} + +/** Use this method to get the device security group for the specified IoT Hub resource. */ +export async function get( + context: Client, + resourceId: string, + deviceSecurityGroupName: string, + options: DeviceSecurityGroupsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, deviceSecurityGroupName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/deviceSecurityGroups/options.ts b/sdk/security/arm-security/src/api/deviceSecurityGroups/options.ts new file mode 100644 index 000000000000..cf66ae2f5c56 --- /dev/null +++ b/sdk/security/arm-security/src/api/deviceSecurityGroups/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface DeviceSecurityGroupsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DeviceSecurityGroupsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DeviceSecurityGroupsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DeviceSecurityGroupsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/discoveredSecuritySolutions/index.ts b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/index.ts new file mode 100644 index 000000000000..f8a8c8742b3b --- /dev/null +++ b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listByHomeRegion, get } from "./operations.js"; +export type { + DiscoveredSecuritySolutionsListOptionalParams, + DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + DiscoveredSecuritySolutionsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/discoveredSecuritySolutions/operations.ts b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/operations.ts new file mode 100644 index 000000000000..b9af98768208 --- /dev/null +++ b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/operations.ts @@ -0,0 +1,184 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + DiscoveredSecuritySolution, + discoveredSecuritySolutionDeserializer, + _DiscoveredSecuritySolutionList, + _discoveredSecuritySolutionListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + DiscoveredSecuritySolutionsListOptionalParams, + DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + DiscoveredSecuritySolutionsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: DiscoveredSecuritySolutionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/discoveredSecuritySolutions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_DiscoveredSecuritySolutionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _discoveredSecuritySolutionListDeserializer(result.body); +} + +/** Gets a list of discovered Security Solutions for the subscription. */ +export function list( + context: Client, + options: DiscoveredSecuritySolutionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_DiscoveredSecuritySolutionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _discoveredSecuritySolutionListDeserializer(result.body); +} + +/** Gets a list of discovered Security Solutions for the subscription and location. */ +export function listByHomeRegion( + context: Client, + ascLocation: string, + options: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByHomeRegionSend(context, ascLocation, options), + _listByHomeRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + discoveredSecuritySolutionName: string, + options: DiscoveredSecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/discoveredSecuritySolutions/{discoveredSecuritySolutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + discoveredSecuritySolutionName: discoveredSecuritySolutionName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return discoveredSecuritySolutionDeserializer(result.body); +} + +/** Gets a specific discovered Security Solution. */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + discoveredSecuritySolutionName: string, + options: DiscoveredSecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + ascLocation, + discoveredSecuritySolutionName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/discoveredSecuritySolutions/options.ts b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/options.ts new file mode 100644 index 000000000000..6ab6581deb3e --- /dev/null +++ b/sdk/security/arm-security/src/api/discoveredSecuritySolutions/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface DiscoveredSecuritySolutionsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DiscoveredSecuritySolutionsListByHomeRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface DiscoveredSecuritySolutionsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/externalSecuritySolutions/index.ts b/sdk/security/arm-security/src/api/externalSecuritySolutions/index.ts new file mode 100644 index 000000000000..01252ed76012 --- /dev/null +++ b/sdk/security/arm-security/src/api/externalSecuritySolutions/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listByHomeRegion, get } from "./operations.js"; +export type { + ExternalSecuritySolutionsListOptionalParams, + ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ExternalSecuritySolutionsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/externalSecuritySolutions/operations.ts b/sdk/security/arm-security/src/api/externalSecuritySolutions/operations.ts new file mode 100644 index 000000000000..0c659e835efa --- /dev/null +++ b/sdk/security/arm-security/src/api/externalSecuritySolutions/operations.ts @@ -0,0 +1,184 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + externalSecuritySolutionUnionDeserializer, + ExternalSecuritySolutionUnion, + _ExternalSecuritySolutionList, + _externalSecuritySolutionListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + ExternalSecuritySolutionsListOptionalParams, + ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ExternalSecuritySolutionsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: ExternalSecuritySolutionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/externalSecuritySolutions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_ExternalSecuritySolutionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _externalSecuritySolutionListDeserializer(result.body); +} + +/** Gets a list of external security solutions for the subscription. */ +export function list( + context: Client, + options: ExternalSecuritySolutionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: ExternalSecuritySolutionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_ExternalSecuritySolutionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _externalSecuritySolutionListDeserializer(result.body); +} + +/** Gets a list of external Security Solutions for the subscription and location. */ +export function listByHomeRegion( + context: Client, + ascLocation: string, + options: ExternalSecuritySolutionsListByHomeRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByHomeRegionSend(context, ascLocation, options), + _listByHomeRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + externalSecuritySolutionsName: string, + options: ExternalSecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/ExternalSecuritySolutions/{externalSecuritySolutionsName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + externalSecuritySolutionsName: externalSecuritySolutionsName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return externalSecuritySolutionUnionDeserializer(result.body); +} + +/** Gets a specific external Security Solution. */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + externalSecuritySolutionsName: string, + options: ExternalSecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + ascLocation, + externalSecuritySolutionsName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/externalSecuritySolutions/options.ts b/sdk/security/arm-security/src/api/externalSecuritySolutions/options.ts new file mode 100644 index 000000000000..cb437b8b7fce --- /dev/null +++ b/sdk/security/arm-security/src/api/externalSecuritySolutions/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ExternalSecuritySolutionsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ExternalSecuritySolutionsListByHomeRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ExternalSecuritySolutionsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/gitHubIssues/index.ts b/sdk/security/arm-security/src/api/gitHubIssues/index.ts new file mode 100644 index 000000000000..b53f8212b937 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubIssues/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { create } from "./operations.js"; +export type { GitHubIssuesCreateOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitHubIssues/operations.ts b/sdk/security/arm-security/src/api/gitHubIssues/operations.ts new file mode 100644 index 000000000000..4ed82efb4419 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubIssues/operations.ts @@ -0,0 +1,78 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { issueCreationRequestSerializer } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { GitHubIssuesCreateOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _createSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options: GitHubIssuesCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}/issues{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + ownerName: ownerName, + repoName: repoName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + body: !options["createIssueRequest"] + ? options["createIssueRequest"] + : issueCreationRequestSerializer(options["createIssueRequest"]), + }); +} + +export async function _createDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Creates a GitHub issue for the specified repository and assessment. */ +export function create( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options: GitHubIssuesCreateOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _createDeserialize, ["202", "200", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createSend(context, resourceGroupName, securityConnectorName, ownerName, repoName, options), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2025-11-01-preview", + }) as PollerLike, void>; +} diff --git a/sdk/security/arm-security/src/api/gitHubIssues/options.ts b/sdk/security/arm-security/src/api/gitHubIssues/options.ts new file mode 100644 index 000000000000..7813ecd66282 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubIssues/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { IssueCreationRequest } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitHubIssuesCreateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** The request model containing details for creating the GitHub issue. */ + createIssueRequest?: IssueCreationRequest; +} diff --git a/sdk/security/arm-security/src/api/gitHubOwners/index.ts b/sdk/security/arm-security/src/api/gitHubOwners/index.ts new file mode 100644 index 000000000000..c597e865d963 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubOwners/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listAvailable, list, get } from "./operations.js"; +export type { + GitHubOwnersListAvailableOptionalParams, + GitHubOwnersListOptionalParams, + GitHubOwnersGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitHubOwners/operations.ts b/sdk/security/arm-security/src/api/gitHubOwners/operations.ts new file mode 100644 index 000000000000..5dcbcdd86259 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubOwners/operations.ts @@ -0,0 +1,191 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + GitHubOwner, + gitHubOwnerDeserializer, + GitHubOwnerListResponse, + gitHubOwnerListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + GitHubOwnersListAvailableOptionalParams, + GitHubOwnersListOptionalParams, + GitHubOwnersGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listAvailableSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitHubOwnersListAvailableOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitHubOwners{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listAvailableDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitHubOwnerListResponseDeserializer(result.body); +} + +/** Returns a list of all GitHub owners accessible by the user token consumed by the connector. */ +export async function listAvailable( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitHubOwnersListAvailableOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listAvailableSend( + context, + resourceGroupName, + securityConnectorName, + options, + ); + return _listAvailableDeserialize(result); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitHubOwnersListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitHubOwnerListResponseDeserializer(result.body); +} + +/** Returns a list of GitHub owners onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitHubOwnersListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options: GitHubOwnersGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + ownerName: ownerName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitHubOwnerDeserializer(result.body); +} + +/** Returns a monitored GitHub owner. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options: GitHubOwnersGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + ownerName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/gitHubOwners/options.ts b/sdk/security/arm-security/src/api/gitHubOwners/options.ts new file mode 100644 index 000000000000..08dbb8cd7c17 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubOwners/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitHubOwnersListAvailableOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitHubOwnersListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitHubOwnersGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/gitHubRepos/index.ts b/sdk/security/arm-security/src/api/gitHubRepos/index.ts new file mode 100644 index 000000000000..d158d1722c37 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubRepos/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { GitHubReposListOptionalParams, GitHubReposGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitHubRepos/operations.ts b/sdk/security/arm-security/src/api/gitHubRepos/operations.ts new file mode 100644 index 000000000000..e39d4ebb29a2 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubRepos/operations.ts @@ -0,0 +1,140 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + GitHubRepository, + gitHubRepositoryDeserializer, + _GitHubRepositoryListResponse, + _gitHubRepositoryListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { GitHubReposListOptionalParams, GitHubReposGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options: GitHubReposListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + ownerName: ownerName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_GitHubRepositoryListResponse> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _gitHubRepositoryListResponseDeserializer(result.body); +} + +/** Returns a list of GitHub repositories onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options: GitHubReposListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, ownerName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options: GitHubReposGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitHubOwners/{ownerName}/repos/{repoName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + ownerName: ownerName, + repoName: repoName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitHubRepositoryDeserializer(result.body); +} + +/** Returns a monitored GitHub repository. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options: GitHubReposGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + ownerName, + repoName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/gitHubRepos/options.ts b/sdk/security/arm-security/src/api/gitHubRepos/options.ts new file mode 100644 index 000000000000..b223d44493a0 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitHubRepos/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitHubReposListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitHubReposGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/gitLabGroups/index.ts b/sdk/security/arm-security/src/api/gitLabGroups/index.ts new file mode 100644 index 000000000000..339181457ff2 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabGroups/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listAvailable, list, get } from "./operations.js"; +export type { + GitLabGroupsListAvailableOptionalParams, + GitLabGroupsListOptionalParams, + GitLabGroupsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitLabGroups/operations.ts b/sdk/security/arm-security/src/api/gitLabGroups/operations.ts new file mode 100644 index 000000000000..f85b9a3ff9a0 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabGroups/operations.ts @@ -0,0 +1,191 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + GitLabGroup, + gitLabGroupDeserializer, + GitLabGroupListResponse, + gitLabGroupListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + GitLabGroupsListAvailableOptionalParams, + GitLabGroupsListOptionalParams, + GitLabGroupsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listAvailableSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitLabGroupsListAvailableOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/listAvailableGitLabGroups{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listAvailableDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitLabGroupListResponseDeserializer(result.body); +} + +/** Returns a list of all GitLab groups accessible by the user token consumed by the connector. */ +export async function listAvailable( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitLabGroupsListAvailableOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listAvailableSend( + context, + resourceGroupName, + securityConnectorName, + options, + ); + return _listAvailableDeserialize(result); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitLabGroupsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitLabGroupListResponseDeserializer(result.body); +} + +/** Returns a list of GitLab groups onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: GitLabGroupsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabGroupsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + groupFQName: groupFQName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitLabGroupDeserializer(result.body); +} + +/** Returns a monitored GitLab Group resource for a given fully-qualified name. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabGroupsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + groupFQName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/gitLabGroups/options.ts b/sdk/security/arm-security/src/api/gitLabGroups/options.ts new file mode 100644 index 000000000000..380273f5fa9a --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabGroups/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitLabGroupsListAvailableOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitLabGroupsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitLabGroupsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/gitLabProjects/index.ts b/sdk/security/arm-security/src/api/gitLabProjects/index.ts new file mode 100644 index 000000000000..eb1312ca71c8 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabProjects/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + GitLabProjectsListOptionalParams, + GitLabProjectsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitLabProjects/operations.ts b/sdk/security/arm-security/src/api/gitLabProjects/operations.ts new file mode 100644 index 000000000000..cc63f46d2523 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabProjects/operations.ts @@ -0,0 +1,140 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + GitLabProject, + gitLabProjectDeserializer, + _GitLabProjectListResponse, + _gitLabProjectListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { GitLabProjectsListOptionalParams, GitLabProjectsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabProjectsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + groupFQName: groupFQName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_GitLabProjectListResponse> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _gitLabProjectListResponseDeserializer(result.body); +} + +/** Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabProjectsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, groupFQName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-11-01-preview" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + projectName: string, + options: GitLabProjectsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/projects/{projectName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + groupFQName: groupFQName, + projectName: projectName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitLabProjectDeserializer(result.body); +} + +/** Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + projectName: string, + options: GitLabProjectsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + groupFQName, + projectName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/gitLabProjects/options.ts b/sdk/security/arm-security/src/api/gitLabProjects/options.ts new file mode 100644 index 000000000000..6de51aaa1d61 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabProjects/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitLabProjectsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GitLabProjectsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/gitLabSubgroups/index.ts b/sdk/security/arm-security/src/api/gitLabSubgroups/index.ts new file mode 100644 index 000000000000..b7c863875132 --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabSubgroups/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list } from "./operations.js"; +export type { GitLabSubgroupsListOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/gitLabSubgroups/operations.ts b/sdk/security/arm-security/src/api/gitLabSubgroups/operations.ts new file mode 100644 index 000000000000..5760f88e822c --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabSubgroups/operations.ts @@ -0,0 +1,75 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + GitLabGroupListResponse, + gitLabGroupListResponseDeserializer, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { GitLabSubgroupsListOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabSubgroupsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/devops/default/gitLabGroups/{groupFQName}/listSubgroups{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + groupFQName: groupFQName, + "api%2Dversion": "2025-11-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return gitLabGroupListResponseDeserializer(result.body); +} + +/** Gets nested subgroups of given GitLab Group which are onboarded to the connector. */ +export async function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options: GitLabSubgroupsListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend( + context, + resourceGroupName, + securityConnectorName, + groupFQName, + options, + ); + return _listDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/gitLabSubgroups/options.ts b/sdk/security/arm-security/src/api/gitLabSubgroups/options.ts new file mode 100644 index 000000000000..d4cf07410bed --- /dev/null +++ b/sdk/security/arm-security/src/api/gitLabSubgroups/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GitLabSubgroupsListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/governanceAssignments/index.ts b/sdk/security/arm-security/src/api/governanceAssignments/index.ts new file mode 100644 index 000000000000..71dcbc9ec00a --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceAssignments/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + GovernanceAssignmentsListOptionalParams, + GovernanceAssignmentsDeleteOptionalParams, + GovernanceAssignmentsCreateOrUpdateOptionalParams, + GovernanceAssignmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/governanceAssignments/operations.ts b/sdk/security/arm-security/src/api/governanceAssignments/operations.ts new file mode 100644 index 000000000000..e1e09f6270c6 --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceAssignments/operations.ts @@ -0,0 +1,241 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + GovernanceAssignment, + governanceAssignmentSerializer, + governanceAssignmentDeserializer, + _GovernanceAssignmentsList, + _governanceAssignmentsListDeserializer, +} from "../../models/governanceAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + GovernanceAssignmentsListOptionalParams, + GovernanceAssignmentsDeleteOptionalParams, + GovernanceAssignmentsCreateOrUpdateOptionalParams, + GovernanceAssignmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + assessmentName: string, + options: GovernanceAssignmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_GovernanceAssignmentsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _governanceAssignmentsListDeserializer(result.body); +} + +/** Get governance assignments on all of your resources inside a scope */ +export function list( + context: Client, + scope: string, + assessmentName: string, + options: GovernanceAssignmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, assessmentName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + options: GovernanceAssignmentsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + assignmentKey: assignmentKey, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a GovernanceAssignment over a given scope */ +export async function $delete( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + options: GovernanceAssignmentsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, scope, assessmentName, assignmentKey, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + governanceAssignment: GovernanceAssignment, + options: GovernanceAssignmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + assignmentKey: assignmentKey, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: governanceAssignmentSerializer(governanceAssignment), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return governanceAssignmentDeserializer(result.body); +} + +/** Creates or updates a governance assignment on the given subscription. */ +export async function createOrUpdate( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + governanceAssignment: GovernanceAssignment, + options: GovernanceAssignmentsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + scope, + assessmentName, + assignmentKey, + governanceAssignment, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + options: GovernanceAssignmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/governanceAssignments/{assignmentKey}{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + assignmentKey: assignmentKey, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return governanceAssignmentDeserializer(result.body); +} + +/** Get a specific governanceAssignment for the requested scope by AssignmentKey */ +export async function get( + context: Client, + scope: string, + assessmentName: string, + assignmentKey: string, + options: GovernanceAssignmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, assessmentName, assignmentKey, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/governanceAssignments/options.ts b/sdk/security/arm-security/src/api/governanceAssignments/options.ts new file mode 100644 index 000000000000..b4ad830cb10e --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceAssignments/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GovernanceAssignmentsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceAssignmentsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceAssignmentsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceAssignmentsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/governanceRules/index.ts b/sdk/security/arm-security/src/api/governanceRules/index.ts new file mode 100644 index 000000000000..c91dc00053a4 --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceRules/index.ts @@ -0,0 +1,12 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { operationResults, execute, list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + GovernanceRulesOperationResultsOptionalParams, + GovernanceRulesExecuteOptionalParams, + GovernanceRulesListOptionalParams, + GovernanceRulesDeleteOptionalParams, + GovernanceRulesCreateOrUpdateOptionalParams, + GovernanceRulesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/governanceRules/operations.ts b/sdk/security/arm-security/src/api/governanceRules/operations.ts new file mode 100644 index 000000000000..715ce44ed55c --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceRules/operations.ts @@ -0,0 +1,337 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + GovernanceRule, + governanceRuleSerializer, + governanceRuleDeserializer, + _GovernanceRuleList, + _governanceRuleListDeserializer, + executeGovernanceRuleParamsSerializer, + OperationResult, + operationResultDeserializer, +} from "../../models/governanceAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + GovernanceRulesOperationResultsOptionalParams, + GovernanceRulesExecuteOptionalParams, + GovernanceRulesListOptionalParams, + GovernanceRulesDeleteOptionalParams, + GovernanceRulesCreateOrUpdateOptionalParams, + GovernanceRulesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _operationResultsSend( + context: Client, + scope: string, + ruleId: string, + operationId: string, + options: GovernanceRulesOperationResultsOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules/{ruleId}/operationResults/{operationId}{?api%2Dversion}", + { + scope: scope, + ruleId: ruleId, + operationId: operationId, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _operationResultsDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return operationResultDeserializer(result.body); +} + +/** Get governance rules long run operation result for the requested scope by ruleId and operationId */ +export async function operationResults( + context: Client, + scope: string, + ruleId: string, + operationId: string, + options: GovernanceRulesOperationResultsOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _operationResultsSend(context, scope, ruleId, operationId, options); + return _operationResultsDeserialize(result); +} + +export function _executeSend( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesExecuteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules/{ruleId}/execute{?api%2Dversion}", + { + scope: scope, + ruleId: ruleId, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + body: !options["executeGovernanceRuleParams"] + ? options["executeGovernanceRuleParams"] + : executeGovernanceRuleParamsSerializer(options["executeGovernanceRuleParams"]), + }); +} + +export async function _executeDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Execute a governance rule */ +export function execute( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesExecuteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _executeDeserialize, ["202", "200", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => _executeSend(context, scope, ruleId, options), + resourceLocationConfig: "location", + apiVersion: "2022-01-01-preview", + }) as PollerLike, void>; +} + +export function _listSend( + context: Client, + scope: string, + options: GovernanceRulesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_GovernanceRuleList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _governanceRuleListDeserializer(result.body); +} + +/** Get a list of all relevant governance rules over a scope */ +export function list( + context: Client, + scope: string, + options: GovernanceRulesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-01-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules/{ruleId}{?api%2Dversion}", + { + scope: scope, + ruleId: ruleId, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a Governance rule over a given scope */ +export function $delete( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["200", "202", "204"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => _$deleteSend(context, scope, ruleId, options), + resourceLocationConfig: "location", + apiVersion: "2022-01-01-preview", + }) as PollerLike, void>; +} + +export function _createOrUpdateSend( + context: Client, + scope: string, + ruleId: string, + governanceRule: GovernanceRule, + options: GovernanceRulesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules/{ruleId}{?api%2Dversion}", + { + scope: scope, + ruleId: ruleId, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: governanceRuleSerializer(governanceRule), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return governanceRuleDeserializer(result.body); +} + +/** Creates or updates a governance rule over a given scope */ +export async function createOrUpdate( + context: Client, + scope: string, + ruleId: string, + governanceRule: GovernanceRule, + options: GovernanceRulesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, scope, ruleId, governanceRule, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/governanceRules/{ruleId}{?api%2Dversion}", + { + scope: scope, + ruleId: ruleId, + "api%2Dversion": "2022-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return governanceRuleDeserializer(result.body); +} + +/** Get a specific governance rule for the requested scope by ruleId */ +export async function get( + context: Client, + scope: string, + ruleId: string, + options: GovernanceRulesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, ruleId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/governanceRules/options.ts b/sdk/security/arm-security/src/api/governanceRules/options.ts new file mode 100644 index 000000000000..8c029cd8d97a --- /dev/null +++ b/sdk/security/arm-security/src/api/governanceRules/options.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ExecuteGovernanceRuleParams } from "../../models/governanceAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface GovernanceRulesOperationResultsOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceRulesExecuteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + /** Execute governance rule over a given scope */ + executeGovernanceRuleParams?: ExecuteGovernanceRuleParams; +} + +/** Optional parameters. */ +export interface GovernanceRulesListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceRulesDeleteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface GovernanceRulesCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface GovernanceRulesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/healthReports/index.ts b/sdk/security/arm-security/src/api/healthReports/index.ts new file mode 100644 index 000000000000..513bf76dcac2 --- /dev/null +++ b/sdk/security/arm-security/src/api/healthReports/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { HealthReportsListOptionalParams, HealthReportsGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/healthReports/operations.ts b/sdk/security/arm-security/src/api/healthReports/operations.ts new file mode 100644 index 000000000000..d9eaffeba792 --- /dev/null +++ b/sdk/security/arm-security/src/api/healthReports/operations.ts @@ -0,0 +1,117 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + HealthReport, + healthReportDeserializer, + _HealthReportsList, + _healthReportsListDeserializer, +} from "../../models/healthReportsAPI/models.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { HealthReportsListOptionalParams, HealthReportsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: HealthReportsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/healthReports{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2023-05-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_HealthReportsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _healthReportsListDeserializer(result.body); +} + +/** Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' */ +export function list( + context: Client, + scope: string, + options: HealthReportsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-05-01-preview" }, + ); +} + +export function _getSend( + context: Client, + resourceId: string, + healthReportName: string, + options: HealthReportsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/healthReports/{healthReportName}{?api%2Dversion}", + { + resourceId: resourceId, + healthReportName: healthReportName, + "api%2Dversion": "2023-05-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return healthReportDeserializer(result.body); +} + +/** Get health report of resource */ +export async function get( + context: Client, + resourceId: string, + healthReportName: string, + options: HealthReportsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, healthReportName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/healthReports/options.ts b/sdk/security/arm-security/src/api/healthReports/options.ts new file mode 100644 index 000000000000..6a6f7330a6f7 --- /dev/null +++ b/sdk/security/arm-security/src/api/healthReports/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface HealthReportsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface HealthReportsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/index.ts b/sdk/security/arm-security/src/api/index.ts new file mode 100644 index 000000000000..9aac14da7812 --- /dev/null +++ b/sdk/security/arm-security/src/api/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + SecurityCenterContext, + SecurityCenterOptionalParams, +} from "./securityCenterContext.js"; +export { createSecurityCenter } from "./securityCenterContext.js"; diff --git a/sdk/security/arm-security/src/api/informationProtectionPolicies/index.ts b/sdk/security/arm-security/src/api/informationProtectionPolicies/index.ts new file mode 100644 index 000000000000..b8e957cb21f0 --- /dev/null +++ b/sdk/security/arm-security/src/api/informationProtectionPolicies/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, createOrUpdate, get } from "./operations.js"; +export type { + InformationProtectionPoliciesListOptionalParams, + InformationProtectionPoliciesCreateOrUpdateOptionalParams, + InformationProtectionPoliciesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/informationProtectionPolicies/operations.ts b/sdk/security/arm-security/src/api/informationProtectionPolicies/operations.ts new file mode 100644 index 000000000000..28d254111696 --- /dev/null +++ b/sdk/security/arm-security/src/api/informationProtectionPolicies/operations.ts @@ -0,0 +1,185 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + InformationProtectionPolicy, + informationProtectionPolicySerializer, + informationProtectionPolicyDeserializer, + InformationProtectionPolicyName, + _InformationProtectionPolicyList, + _informationProtectionPolicyListDeserializer, +} from "../../models/legacySettingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + InformationProtectionPoliciesListOptionalParams, + InformationProtectionPoliciesCreateOrUpdateOptionalParams, + InformationProtectionPoliciesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: InformationProtectionPoliciesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/informationProtectionPolicies{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_InformationProtectionPolicyList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _informationProtectionPolicyListDeserializer(result.body); +} + +/** Information protection policies of a specific management group. */ +export function list( + context: Client, + scope: string, + options: InformationProtectionPoliciesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2017-08-01-preview" }, + ); +} + +export function _createOrUpdateSend( + context: Client, + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + informationProtectionPolicy: InformationProtectionPolicy, + options: InformationProtectionPoliciesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}{?api%2Dversion}", + { + scope: scope, + informationProtectionPolicyName: informationProtectionPolicyName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: informationProtectionPolicySerializer(informationProtectionPolicy), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return informationProtectionPolicyDeserializer(result.body); +} + +/** Details of the information protection policy. */ +export async function createOrUpdate( + context: Client, + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + informationProtectionPolicy: InformationProtectionPolicy, + options: InformationProtectionPoliciesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + scope, + informationProtectionPolicyName, + informationProtectionPolicy, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + options: InformationProtectionPoliciesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/informationProtectionPolicies/{informationProtectionPolicyName}{?api%2Dversion}", + { + scope: scope, + informationProtectionPolicyName: informationProtectionPolicyName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return informationProtectionPolicyDeserializer(result.body); +} + +/** Details of the information protection policy. */ +export async function get( + context: Client, + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + options: InformationProtectionPoliciesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, informationProtectionPolicyName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/informationProtectionPolicies/options.ts b/sdk/security/arm-security/src/api/informationProtectionPolicies/options.ts new file mode 100644 index 000000000000..719cd55dcab1 --- /dev/null +++ b/sdk/security/arm-security/src/api/informationProtectionPolicies/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface InformationProtectionPoliciesListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface InformationProtectionPoliciesCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface InformationProtectionPoliciesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolution/index.ts b/sdk/security/arm-security/src/api/iotSecuritySolution/index.ts new file mode 100644 index 000000000000..47d48c8abb3d --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolution/index.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + listBySubscription, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "./operations.js"; +export type { + IotSecuritySolutionListBySubscriptionOptionalParams, + IotSecuritySolutionListByResourceGroupOptionalParams, + IotSecuritySolutionDeleteOptionalParams, + IotSecuritySolutionUpdateOptionalParams, + IotSecuritySolutionCreateOrUpdateOptionalParams, + IotSecuritySolutionGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/iotSecuritySolution/operations.ts b/sdk/security/arm-security/src/api/iotSecuritySolution/operations.ts new file mode 100644 index 000000000000..d0ca387cc980 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolution/operations.ts @@ -0,0 +1,345 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + IoTSecuritySolutionModel, + ioTSecuritySolutionModelSerializer, + ioTSecuritySolutionModelDeserializer, + UpdateIotSecuritySolutionData, + updateIotSecuritySolutionDataSerializer, + _IoTSecuritySolutionsList, + _ioTSecuritySolutionsListDeserializer, +} from "../../models/ioTSecurityAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + IotSecuritySolutionListBySubscriptionOptionalParams, + IotSecuritySolutionListByResourceGroupOptionalParams, + IotSecuritySolutionDeleteOptionalParams, + IotSecuritySolutionUpdateOptionalParams, + IotSecuritySolutionCreateOrUpdateOptionalParams, + IotSecuritySolutionGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listBySubscriptionSend( + context: Client, + options: IotSecuritySolutionListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/iotSecuritySolutions{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2019-08-01", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_IoTSecuritySolutionsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _ioTSecuritySolutionsListDeserializer(result.body); +} + +/** Use this method to get the list of IoT Security solutions by subscription. */ +export function listBySubscription( + context: Client, + options: IotSecuritySolutionListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-08-01" }, + ); +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: IotSecuritySolutionListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2019-08-01", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_IoTSecuritySolutionsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _ioTSecuritySolutionsListDeserializer(result.body); +} + +/** Use this method to get the list IoT Security solutions organized by resource group. */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: IotSecuritySolutionListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-08-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Use this method to delete yours IoT Security solution */ +export async function $delete( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceGroupName, solutionName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + solutionName: string, + updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, + options: IotSecuritySolutionUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: updateIotSecuritySolutionDataSerializer(updateIotSecuritySolutionData), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecuritySolutionModelDeserializer(result.body); +} + +/** Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. */ +export async function update( + context: Client, + resourceGroupName: string, + solutionName: string, + updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, + options: IotSecuritySolutionUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend( + context, + resourceGroupName, + solutionName, + updateIotSecuritySolutionData, + options, + ); + return _updateDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + solutionName: string, + iotSecuritySolutionData: IoTSecuritySolutionModel, + options: IotSecuritySolutionCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: ioTSecuritySolutionModelSerializer(iotSecuritySolutionData), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecuritySolutionModelDeserializer(result.body); +} + +/** Use this method to create or update yours IoT Security solution */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + solutionName: string, + iotSecuritySolutionData: IoTSecuritySolutionModel, + options: IotSecuritySolutionCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + solutionName, + iotSecuritySolutionData, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecuritySolutionModelDeserializer(result.body); +} + +/** User this method to get details of a specific IoT Security solution based on solution name */ +export async function get( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, solutionName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolution/options.ts b/sdk/security/arm-security/src/api/iotSecuritySolution/options.ts new file mode 100644 index 000000000000..8708506e8514 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolution/options.ts @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface IotSecuritySolutionListBySubscriptionOptionalParams extends OperationOptions { + /** Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. */ + filter?: string; +} + +/** Optional parameters. */ +export interface IotSecuritySolutionListByResourceGroupOptionalParams extends OperationOptions { + /** Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. */ + filter?: string; +} + +/** Optional parameters. */ +export interface IotSecuritySolutionDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface IotSecuritySolutionUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface IotSecuritySolutionCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface IotSecuritySolutionGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/index.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/index.ts new file mode 100644 index 000000000000..395e216089ae --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + IotSecuritySolutionAnalyticsListOptionalParams, + IotSecuritySolutionAnalyticsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/operations.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/operations.ts new file mode 100644 index 000000000000..1c5b21fb819d --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/operations.ts @@ -0,0 +1,120 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + IoTSecuritySolutionAnalyticsModel, + ioTSecuritySolutionAnalyticsModelDeserializer, + IoTSecuritySolutionAnalyticsModelList, + ioTSecuritySolutionAnalyticsModelListDeserializer, +} from "../../models/ioTSecurityAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + IotSecuritySolutionAnalyticsListOptionalParams, + IotSecuritySolutionAnalyticsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionAnalyticsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecuritySolutionAnalyticsModelListDeserializer(result.body); +} + +/** Use this method to get IoT security Analytics metrics in an array. */ +export async function list( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionAnalyticsListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend(context, resourceGroupName, solutionName, options); + return _listDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionAnalyticsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecuritySolutionAnalyticsModelDeserializer(result.body); +} + +/** Use this method to get IoT Security Analytics metrics. */ +export async function get( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionAnalyticsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, solutionName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/options.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/options.ts new file mode 100644 index 000000000000..7cec7897d8e0 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionAnalytics/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface IotSecuritySolutionAnalyticsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface IotSecuritySolutionAnalyticsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts new file mode 100644 index 000000000000..769483306923 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { dismiss, list, get } from "./operations.js"; +export type { + IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/operations.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/operations.ts new file mode 100644 index 000000000000..4f9dbf54ddb1 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/operations.ts @@ -0,0 +1,197 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + IoTSecurityAggregatedAlert, + ioTSecurityAggregatedAlertDeserializer, + _IoTSecurityAggregatedAlertList, + _ioTSecurityAggregatedAlertListDeserializer, +} from "../../models/ioTSecurityAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _dismissSend( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}/dismiss{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + aggregatedAlertName: aggregatedAlertName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _dismissDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Use this method to dismiss an aggregated IoT Security Solution Alert. */ +export async function dismiss( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams = { + requestOptions: {}, + }, +): Promise { + const result = await _dismissSend( + context, + resourceGroupName, + solutionName, + aggregatedAlertName, + options, + ); + return _dismissDeserialize(result); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts{?api%2Dversion,%24top}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + "%24top": options?.top, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_IoTSecurityAggregatedAlertList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _ioTSecurityAggregatedAlertListDeserializer(result.body); +} + +/** Use this method to get the aggregated alert list of yours IoT Security solution. */ +export function list( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, solutionName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-08-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedAlerts/{aggregatedAlertName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + aggregatedAlertName: aggregatedAlertName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecurityAggregatedAlertDeserializer(result.body); +} + +/** Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. */ +export async function get( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + solutionName, + aggregatedAlertName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/options.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/options.ts new file mode 100644 index 000000000000..06fe159b8778 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsAggregatedAlert/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams extends OperationOptions { + /** Number of results to retrieve. */ + top?: number; +} + +/** Optional parameters. */ +export interface IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/index.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/index.ts new file mode 100644 index 000000000000..ed90b0073c95 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/operations.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/operations.ts new file mode 100644 index 000000000000..0b5afec03164 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/operations.ts @@ -0,0 +1,139 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + IoTSecurityAggregatedRecommendation, + ioTSecurityAggregatedRecommendationDeserializer, + _IoTSecurityAggregatedRecommendationList, + _ioTSecurityAggregatedRecommendationListDeserializer, +} from "../../models/ioTSecurityAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations{?api%2Dversion,%24top}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + "api%2Dversion": "2019-08-01", + "%24top": options?.top, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_IoTSecurityAggregatedRecommendationList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _ioTSecurityAggregatedRecommendationListDeserializer(result.body); +} + +/** Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. */ +export function list( + context: Client, + resourceGroupName: string, + solutionName: string, + options: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, solutionName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-08-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedRecommendationName: string, + options: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/iotSecuritySolutions/{solutionName}/analyticsModels/default/aggregatedRecommendations/{aggregatedRecommendationName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + solutionName: solutionName, + aggregatedRecommendationName: aggregatedRecommendationName, + "api%2Dversion": "2019-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ioTSecurityAggregatedRecommendationDeserializer(result.body); +} + +/** Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. */ +export async function get( + context: Client, + resourceGroupName: string, + solutionName: string, + aggregatedRecommendationName: string, + options: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + solutionName, + aggregatedRecommendationName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/options.ts b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/options.ts new file mode 100644 index 000000000000..c29ce26ad378 --- /dev/null +++ b/sdk/security/arm-security/src/api/iotSecuritySolutionsAnalyticsRecommendation/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams extends OperationOptions { + /** Number of results to retrieve. */ + top?: number; +} + +/** Optional parameters. */ +export interface IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/index.ts b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/index.ts new file mode 100644 index 000000000000..66d1609a06af --- /dev/null +++ b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/index.ts @@ -0,0 +1,23 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + listByResourceGroup, + list, + initiate, + listByRegion, + listByResourceGroupAndRegion, + $delete, + createOrUpdate, + get, +} from "./operations.js"; +export type { + JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + JitNetworkAccessPoliciesListOptionalParams, + JitNetworkAccessPoliciesInitiateOptionalParams, + JitNetworkAccessPoliciesListByRegionOptionalParams, + JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + JitNetworkAccessPoliciesDeleteOptionalParams, + JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + JitNetworkAccessPoliciesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/operations.ts b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/operations.ts new file mode 100644 index 000000000000..18acb618f693 --- /dev/null +++ b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/operations.ts @@ -0,0 +1,483 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + JitNetworkAccessPolicy, + jitNetworkAccessPolicySerializer, + jitNetworkAccessPolicyDeserializer, + JitNetworkAccessRequest, + jitNetworkAccessRequestDeserializer, + _JitNetworkAccessPoliciesList, + _jitNetworkAccessPoliciesListDeserializer, + JitNetworkAccessPolicyInitiateRequest, + jitNetworkAccessPolicyInitiateRequestSerializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + JitNetworkAccessPoliciesListOptionalParams, + JitNetworkAccessPoliciesInitiateOptionalParams, + JitNetworkAccessPoliciesListByRegionOptionalParams, + JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + JitNetworkAccessPoliciesDeleteOptionalParams, + JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + JitNetworkAccessPoliciesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: JitNetworkAccessPoliciesListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/jitNetworkAccessPolicies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_JitNetworkAccessPoliciesList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _jitNetworkAccessPoliciesListDeserializer(result.body); +} + +/** Policies for protecting resources using Just-in-Time access control for the subscription, location */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: JitNetworkAccessPoliciesListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listSend( + context: Client, + options: JitNetworkAccessPoliciesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/jitNetworkAccessPolicies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_JitNetworkAccessPoliciesList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _jitNetworkAccessPoliciesListDeserializer(result.body); +} + +/** Policies for protecting resources using Just-in-Time access control. */ +export function list( + context: Client, + options: JitNetworkAccessPoliciesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _initiateSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicyInitiateRequest, + options: JitNetworkAccessPoliciesInitiateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}/{jitNetworkAccessPolicyInitiateType}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + jitNetworkAccessPolicyName: jitNetworkAccessPolicyName, + jitNetworkAccessPolicyInitiateType: "initiate", + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: jitNetworkAccessPolicyInitiateRequestSerializer(body), + }); +} + +export async function _initiateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return jitNetworkAccessRequestDeserializer(result.body); +} + +/** Initiate a JIT access from a specific Just-in-Time policy configuration. */ +export async function initiate( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicyInitiateRequest, + options: JitNetworkAccessPoliciesInitiateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _initiateSend( + context, + resourceGroupName, + ascLocation, + jitNetworkAccessPolicyName, + body, + options, + ); + return _initiateDeserialize(result); +} + +export function _listByRegionSend( + context: Client, + ascLocation: string, + options: JitNetworkAccessPoliciesListByRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_JitNetworkAccessPoliciesList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _jitNetworkAccessPoliciesListDeserializer(result.body); +} + +/** Policies for protecting resources using Just-in-Time access control for the subscription, location */ +export function listByRegion( + context: Client, + ascLocation: string, + options: JitNetworkAccessPoliciesListByRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByRegionSend(context, ascLocation, options), + _listByRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listByResourceGroupAndRegionSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupAndRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_JitNetworkAccessPoliciesList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _jitNetworkAccessPoliciesListDeserializer(result.body); +} + +/** Policies for protecting resources using Just-in-Time access control for the subscription, location */ +export function listByResourceGroupAndRegion( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams = { + requestOptions: {}, + }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupAndRegionSend(context, resourceGroupName, ascLocation, options), + _listByResourceGroupAndRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options: JitNetworkAccessPoliciesDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + jitNetworkAccessPolicyName: jitNetworkAccessPolicyName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a Just-in-Time access control policy. */ +export async function $delete( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options: JitNetworkAccessPoliciesDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend( + context, + resourceGroupName, + ascLocation, + jitNetworkAccessPolicyName, + options, + ); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicy, + options: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + jitNetworkAccessPolicyName: jitNetworkAccessPolicyName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: jitNetworkAccessPolicySerializer(body), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return jitNetworkAccessPolicyDeserializer(result.body); +} + +/** Create a policy for protecting resources using Just-in-Time access control */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicy, + options: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + ascLocation, + jitNetworkAccessPolicyName, + body, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options: JitNetworkAccessPoliciesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/jitNetworkAccessPolicies/{jitNetworkAccessPolicyName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + jitNetworkAccessPolicyName: jitNetworkAccessPolicyName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return jitNetworkAccessPolicyDeserializer(result.body); +} + +/** Policies for protecting resources using Just-in-Time access control for the subscription, location */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options: JitNetworkAccessPoliciesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + ascLocation, + jitNetworkAccessPolicyName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/options.ts b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/options.ts new file mode 100644 index 000000000000..85addf038d95 --- /dev/null +++ b/sdk/security/arm-security/src/api/jitNetworkAccessPolicies/options.ts @@ -0,0 +1,28 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesInitiateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesListByRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface JitNetworkAccessPoliciesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/locations/index.ts b/sdk/security/arm-security/src/api/locations/index.ts new file mode 100644 index 000000000000..3fb50f44170d --- /dev/null +++ b/sdk/security/arm-security/src/api/locations/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { LocationsListOptionalParams, LocationsGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/locations/operations.ts b/sdk/security/arm-security/src/api/locations/operations.ts new file mode 100644 index 000000000000..467aef5ac3d6 --- /dev/null +++ b/sdk/security/arm-security/src/api/locations/operations.ts @@ -0,0 +1,113 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + AscLocation, + ascLocationDeserializer, + _AscLocationList, + _ascLocationListDeserializer, +} from "../../models/locationsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { LocationsListOptionalParams, LocationsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: LocationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_AscLocationList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _ascLocationListDeserializer(result.body); +} + +/** The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. */ +export function list( + context: Client, + options: LocationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2015-06-01-preview" }, + ); +} + +export function _getSend( + context: Client, + ascLocation: string, + options: LocationsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ascLocationDeserializer(result.body); +} + +/** Details of a specific location */ +export async function get( + context: Client, + ascLocation: string, + options: LocationsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, ascLocation, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/locations/options.ts b/sdk/security/arm-security/src/api/locations/options.ts new file mode 100644 index 000000000000..7517b5954861 --- /dev/null +++ b/sdk/security/arm-security/src/api/locations/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface LocationsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface LocationsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/mdeOnboardings/index.ts b/sdk/security/arm-security/src/api/mdeOnboardings/index.ts new file mode 100644 index 000000000000..313740796dc9 --- /dev/null +++ b/sdk/security/arm-security/src/api/mdeOnboardings/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + MdeOnboardingsListOptionalParams, + MdeOnboardingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/mdeOnboardings/operations.ts b/sdk/security/arm-security/src/api/mdeOnboardings/operations.ts new file mode 100644 index 000000000000..4e504ccac650 --- /dev/null +++ b/sdk/security/arm-security/src/api/mdeOnboardings/operations.ts @@ -0,0 +1,103 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + MdeOnboardingData, + mdeOnboardingDataDeserializer, + MdeOnboardingDataList, + mdeOnboardingDataListDeserializer, +} from "../../models/mdeOnboardingAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { MdeOnboardingsListOptionalParams, MdeOnboardingsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: MdeOnboardingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2021-10-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return mdeOnboardingDataListDeserializer(result.body); +} + +/** The configuration or data needed to onboard the machine to MDE */ +export async function list( + context: Client, + options: MdeOnboardingsListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend(context, options); + return _listDeserialize(result); +} + +export function _getSend( + context: Client, + options: MdeOnboardingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/mdeOnboardings/default{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2021-10-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return mdeOnboardingDataDeserializer(result.body); +} + +/** The default configuration or data needed to onboard the machine to MDE */ +export async function get( + context: Client, + options: MdeOnboardingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/mdeOnboardings/options.ts b/sdk/security/arm-security/src/api/mdeOnboardings/options.ts new file mode 100644 index 000000000000..8a3b7aca73da --- /dev/null +++ b/sdk/security/arm-security/src/api/mdeOnboardings/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface MdeOnboardingsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface MdeOnboardingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/operationResults/index.ts b/sdk/security/arm-security/src/api/operationResults/index.ts new file mode 100644 index 000000000000..f7a693bfeb20 --- /dev/null +++ b/sdk/security/arm-security/src/api/operationResults/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { get } from "./operations.js"; +export type { OperationResultsGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/operationResults/operations.ts b/sdk/security/arm-security/src/api/operationResults/operations.ts new file mode 100644 index 000000000000..670492e9f253 --- /dev/null +++ b/sdk/security/arm-security/src/api/operationResults/operations.ts @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { OperationResultsGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _getSend( + context: Client, + location: string, + operationId: string, + options: OperationResultsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationResults/{operationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + location: location, + operationId: operationId, + "api%2Dversion": "2025-10-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Returns operation results for long running operations. */ +export async function get( + context: Client, + location: string, + operationId: string, + options: OperationResultsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, location, operationId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/operationResults/options.ts b/sdk/security/arm-security/src/api/operationResults/options.ts new file mode 100644 index 000000000000..5c7875ec5446 --- /dev/null +++ b/sdk/security/arm-security/src/api/operationResults/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface OperationResultsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/operationStatuses/index.ts b/sdk/security/arm-security/src/api/operationStatuses/index.ts new file mode 100644 index 000000000000..037968d49ec1 --- /dev/null +++ b/sdk/security/arm-security/src/api/operationStatuses/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { get } from "./operations.js"; +export type { OperationStatusesGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/operationStatuses/operations.ts b/sdk/security/arm-security/src/api/operationStatuses/operations.ts new file mode 100644 index 000000000000..627d706819ff --- /dev/null +++ b/sdk/security/arm-security/src/api/operationStatuses/operations.ts @@ -0,0 +1,66 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + OperationStatusResult, + operationStatusResultDeserializer, +} from "../../models/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { OperationStatusesGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _getSend( + context: Client, + location: string, + operationId: string, + options: OperationStatusesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{location}/operationStatuses/{operationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + location: location, + operationId: operationId, + "api%2Dversion": "2025-10-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return operationStatusResultDeserializer(result.body); +} + +/** Get the status of a long running azure asynchronous operation. */ +export async function get( + context: Client, + location: string, + operationId: string, + options: OperationStatusesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, location, operationId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/operationStatuses/options.ts b/sdk/security/arm-security/src/api/operationStatuses/options.ts new file mode 100644 index 000000000000..9cc248d9cf51 --- /dev/null +++ b/sdk/security/arm-security/src/api/operationStatuses/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface OperationStatusesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/operations/index.ts b/sdk/security/arm-security/src/api/operations/index.ts new file mode 100644 index 000000000000..de883c05d2f1 --- /dev/null +++ b/sdk/security/arm-security/src/api/operations/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list } from "./operations.js"; +export type { OperationsListOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/operations/operations.ts b/sdk/security/arm-security/src/api/operations/operations.ts new file mode 100644 index 000000000000..dc184789352b --- /dev/null +++ b/sdk/security/arm-security/src/api/operations/operations.ts @@ -0,0 +1,69 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + _OperationListResult, + _operationListResultDeserializer, + Operation, +} from "../../models/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { OperationsListOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: OperationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/operations{?api%2Dversion}", + { + "api%2Dversion": "2025-10-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_OperationListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _operationListResultDeserializer(result.body); +} + +/** Exposes all available operations for discovery purposes. */ +export function list( + context: Client, + options: OperationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2025-10-01-preview" }, + ); +} diff --git a/sdk/security/arm-security/src/api/operations/options.ts b/sdk/security/arm-security/src/api/operations/options.ts new file mode 100644 index 000000000000..c461016ad1c5 --- /dev/null +++ b/sdk/security/arm-security/src/api/operations/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface OperationsListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/pricings/index.ts b/sdk/security/arm-security/src/api/pricings/index.ts new file mode 100644 index 000000000000..93f3afbf9e9e --- /dev/null +++ b/sdk/security/arm-security/src/api/pricings/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, update, get } from "./operations.js"; +export type { + PricingsListOptionalParams, + PricingsDeleteOptionalParams, + PricingsUpdateOptionalParams, + PricingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/pricings/operations.ts b/sdk/security/arm-security/src/api/pricings/operations.ts new file mode 100644 index 000000000000..a66ee21f4f7a --- /dev/null +++ b/sdk/security/arm-security/src/api/pricings/operations.ts @@ -0,0 +1,208 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + Pricing, + pricingSerializer, + pricingDeserializer, + PricingList, + pricingListDeserializer, +} from "../../models/pricingsAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + PricingsListOptionalParams, + PricingsDeleteOptionalParams, + PricingsUpdateOptionalParams, + PricingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scopeId: string, + options: PricingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scopeId}/providers/Microsoft.Security/pricings{?api%2Dversion,%24filter}", + { + scopeId: scopeId, + "api%2Dversion": "2024-01-01", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return pricingListDeserializer(result.body); +} + +/** Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. */ +export async function list( + context: Client, + scopeId: string, + options: PricingsListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend(context, scopeId, options); + return _listDeserialize(result); +} + +export function _$deleteSend( + context: Client, + scopeId: string, + pricingName: string, + options: PricingsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scopeId}/providers/Microsoft.Security/pricings/{pricingName}{?api%2Dversion}", + { + scopeId: scopeId, + pricingName: pricingName, + "api%2Dversion": "2024-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, and Containers'). */ +export async function $delete( + context: Client, + scopeId: string, + pricingName: string, + options: PricingsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, scopeId, pricingName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + scopeId: string, + pricingName: string, + pricing: Pricing, + options: PricingsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scopeId}/providers/Microsoft.Security/pricings/{pricingName}{?api%2Dversion}", + { + scopeId: scopeId, + pricingName: pricingName, + "api%2Dversion": "2024-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: pricingSerializer(pricing), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return pricingDeserializer(result.body); +} + +/** Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). */ +export async function update( + context: Client, + scopeId: string, + pricingName: string, + pricing: Pricing, + options: PricingsUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend(context, scopeId, pricingName, pricing, options); + return _updateDeserialize(result); +} + +export function _getSend( + context: Client, + scopeId: string, + pricingName: string, + options: PricingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scopeId}/providers/Microsoft.Security/pricings/{pricingName}{?api%2Dversion}", + { + scopeId: scopeId, + pricingName: pricingName, + "api%2Dversion": "2024-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return pricingDeserializer(result.body); +} + +/** Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. */ +export async function get( + context: Client, + scopeId: string, + pricingName: string, + options: PricingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scopeId, pricingName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/pricings/options.ts b/sdk/security/arm-security/src/api/pricings/options.ts new file mode 100644 index 000000000000..e3c504123c62 --- /dev/null +++ b/sdk/security/arm-security/src/api/pricings/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface PricingsListOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface PricingsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PricingsUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PricingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/privateEndpointConnections/index.ts b/sdk/security/arm-security/src/api/privateEndpointConnections/index.ts new file mode 100644 index 000000000000..a86022233ac3 --- /dev/null +++ b/sdk/security/arm-security/src/api/privateEndpointConnections/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + PrivateEndpointConnectionsListOptionalParams, + PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + PrivateEndpointConnectionsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/privateEndpointConnections/operations.ts b/sdk/security/arm-security/src/api/privateEndpointConnections/operations.ts new file mode 100644 index 000000000000..26e39981f845 --- /dev/null +++ b/sdk/security/arm-security/src/api/privateEndpointConnections/operations.ts @@ -0,0 +1,275 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + ArmPrivateEndpointConnection, + _PrivateEndpointConnectionListResult, + _privateEndpointConnectionListResultDeserializer, +} from "../../models/models.js"; +import { + PrivateEndpointConnection, + privateEndpointConnectionSerializer, + privateEndpointConnectionDeserializer, +} from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + PrivateEndpointConnectionsListOptionalParams, + PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + PrivateEndpointConnectionsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateEndpointConnectionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_PrivateEndpointConnectionListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _privateEndpointConnectionListResultDeserializer(result.body); +} + +/** Gets all private endpoint connections for a private link. Returns the list of private endpoints that are connected or in the process of connecting to this private link. */ +export function list( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateEndpointConnectionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, privateLinkName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-01-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options: PrivateEndpointConnectionsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + privateEndpointConnectionName: privateEndpointConnectionName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "204", "200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes the specified private endpoint connection associated with the private link. This operation will disconnect the private endpoint and remove the connection configuration. */ +export function $delete( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options: PrivateEndpointConnectionsDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["202", "204", "200"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _$deleteSend( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2026-01-01", + }) as PollerLike, void>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options: PrivateEndpointConnectionsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + privateEndpointConnectionName: privateEndpointConnectionName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: privateEndpointConnectionSerializer(privateEndpointConnection), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateEndpointConnectionDeserializer(result.body); +} + +/** Update the state of specified private endpoint connection associated with the private link. This operation is typically used to approve or reject pending private endpoint connections. */ +export function createOrUpdate( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options: PrivateEndpointConnectionsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): PollerLike, PrivateEndpointConnection> { + return getLongRunningPoller(context, _createOrUpdateDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createOrUpdateSend( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + privateEndpointConnection, + options, + ), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2026-01-01", + }) as PollerLike, PrivateEndpointConnection>; +} + +export function _getSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options: PrivateEndpointConnectionsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateEndpointConnections/{privateEndpointConnectionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + privateEndpointConnectionName: privateEndpointConnectionName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateEndpointConnectionDeserializer(result.body); +} + +/** Gets the specified private endpoint connection associated with the private link. Returns the connection details, status, and configuration for a specific private endpoint. */ +export async function get( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options: PrivateEndpointConnectionsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/privateEndpointConnections/options.ts b/sdk/security/arm-security/src/api/privateEndpointConnections/options.ts new file mode 100644 index 000000000000..cd5f842fc48c --- /dev/null +++ b/sdk/security/arm-security/src/api/privateEndpointConnections/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface PrivateEndpointConnectionsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateEndpointConnectionsDeleteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface PrivateEndpointConnectionsCreateOrUpdateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface PrivateEndpointConnectionsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/privateLinkResources/index.ts b/sdk/security/arm-security/src/api/privateLinkResources/index.ts new file mode 100644 index 000000000000..a455b57d652c --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinkResources/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + PrivateLinkResourcesListOptionalParams, + PrivateLinkResourcesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/privateLinkResources/operations.ts b/sdk/security/arm-security/src/api/privateLinkResources/operations.ts new file mode 100644 index 000000000000..18da531512cc --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinkResources/operations.ts @@ -0,0 +1,135 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + errorResponseDeserializer, + _PrivateLinkGroupResourceListResult, + _privateLinkGroupResourceListResultDeserializer, +} from "../../models/models.js"; +import { + PrivateLinkGroupResource, + privateLinkGroupResourceDeserializer, +} from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + PrivateLinkResourcesListOptionalParams, + PrivateLinkResourcesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinkResourcesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_PrivateLinkGroupResourceListResult> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _privateLinkGroupResourceListResultDeserializer(result.body); +} + +/** List all private link resources in a private link. */ +export function list( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinkResourcesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, privateLinkName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + groupId: string, + options: PrivateLinkResourcesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}/privateLinkResources/{groupId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + groupId: groupId, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateLinkGroupResourceDeserializer(result.body); +} + +/** Get the specified private link resource associated with the private link. */ +export async function get( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + groupId: string, + options: PrivateLinkResourcesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, privateLinkName, groupId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/privateLinkResources/options.ts b/sdk/security/arm-security/src/api/privateLinkResources/options.ts new file mode 100644 index 000000000000..cd2cb46b9cf2 --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinkResources/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface PrivateLinkResourcesListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateLinkResourcesGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/privateLinks/index.ts b/sdk/security/arm-security/src/api/privateLinks/index.ts new file mode 100644 index 000000000000..450c13aacc85 --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinks/index.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listBySubscription, list, $delete, update, create, head, get } from "./operations.js"; +export type { + PrivateLinksListBySubscriptionOptionalParams, + PrivateLinksListOptionalParams, + PrivateLinksDeleteOptionalParams, + PrivateLinksUpdateOptionalParams, + PrivateLinksCreateOptionalParams, + PrivateLinksHeadOptionalParams, + PrivateLinksGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/privateLinks/operations.ts b/sdk/security/arm-security/src/api/privateLinks/operations.ts new file mode 100644 index 000000000000..a7c847947c38 --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinks/operations.ts @@ -0,0 +1,392 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + PrivateLinkResource, + privateLinkResourceSerializer, + privateLinkResourceDeserializer, + PrivateLinkUpdate, + privateLinkUpdateSerializer, + _PrivateLinksList, + _privateLinksListDeserializer, +} from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + PrivateLinksListBySubscriptionOptionalParams, + PrivateLinksListOptionalParams, + PrivateLinksDeleteOptionalParams, + PrivateLinksUpdateOptionalParams, + PrivateLinksCreateOptionalParams, + PrivateLinksHeadOptionalParams, + PrivateLinksGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listBySubscriptionSend( + context: Client, + options: PrivateLinksListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/privateLinks{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_PrivateLinksList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _privateLinksListDeserializer(result.body); +} + +/** Lists all the private links in the specified subscription. private links enable secure, private connectivity to Microsoft Defender for Cloud services without exposing traffic to the public internet. Use the 'nextLink' property in the response to get the next page of private links for the specified subscription. */ +export function listBySubscription( + context: Client, + options: PrivateLinksListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-01-01" }, + ); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + options: PrivateLinksListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_PrivateLinksList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _privateLinksListDeserializer(result.body); +} + +/** Lists all the private links in the specified resource group. private links enable secure, private connectivity to Microsoft Defender for Cloud services without exposing traffic to the public internet. Use the 'nextLink' property in the response to get the next page of private links for the specified resource group. */ +export function list( + context: Client, + resourceGroupName: string, + options: PrivateLinksListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-01-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["202", "204", "200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a private link resource. This operation will remove the private link infrastructure and disconnect all associated private endpoints. This operation is asynchronous and may take several minutes to complete. */ +export function $delete( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["202", "204", "200"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => _$deleteSend(context, resourceGroupName, privateLinkName, options), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2026-01-01", + }) as PollerLike, void>; +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkUpdate, + options: PrivateLinksUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: privateLinkUpdateSerializer(privateLink), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateLinkResourceDeserializer(result.body); +} + +/** Update specific properties of a private link resource. Use this operation to update mutable properties like tags without affecting the entire resource configuration. */ +export async function update( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkUpdate, + options: PrivateLinksUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend( + context, + resourceGroupName, + privateLinkName, + privateLink, + options, + ); + return _updateDeserialize(result); +} + +export function _createSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options: PrivateLinksCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: privateLinkResourceSerializer(privateLink), + }); +} + +export async function _createDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201", "202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateLinkResourceDeserializer(result.body); +} + +/** Create a private link resource. This operation creates the necessary infrastructure to enable private endpoint connections to Microsoft Defender for Cloud services. For updates to existing resources, use the PATCH operation. The operation is asynchronous and may take several minutes to complete. */ +export function create( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options: PrivateLinksCreateOptionalParams = { requestOptions: {} }, +): PollerLike, PrivateLinkResource> { + return getLongRunningPoller(context, _createDeserialize, ["200", "201", "202"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _createSend(context, resourceGroupName, privateLinkName, privateLink, options), + resourceLocationConfig: "azure-async-operation", + apiVersion: "2026-01-01", + }) as PollerLike, PrivateLinkResource>; +} + +export function _headSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksHeadOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).head({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _headDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Checks whether private link exists. */ +export async function head( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksHeadOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _headSend(context, resourceGroupName, privateLinkName, options); + return _headDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/privateLinks/{privateLinkName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + privateLinkName: privateLinkName.privateLinkName, + "api%2Dversion": "2026-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return privateLinkResourceDeserializer(result.body); +} + +/** Get a private link resource. Returns the configuration and status of private endpoint connectivity for Microsoft Defender for Cloud services in the specified region. */ +export async function get( + context: Client, + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options: PrivateLinksGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, privateLinkName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/privateLinks/options.ts b/sdk/security/arm-security/src/api/privateLinks/options.ts new file mode 100644 index 000000000000..6c3de55775ca --- /dev/null +++ b/sdk/security/arm-security/src/api/privateLinks/options.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface PrivateLinksListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateLinksListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateLinksDeleteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface PrivateLinksUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateLinksCreateOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface PrivateLinksHeadOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface PrivateLinksGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/index.ts b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/index.ts new file mode 100644 index 000000000000..2534debd5d64 --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + RegulatoryComplianceAssessmentsListOptionalParams, + RegulatoryComplianceAssessmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/operations.ts b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/operations.ts new file mode 100644 index 000000000000..1c27636e4e94 --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/operations.ts @@ -0,0 +1,145 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + RegulatoryComplianceAssessment, + regulatoryComplianceAssessmentDeserializer, + _RegulatoryComplianceAssessmentList, + _regulatoryComplianceAssessmentListDeserializer, +} from "../../models/regulatoryComplianceAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + RegulatoryComplianceAssessmentsListOptionalParams, + RegulatoryComplianceAssessmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options: RegulatoryComplianceAssessmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + regulatoryComplianceStandardName: regulatoryComplianceStandardName, + regulatoryComplianceControlName: regulatoryComplianceControlName, + "api%2Dversion": "2019-01-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_RegulatoryComplianceAssessmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _regulatoryComplianceAssessmentListDeserializer(result.body); +} + +/** Details and state of assessments mapped to selected regulatory compliance control */ +export function list( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options: RegulatoryComplianceAssessmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => + _listSend( + context, + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + options, + ), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _getSend( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + regulatoryComplianceAssessmentName: string, + options: RegulatoryComplianceAssessmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}/regulatoryComplianceAssessments/{regulatoryComplianceAssessmentName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + regulatoryComplianceStandardName: regulatoryComplianceStandardName, + regulatoryComplianceControlName: regulatoryComplianceControlName, + regulatoryComplianceAssessmentName: regulatoryComplianceAssessmentName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return regulatoryComplianceAssessmentDeserializer(result.body); +} + +/** Supported regulatory compliance details and state for selected assessment */ +export async function get( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + regulatoryComplianceAssessmentName: string, + options: RegulatoryComplianceAssessmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + regulatoryComplianceAssessmentName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/options.ts b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/options.ts new file mode 100644 index 000000000000..2a0196f758ff --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceAssessments/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface RegulatoryComplianceAssessmentsListOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface RegulatoryComplianceAssessmentsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceControls/index.ts b/sdk/security/arm-security/src/api/regulatoryComplianceControls/index.ts new file mode 100644 index 000000000000..5030233bfbaf --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceControls/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + RegulatoryComplianceControlsListOptionalParams, + RegulatoryComplianceControlsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceControls/operations.ts b/sdk/security/arm-security/src/api/regulatoryComplianceControls/operations.ts new file mode 100644 index 000000000000..f37591f6d797 --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceControls/operations.ts @@ -0,0 +1,132 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + RegulatoryComplianceControl, + regulatoryComplianceControlDeserializer, + _RegulatoryComplianceControlList, + _regulatoryComplianceControlListDeserializer, +} from "../../models/regulatoryComplianceAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + RegulatoryComplianceControlsListOptionalParams, + RegulatoryComplianceControlsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + regulatoryComplianceStandardName: string, + options: RegulatoryComplianceControlsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + regulatoryComplianceStandardName: regulatoryComplianceStandardName, + "api%2Dversion": "2019-01-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_RegulatoryComplianceControlList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _regulatoryComplianceControlListDeserializer(result.body); +} + +/** All supported regulatory compliance controls details and state for selected standard */ +export function list( + context: Client, + regulatoryComplianceStandardName: string, + options: RegulatoryComplianceControlsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, regulatoryComplianceStandardName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _getSend( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options: RegulatoryComplianceControlsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}/regulatoryComplianceControls/{regulatoryComplianceControlName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + regulatoryComplianceStandardName: regulatoryComplianceStandardName, + regulatoryComplianceControlName: regulatoryComplianceControlName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return regulatoryComplianceControlDeserializer(result.body); +} + +/** Selected regulatory compliance control details and state */ +export async function get( + context: Client, + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options: RegulatoryComplianceControlsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceControls/options.ts b/sdk/security/arm-security/src/api/regulatoryComplianceControls/options.ts new file mode 100644 index 000000000000..2ac09254fe30 --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceControls/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface RegulatoryComplianceControlsListOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface RegulatoryComplianceControlsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceStandards/index.ts b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/index.ts new file mode 100644 index 000000000000..1adc5519c127 --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + RegulatoryComplianceStandardsListOptionalParams, + RegulatoryComplianceStandardsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceStandards/operations.ts b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/operations.ts new file mode 100644 index 000000000000..fca7af2aaadb --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/operations.ts @@ -0,0 +1,121 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + RegulatoryComplianceStandard, + regulatoryComplianceStandardDeserializer, + _RegulatoryComplianceStandardList, + _regulatoryComplianceStandardListDeserializer, +} from "../../models/regulatoryComplianceAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + RegulatoryComplianceStandardsListOptionalParams, + RegulatoryComplianceStandardsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: RegulatoryComplianceStandardsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2019-01-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_RegulatoryComplianceStandardList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _regulatoryComplianceStandardListDeserializer(result.body); +} + +/** Supported regulatory compliance standards details and state */ +export function list( + context: Client, + options: RegulatoryComplianceStandardsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _getSend( + context: Client, + regulatoryComplianceStandardName: string, + options: RegulatoryComplianceStandardsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/regulatoryComplianceStandards/{regulatoryComplianceStandardName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + regulatoryComplianceStandardName: regulatoryComplianceStandardName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return regulatoryComplianceStandardDeserializer(result.body); +} + +/** Supported regulatory compliance details state for selected standard */ +export async function get( + context: Client, + regulatoryComplianceStandardName: string, + options: RegulatoryComplianceStandardsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, regulatoryComplianceStandardName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/regulatoryComplianceStandards/options.ts b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/options.ts new file mode 100644 index 000000000000..5dbc7096bffa --- /dev/null +++ b/sdk/security/arm-security/src/api/regulatoryComplianceStandards/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface RegulatoryComplianceStandardsListOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface RegulatoryComplianceStandardsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/secureScoreControlDefinitions/index.ts b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/index.ts new file mode 100644 index 000000000000..0d71c2a2f64c --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listBySubscription, list } from "./operations.js"; +export type { + SecureScoreControlDefinitionsListBySubscriptionOptionalParams, + SecureScoreControlDefinitionsListOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/secureScoreControlDefinitions/operations.ts b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/operations.ts new file mode 100644 index 000000000000..ffbf52d7f21d --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/operations.ts @@ -0,0 +1,120 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecureScoreControlDefinitionItem, + _SecureScoreControlDefinitionList, + _secureScoreControlDefinitionListDeserializer, +} from "../../models/secureScoreAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecureScoreControlDefinitionsListBySubscriptionOptionalParams, + SecureScoreControlDefinitionsListOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listBySubscriptionSend( + context: Client, + options: SecureScoreControlDefinitionsListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControlDefinitions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_SecureScoreControlDefinitionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _secureScoreControlDefinitionListDeserializer(result.body); +} + +/** For a specified subscription, list the available security controls, their assessments, and the max score */ +export function listBySubscription( + context: Client, + options: SecureScoreControlDefinitionsListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listSend( + context: Client, + options: SecureScoreControlDefinitionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/secureScoreControlDefinitions{?api%2Dversion}", + { + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecureScoreControlDefinitionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _secureScoreControlDefinitionListDeserializer(result.body); +} + +/** List the available security controls, their assessments, and the max score */ +export function list( + context: Client, + options: SecureScoreControlDefinitionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} diff --git a/sdk/security/arm-security/src/api/secureScoreControlDefinitions/options.ts b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/options.ts new file mode 100644 index 000000000000..fead87109bca --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControlDefinitions/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecureScoreControlDefinitionsListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecureScoreControlDefinitionsListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/secureScoreControls/index.ts b/sdk/security/arm-security/src/api/secureScoreControls/index.ts new file mode 100644 index 000000000000..32a5737478d1 --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControls/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listBySecureScore } from "./operations.js"; +export type { + SecureScoreControlsListOptionalParams, + SecureScoreControlsListBySecureScoreOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/secureScoreControls/operations.ts b/sdk/security/arm-security/src/api/secureScoreControls/operations.ts new file mode 100644 index 000000000000..df7c8db48f5a --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControls/operations.ts @@ -0,0 +1,126 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + _SecureScoreControlList, + _secureScoreControlListDeserializer, + SecureScoreControlDetails, +} from "../../models/secureScoreAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecureScoreControlsListOptionalParams, + SecureScoreControlsListBySecureScoreOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SecureScoreControlsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScoreControls{?api%2Dversion,%24expand}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + "%24expand": options?.expand, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecureScoreControlList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _secureScoreControlListDeserializer(result.body); +} + +/** Get all security controls within a scope */ +export function list( + context: Client, + options: SecureScoreControlsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listBySecureScoreSend( + context: Client, + secureScoreName: string, + options: SecureScoreControlsListBySecureScoreOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}/secureScoreControls{?api%2Dversion,%24expand}", + { + subscriptionId: context.subscriptionId, + secureScoreName: secureScoreName, + "api%2Dversion": "2020-01-01", + "%24expand": options?.expand, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySecureScoreDeserialize( + result: PathUncheckedResponse, +): Promise<_SecureScoreControlList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _secureScoreControlListDeserializer(result.body); +} + +/** Get all security controls for a specific initiative within a scope */ +export function listBySecureScore( + context: Client, + secureScoreName: string, + options: SecureScoreControlsListBySecureScoreOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySecureScoreSend(context, secureScoreName, options), + _listBySecureScoreDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} diff --git a/sdk/security/arm-security/src/api/secureScoreControls/options.ts b/sdk/security/arm-security/src/api/secureScoreControls/options.ts new file mode 100644 index 000000000000..bc2228e6161c --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScoreControls/options.ts @@ -0,0 +1,17 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ExpandControlsEnum } from "../../models/secureScoreAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecureScoreControlsListOptionalParams extends OperationOptions { + /** OData expand. Optional. */ + expand?: ExpandControlsEnum; +} + +/** Optional parameters. */ +export interface SecureScoreControlsListBySecureScoreOptionalParams extends OperationOptions { + /** OData expand. Optional. */ + expand?: ExpandControlsEnum; +} diff --git a/sdk/security/arm-security/src/api/secureScores/index.ts b/sdk/security/arm-security/src/api/secureScores/index.ts new file mode 100644 index 000000000000..5b1cd6036756 --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScores/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { SecureScoresListOptionalParams, SecureScoresGetOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/secureScores/operations.ts b/sdk/security/arm-security/src/api/secureScores/operations.ts new file mode 100644 index 000000000000..d4b629e11e1e --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScores/operations.ts @@ -0,0 +1,113 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecureScoreItem, + secureScoreItemDeserializer, + _SecureScoresList, + _secureScoresListDeserializer, +} from "../../models/secureScoreAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { SecureScoresListOptionalParams, SecureScoresGetOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SecureScoresListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_SecureScoresList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _secureScoresListDeserializer(result.body); +} + +/** List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. */ +export function list( + context: Client, + options: SecureScoresListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + secureScoreName: string, + options: SecureScoresGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/secureScores/{secureScoreName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + secureScoreName: secureScoreName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return secureScoreItemDeserializer(result.body); +} + +/** Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. */ +export async function get( + context: Client, + secureScoreName: string, + options: SecureScoresGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, secureScoreName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/secureScores/options.ts b/sdk/security/arm-security/src/api/secureScores/options.ts new file mode 100644 index 000000000000..b524bc1a265c --- /dev/null +++ b/sdk/security/arm-security/src/api/secureScores/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecureScoresListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecureScoresGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityCenterContext.ts b/sdk/security/arm-security/src/api/securityCenterContext.ts new file mode 100644 index 000000000000..5f2069a1c995 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityCenterContext.ts @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { logger } from "../logger.js"; +import { AzureSupportedClouds, getArmEndpoint } from "../static-helpers/cloudSettingHelpers.js"; +import { Client, ClientOptions, getClient } from "@azure-rest/core-client"; +import { TokenCredential } from "@azure/core-auth"; + +export interface SecurityCenterContext extends Client { + /** The ID of the target subscription. The value must be an UUID. */ + subscriptionId: string; +} + +/** Optional parameters for the client. */ +export interface SecurityCenterOptionalParams extends ClientOptions { + /** Specifies the Azure cloud environment for the client. */ + cloudSetting?: AzureSupportedClouds; +} + +export function createSecurityCenter( + credential: TokenCredential, + subscriptionId: string, + options: SecurityCenterOptionalParams = {}, +): SecurityCenterContext { + const endpointUrl = + options.endpoint ?? getArmEndpoint(options.cloudSetting) ?? "https://management.azure.com"; + const prefixFromOptions = options?.userAgentOptions?.userAgentPrefix; + const userAgentInfo = `azsdk-js-arm-security/6.0.0-beta.7`; + const userAgentPrefix = prefixFromOptions + ? `${prefixFromOptions} azsdk-js-api ${userAgentInfo}` + : `azsdk-js-api ${userAgentInfo}`; + const { apiVersion: _, ...updatedOptions } = { + ...options, + userAgentOptions: { userAgentPrefix }, + loggingOptions: { logger: options.loggingOptions?.logger ?? logger.info }, + credentials: { scopes: options.credentials?.scopes ?? [`${endpointUrl}/.default`] }, + }; + const clientContext = getClient(endpointUrl, credential, updatedOptions); + + if (options.apiVersion) { + logger.warning( + "This client does not support client api-version, please change it at the operation level", + ); + } + return { ...clientContext, subscriptionId } as SecurityCenterContext; +} diff --git a/sdk/security/arm-security/src/api/securityConnectorApplication/index.ts b/sdk/security/arm-security/src/api/securityConnectorApplication/index.ts new file mode 100644 index 000000000000..b9417bd44932 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplication/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { $delete, createOrUpdate, get } from "./operations.js"; +export type { + SecurityConnectorApplicationDeleteOptionalParams, + SecurityConnectorApplicationCreateOrUpdateOptionalParams, + SecurityConnectorApplicationGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityConnectorApplication/operations.ts b/sdk/security/arm-security/src/api/securityConnectorApplication/operations.ts new file mode 100644 index 000000000000..0b3ed51e04c9 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplication/operations.ts @@ -0,0 +1,194 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + Application, + applicationSerializer, + applicationDeserializer, +} from "../../models/applicationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecurityConnectorApplicationDeleteOptionalParams, + SecurityConnectorApplicationCreateOrUpdateOptionalParams, + SecurityConnectorApplicationGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options: SecurityConnectorApplicationDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete an Application over a given scope */ +export async function $delete( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options: SecurityConnectorApplicationDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend( + context, + resourceGroupName, + securityConnectorName, + applicationId, + options, + ); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + application: Application, + options: SecurityConnectorApplicationCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: applicationSerializer(application), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return applicationDeserializer(result.body); +} + +/** Creates or update a security Application on the given security connector. */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + application: Application, + options: SecurityConnectorApplicationCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + applicationId, + application, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options: SecurityConnectorApplicationGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications/{applicationId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + applicationId: applicationId, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return applicationDeserializer(result.body); +} + +/** Get a specific application for the requested scope by applicationId */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options: SecurityConnectorApplicationGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + securityConnectorName, + applicationId, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securityConnectorApplication/options.ts b/sdk/security/arm-security/src/api/securityConnectorApplication/options.ts new file mode 100644 index 000000000000..e1a66c908389 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplication/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityConnectorApplicationDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorApplicationCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorApplicationGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityConnectorApplications/index.ts b/sdk/security/arm-security/src/api/securityConnectorApplications/index.ts new file mode 100644 index 000000000000..1ab82a138388 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplications/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list } from "./operations.js"; +export type { SecurityConnectorApplicationsListOptionalParams } from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityConnectorApplications/operations.ts b/sdk/security/arm-security/src/api/securityConnectorApplications/operations.ts new file mode 100644 index 000000000000..c27a38dc11d6 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplications/operations.ts @@ -0,0 +1,74 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + _ApplicationsList, + _applicationsListDeserializer, + Application, +} from "../../models/applicationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { SecurityConnectorApplicationsListOptionalParams } from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorApplicationsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}/providers/Microsoft.Security/applications{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2022-07-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_ApplicationsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _applicationsListDeserializer(result.body); +} + +/** Get a list of all relevant applications over a security connector level scope */ +export function list( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorApplicationsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, securityConnectorName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-07-01-preview" }, + ); +} diff --git a/sdk/security/arm-security/src/api/securityConnectorApplications/options.ts b/sdk/security/arm-security/src/api/securityConnectorApplications/options.ts new file mode 100644 index 000000000000..552b1532bb4f --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectorApplications/options.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityConnectorApplicationsListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityConnectors/index.ts b/sdk/security/arm-security/src/api/securityConnectors/index.ts new file mode 100644 index 000000000000..b3c7f36dfd50 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectors/index.ts @@ -0,0 +1,12 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listByResourceGroup, $delete, update, createOrUpdate, get } from "./operations.js"; +export type { + SecurityConnectorsListOptionalParams, + SecurityConnectorsListByResourceGroupOptionalParams, + SecurityConnectorsDeleteOptionalParams, + SecurityConnectorsUpdateOptionalParams, + SecurityConnectorsCreateOrUpdateOptionalParams, + SecurityConnectorsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityConnectors/operations.ts b/sdk/security/arm-security/src/api/securityConnectors/operations.ts new file mode 100644 index 000000000000..8c522e27c3cd --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectors/operations.ts @@ -0,0 +1,339 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecurityConnector, + securityConnectorSerializer, + securityConnectorDeserializer, + _SecurityConnectorsList, + _securityConnectorsListDeserializer, +} from "../../models/securityConnectorsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecurityConnectorsListOptionalParams, + SecurityConnectorsListByResourceGroupOptionalParams, + SecurityConnectorsDeleteOptionalParams, + SecurityConnectorsUpdateOptionalParams, + SecurityConnectorsCreateOrUpdateOptionalParams, + SecurityConnectorsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SecurityConnectorsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityConnectors{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityConnectorsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityConnectorsListDeserializer(result.body); +} + +/** Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. */ +export function list( + context: Client, + options: SecurityConnectorsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2024-08-01-preview" }, + ); +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + options: SecurityConnectorsListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityConnectorsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityConnectorsListDeserializer(result.body); +} + +/** Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + options: SecurityConnectorsListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2024-08-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes a security connector. */ +export async function $delete( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceGroupName, securityConnectorName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options: SecurityConnectorsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityConnectorSerializer(securityConnector), + }); +} + +export async function _updateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityConnectorDeserializer(result.body); +} + +/** Updates a security connector */ +export async function update( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options: SecurityConnectorsUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend( + context, + resourceGroupName, + securityConnectorName, + securityConnector, + options, + ); + return _updateDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options: SecurityConnectorsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityConnectorSerializer(securityConnector), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityConnectorDeserializer(result.body); +} + +/** Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options: SecurityConnectorsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + securityConnectorName, + securityConnector, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + securityConnectorName: securityConnectorName, + "api%2Dversion": "2024-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityConnectorDeserializer(result.body); +} + +/** Retrieves details of a specific security connector */ +export async function get( + context: Client, + resourceGroupName: string, + securityConnectorName: string, + options: SecurityConnectorsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, securityConnectorName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securityConnectors/options.ts b/sdk/security/arm-security/src/api/securityConnectors/options.ts new file mode 100644 index 000000000000..0c9e47d13275 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityConnectors/options.ts @@ -0,0 +1,22 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityConnectorsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorsListByResourceGroupOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorsUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityConnectorsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityContacts/index.ts b/sdk/security/arm-security/src/api/securityContacts/index.ts new file mode 100644 index 000000000000..9daf0d4d1bd2 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityContacts/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, create, get } from "./operations.js"; +export type { + SecurityContactsListOptionalParams, + SecurityContactsDeleteOptionalParams, + SecurityContactsCreateOptionalParams, + SecurityContactsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityContacts/operations.ts b/sdk/security/arm-security/src/api/securityContacts/operations.ts new file mode 100644 index 000000000000..c05b7e56ccf3 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityContacts/operations.ts @@ -0,0 +1,211 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { + SecurityContact, + securityContactSerializer, + securityContactDeserializer, + SecurityContactName, + _SecurityContactList, + _securityContactListDeserializer, +} from "../../models/automationsAPI/models.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecurityContactsListOptionalParams, + SecurityContactsDeleteOptionalParams, + SecurityContactsCreateOptionalParams, + SecurityContactsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SecurityContactsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityContactList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityContactListDeserializer(result.body); +} + +/** List all security contact configurations for the subscription */ +export function list( + context: Client, + options: SecurityContactsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-12-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + securityContactName: SecurityContactName, + options: SecurityContactsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + securityContactName: securityContactName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete security contact configurations for the subscription */ +export async function $delete( + context: Client, + securityContactName: SecurityContactName, + options: SecurityContactsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, securityContactName, options); + return _$deleteDeserialize(result); +} + +export function _createSend( + context: Client, + securityContactName: SecurityContactName, + securityContact: SecurityContact, + options: SecurityContactsCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + securityContactName: securityContactName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityContactSerializer(securityContact), + }); +} + +export async function _createDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityContactDeserializer(result.body); +} + +/** Create security contact configurations for the subscription */ +export async function create( + context: Client, + securityContactName: SecurityContactName, + securityContact: SecurityContact, + options: SecurityContactsCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend(context, securityContactName, securityContact, options); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + securityContactName: SecurityContactName, + options: SecurityContactsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securityContacts/{securityContactName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + securityContactName: securityContactName, + "api%2Dversion": "2023-12-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityContactDeserializer(result.body); +} + +/** Get Default Security contact configurations for the subscription */ +export async function get( + context: Client, + securityContactName: SecurityContactName, + options: SecurityContactsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, securityContactName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securityContacts/options.ts b/sdk/security/arm-security/src/api/securityContacts/options.ts new file mode 100644 index 000000000000..e0d65b7765db --- /dev/null +++ b/sdk/security/arm-security/src/api/securityContacts/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityContactsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityContactsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityContactsCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityContactsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityOperators/index.ts b/sdk/security/arm-security/src/api/securityOperators/index.ts new file mode 100644 index 000000000000..5de07a05bcbe --- /dev/null +++ b/sdk/security/arm-security/src/api/securityOperators/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + SecurityOperatorsListOptionalParams, + SecurityOperatorsDeleteOptionalParams, + SecurityOperatorsCreateOrUpdateOptionalParams, + SecurityOperatorsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityOperators/operations.ts b/sdk/security/arm-security/src/api/securityOperators/operations.ts new file mode 100644 index 000000000000..c5f8a825e583 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityOperators/operations.ts @@ -0,0 +1,219 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecurityOperator, + securityOperatorDeserializer, + _SecurityOperatorList, + _securityOperatorListDeserializer, +} from "../../models/securityOperatorsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecurityOperatorsListOptionalParams, + SecurityOperatorsDeleteOptionalParams, + SecurityOperatorsCreateOrUpdateOptionalParams, + SecurityOperatorsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + pricingName: string, + options: SecurityOperatorsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + pricingName: pricingName, + "api%2Dversion": "2023-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityOperatorList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityOperatorListDeserializer(result.body); +} + +/** Lists Microsoft Defender for Cloud securityOperators in the subscription. */ +export function list( + context: Client, + pricingName: string, + options: SecurityOperatorsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, pricingName, options), + _listDeserialize, + ["200"], + { itemName: "value", apiVersion: "2023-01-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + pricingName: pricingName, + securityOperatorName: securityOperatorName, + "api%2Dversion": "2023-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete Microsoft Defender for Cloud securityOperator in the subscription. */ +export async function $delete( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, pricingName, securityOperatorName, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + pricingName: pricingName, + securityOperatorName: securityOperatorName, + "api%2Dversion": "2023-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityOperatorDeserializer(result.body); +} + +/** Creates Microsoft Defender for Cloud security operator on the given scope. */ +export async function createOrUpdate( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, pricingName, securityOperatorName, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/pricings/{pricingName}/securityOperators/{securityOperatorName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + pricingName: pricingName, + securityOperatorName: securityOperatorName, + "api%2Dversion": "2023-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityOperatorDeserializer(result.body); +} + +/** Get a specific security operator for the requested scope. */ +export async function get( + context: Client, + pricingName: string, + securityOperatorName: string, + options: SecurityOperatorsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, pricingName, securityOperatorName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securityOperators/options.ts b/sdk/security/arm-security/src/api/securityOperators/options.ts new file mode 100644 index 000000000000..e9a06a373a4a --- /dev/null +++ b/sdk/security/arm-security/src/api/securityOperators/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityOperatorsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityOperatorsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityOperatorsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityOperatorsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securitySolutions/index.ts b/sdk/security/arm-security/src/api/securitySolutions/index.ts new file mode 100644 index 000000000000..fd4ce760f9ce --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutions/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + SecuritySolutionsListOptionalParams, + SecuritySolutionsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securitySolutions/operations.ts b/sdk/security/arm-security/src/api/securitySolutions/operations.ts new file mode 100644 index 000000000000..1a208e440bf1 --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutions/operations.ts @@ -0,0 +1,130 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecuritySolution, + securitySolutionDeserializer, + _SecuritySolutionList, + _securitySolutionListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecuritySolutionsListOptionalParams, + SecuritySolutionsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SecuritySolutionsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutions{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecuritySolutionList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securitySolutionListDeserializer(result.body); +} + +/** Gets a list of Security Solutions for the subscription. */ +export function list( + context: Client, + options: SecuritySolutionsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + securitySolutionName: string, + options: SecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutions/{securitySolutionName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + securitySolutionName: securitySolutionName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securitySolutionDeserializer(result.body); +} + +/** Gets a specific Security Solution. */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + securitySolutionName: string, + options: SecuritySolutionsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + ascLocation, + securitySolutionName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securitySolutions/options.ts b/sdk/security/arm-security/src/api/securitySolutions/options.ts new file mode 100644 index 000000000000..8d2ea008b062 --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutions/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecuritySolutionsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecuritySolutionsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securitySolutionsReferenceData/index.ts b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/index.ts new file mode 100644 index 000000000000..b6f5634b03cf --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listByHomeRegion, list } from "./operations.js"; +export type { + SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + SecuritySolutionsReferenceDataListOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securitySolutionsReferenceData/operations.ts b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/operations.ts new file mode 100644 index 000000000000..07a2a4e19ff3 --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/operations.ts @@ -0,0 +1,109 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecuritySolutionsReferenceDataList, + securitySolutionsReferenceDataListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + SecuritySolutionsReferenceDataListOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/securitySolutionsReferenceData{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securitySolutionsReferenceDataListDeserializer(result.body); +} + +/** Gets list of all supported Security Solutions for subscription and location. */ +export async function listByHomeRegion( + context: Client, + ascLocation: string, + options: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listByHomeRegionSend(context, ascLocation, options); + return _listByHomeRegionDeserialize(result); +} + +export function _listSend( + context: Client, + options: SecuritySolutionsReferenceDataListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/securitySolutionsReferenceData{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securitySolutionsReferenceDataListDeserializer(result.body); +} + +/** Gets a list of all supported Security Solutions for the subscription. */ +export async function list( + context: Client, + options: SecuritySolutionsReferenceDataListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend(context, options); + return _listDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securitySolutionsReferenceData/options.ts b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/options.ts new file mode 100644 index 000000000000..724863dfd14e --- /dev/null +++ b/sdk/security/arm-security/src/api/securitySolutionsReferenceData/options.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecuritySolutionsReferenceDataListByHomeRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecuritySolutionsReferenceDataListOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/securityStandards/index.ts b/sdk/security/arm-security/src/api/securityStandards/index.ts new file mode 100644 index 000000000000..a806df526b53 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityStandards/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + SecurityStandardsListOptionalParams, + SecurityStandardsDeleteOptionalParams, + SecurityStandardsCreateOrUpdateOptionalParams, + SecurityStandardsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/securityStandards/operations.ts b/sdk/security/arm-security/src/api/securityStandards/operations.ts new file mode 100644 index 000000000000..aa5a36e0204b --- /dev/null +++ b/sdk/security/arm-security/src/api/securityStandards/operations.ts @@ -0,0 +1,220 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + SecurityStandard, + securityStandardSerializer, + securityStandardDeserializer, + _SecurityStandardList, + _securityStandardListDeserializer, +} from "../../models/securityStandardsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SecurityStandardsListOptionalParams, + SecurityStandardsDeleteOptionalParams, + SecurityStandardsCreateOrUpdateOptionalParams, + SecurityStandardsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: SecurityStandardsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/securityStandards{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityStandardList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _securityStandardListDeserializer(result.body); +} + +/** Get a list of all relevant security standards over a scope */ +export function list( + context: Client, + scope: string, + options: SecurityStandardsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2024-08-01" }, + ); +} + +export function _$deleteSend( + context: Client, + scope: string, + standardId: string, + options: SecurityStandardsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/securityStandards/{standardId}{?api%2Dversion}", + { + scope: scope, + standardId: standardId, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a security standard over a given scope */ +export async function $delete( + context: Client, + scope: string, + standardId: string, + options: SecurityStandardsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, scope, standardId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + scope: string, + standardId: string, + standard: SecurityStandard, + options: SecurityStandardsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/securityStandards/{standardId}{?api%2Dversion}", + { + scope: scope, + standardId: standardId, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: securityStandardSerializer(standard), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return securityStandardDeserializer(result.body); +} + +/** Creates or updates a security standard over a given scope */ +export async function createOrUpdate( + context: Client, + scope: string, + standardId: string, + standard: SecurityStandard, + options: SecurityStandardsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, scope, standardId, standard, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + scope: string, + standardId: string, + options: SecurityStandardsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/securityStandards/{standardId}{?api%2Dversion}", + { + scope: scope, + standardId: standardId, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return securityStandardDeserializer(result.body); +} + +/** Get a specific security standard for the requested scope by standardId */ +export async function get( + context: Client, + scope: string, + standardId: string, + options: SecurityStandardsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, standardId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/securityStandards/options.ts b/sdk/security/arm-security/src/api/securityStandards/options.ts new file mode 100644 index 000000000000..7ccfcad313a6 --- /dev/null +++ b/sdk/security/arm-security/src/api/securityStandards/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SecurityStandardsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityStandardsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityStandardsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SecurityStandardsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/sensitivitySettings/index.ts b/sdk/security/arm-security/src/api/sensitivitySettings/index.ts new file mode 100644 index 000000000000..b042140eb955 --- /dev/null +++ b/sdk/security/arm-security/src/api/sensitivitySettings/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, createOrUpdate, get } from "./operations.js"; +export type { + SensitivitySettingsListOptionalParams, + SensitivitySettingsCreateOrUpdateOptionalParams, + SensitivitySettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/sensitivitySettings/operations.ts b/sdk/security/arm-security/src/api/sensitivitySettings/operations.ts new file mode 100644 index 000000000000..267800d6fb36 --- /dev/null +++ b/sdk/security/arm-security/src/api/sensitivitySettings/operations.ts @@ -0,0 +1,155 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + GetSensitivitySettingsResponse, + getSensitivitySettingsResponseDeserializer, + UpdateSensitivitySettingsRequest, + updateSensitivitySettingsRequestSerializer, + GetSensitivitySettingsListResponse, + getSensitivitySettingsListResponseDeserializer, +} from "../../models/sensitivitySettingsAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SensitivitySettingsListOptionalParams, + SensitivitySettingsCreateOrUpdateOptionalParams, + SensitivitySettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SensitivitySettingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/sensitivitySettings{?api%2Dversion}", + { + "api%2Dversion": "2023-02-15-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return getSensitivitySettingsListResponseDeserializer(result.body); +} + +/** Gets a list with a single sensitivity settings resource */ +export async function list( + context: Client, + options: SensitivitySettingsListOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _listSend(context, options); + return _listDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + sensitivitySettings: UpdateSensitivitySettingsRequest, + options: SensitivitySettingsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/sensitivitySettings/current{?api%2Dversion}", + { + "api%2Dversion": "2023-02-15-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: updateSensitivitySettingsRequestSerializer(sensitivitySettings), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return getSensitivitySettingsResponseDeserializer(result.body); +} + +/** Create or update data sensitivity settings for sensitive data discovery */ +export async function createOrUpdate( + context: Client, + sensitivitySettings: UpdateSensitivitySettingsRequest, + options: SensitivitySettingsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, sensitivitySettings, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + options: SensitivitySettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/providers/Microsoft.Security/sensitivitySettings/current{?api%2Dversion}", + { + "api%2Dversion": "2023-02-15-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return getSensitivitySettingsResponseDeserializer(result.body); +} + +/** Gets data sensitivity settings for sensitive data discovery */ +export async function get( + context: Client, + options: SensitivitySettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/sensitivitySettings/options.ts b/sdk/security/arm-security/src/api/sensitivitySettings/options.ts new file mode 100644 index 000000000000..efc22059aa50 --- /dev/null +++ b/sdk/security/arm-security/src/api/sensitivitySettings/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SensitivitySettingsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SensitivitySettingsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SensitivitySettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/index.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/index.ts new file mode 100644 index 000000000000..5d02e78f060f --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listByExtendedResource, $delete, createOrUpdate, get } from "./operations.js"; +export type { + ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ServerVulnerabilityAssessmentDeleteOptionalParams, + ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/operations.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/operations.ts new file mode 100644 index 000000000000..4722143b46ff --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/operations.ts @@ -0,0 +1,282 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + ServerVulnerabilityAssessment, + serverVulnerabilityAssessmentDeserializer, + ServerVulnerabilityAssessmentsList, + serverVulnerabilityAssessmentsListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ServerVulnerabilityAssessmentDeleteOptionalParams, + ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listByExtendedResourceSend( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + resourceNamespace: resourceNamespace, + resourceType: resourceType, + resourceName: resourceName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByExtendedResourceDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return serverVulnerabilityAssessmentsListDeserializer(result.body); +} + +/** Gets a list of server vulnerability assessment onboarding statuses on a given resource. */ +export async function listByExtendedResource( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams = { + requestOptions: {}, + }, +): Promise { + const result = await _listByExtendedResourceSend( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ); + return _listByExtendedResourceDeserialize(result); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + resourceNamespace: resourceNamespace, + resourceType: resourceType, + resourceName: resourceName, + serverVulnerabilityAssessment: "default", + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "202", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Removing server vulnerability assessment from a resource. */ +export function $delete( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentDeleteOptionalParams = { requestOptions: {} }, +): PollerLike, void> { + return getLongRunningPoller(context, _$deleteDeserialize, ["200", "202", "204"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => + _$deleteSend( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ), + resourceLocationConfig: "location", + apiVersion: "2020-01-01", + }) as PollerLike, void>; +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + resourceNamespace: resourceNamespace, + resourceType: resourceType, + resourceName: resourceName, + serverVulnerabilityAssessment: "default", + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["202"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return serverVulnerabilityAssessmentDeserializer(result.body); +} + +/** Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceNamespace}/{resourceType}/{resourceName}/providers/Microsoft.Security/serverVulnerabilityAssessments/{serverVulnerabilityAssessment}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + resourceNamespace: resourceNamespace, + resourceType: resourceType, + resourceName: resourceName, + serverVulnerabilityAssessment: "default", + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return serverVulnerabilityAssessmentDeserializer(result.body); +} + +/** Gets a server vulnerability assessment onboarding statuses on a given resource. */ +export async function get( + context: Client, + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options: ServerVulnerabilityAssessmentGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/options.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/options.ts new file mode 100644 index 000000000000..e9701895718b --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessment/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentDeleteOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; +} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/index.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/index.ts new file mode 100644 index 000000000000..aeb308429f97 --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listBySubscription, $delete, createOrUpdate, get } from "./operations.js"; +export type { + ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentsSettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/operations.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/operations.ts new file mode 100644 index 000000000000..11cd1dfe6837 --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/operations.ts @@ -0,0 +1,230 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + serverVulnerabilityAssessmentsSettingUnionSerializer, + serverVulnerabilityAssessmentsSettingUnionDeserializer, + ServerVulnerabilityAssessmentsSettingUnion, + ServerVulnerabilityAssessmentsSettingKindName, + _ServerVulnerabilityAssessmentsSettingsList, + _serverVulnerabilityAssessmentsSettingsListDeserializer, +} from "../../models/serverVulnerabilityAssessmentsSettingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentsSettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listBySubscriptionSend( + context: Client, + options: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2023-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_ServerVulnerabilityAssessmentsSettingsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _serverVulnerabilityAssessmentsSettingsListDeserializer(result.body); +} + +/** Get a list of all the server vulnerability assessments settings over a subscription level scope */ +export function listBySubscription( + context: Client, + options: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams = { + requestOptions: {}, + }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2023-05-01" }, + ); +} + +export function _$deleteSend( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingKind: settingKind, + "api%2Dversion": "2023-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete the server vulnerability assessments setting of the requested kind from the subscription */ +export async function $delete( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, settingKind, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, + options: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingKind: settingKind, + "api%2Dversion": "2023-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: serverVulnerabilityAssessmentsSettingUnionSerializer( + serverVulnerabilityAssessmentsSetting, + ), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return serverVulnerabilityAssessmentsSettingUnionDeserializer(result.body); +} + +/** Create or update a server vulnerability assessments setting of the requested kind on the subscription */ +export async function createOrUpdate( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, + options: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams = { + requestOptions: {}, + }, +): Promise { + const result = await _createOrUpdateSend( + context, + settingKind, + serverVulnerabilityAssessmentsSetting, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options: ServerVulnerabilityAssessmentsSettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/serverVulnerabilityAssessmentsSettings/{settingKind}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingKind: settingKind, + "api%2Dversion": "2023-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return serverVulnerabilityAssessmentsSettingUnionDeserializer(result.body); +} + +/** Get a server vulnerability assessments setting of the requested kind, that is set on the subscription */ +export async function get( + context: Client, + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options: ServerVulnerabilityAssessmentsSettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, settingKind, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/options.ts b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/options.ts new file mode 100644 index 000000000000..ea45a98bb2fb --- /dev/null +++ b/sdk/security/arm-security/src/api/serverVulnerabilityAssessmentsSettings/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface ServerVulnerabilityAssessmentsSettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/settings/index.ts b/sdk/security/arm-security/src/api/settings/index.ts new file mode 100644 index 000000000000..48807518d685 --- /dev/null +++ b/sdk/security/arm-security/src/api/settings/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, update, get } from "./operations.js"; +export type { + SettingsListOptionalParams, + SettingsUpdateOptionalParams, + SettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/settings/operations.ts b/sdk/security/arm-security/src/api/settings/operations.ts new file mode 100644 index 000000000000..c0bf1f487437 --- /dev/null +++ b/sdk/security/arm-security/src/api/settings/operations.ts @@ -0,0 +1,166 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer, SettingName } from "../../models/common/models.js"; +import { + settingUnionSerializer, + settingUnionDeserializer, + SettingUnion, + _SettingsList, + _settingsListDeserializer, +} from "../../models/settingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SettingsListOptionalParams, + SettingsUpdateOptionalParams, + SettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: SettingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2022-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_SettingsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _settingsListDeserializer(result.body); +} + +/** Settings about different configurations in Microsoft Defender for Cloud */ +export function list( + context: Client, + options: SettingsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2022-05-01" }, + ); +} + +export function _updateSend( + context: Client, + settingName: SettingName, + setting: SettingUnion, + options: SettingsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingName: settingName, + "api%2Dversion": "2022-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: settingUnionSerializer(setting), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return settingUnionDeserializer(result.body); +} + +/** updating settings about different configurations in Microsoft Defender for Cloud */ +export async function update( + context: Client, + settingName: SettingName, + setting: SettingUnion, + options: SettingsUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend(context, settingName, setting, options); + return _updateDeserialize(result); +} + +export function _getSend( + context: Client, + settingName: SettingName, + options: SettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/settings/{settingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + settingName: settingName, + "api%2Dversion": "2022-05-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return settingUnionDeserializer(result.body); +} + +/** Settings of different configurations in Microsoft Defender for Cloud */ +export async function get( + context: Client, + settingName: SettingName, + options: SettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, settingName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/settings/options.ts b/sdk/security/arm-security/src/api/settings/options.ts new file mode 100644 index 000000000000..21dc39644c05 --- /dev/null +++ b/sdk/security/arm-security/src/api/settings/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SettingsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SettingsUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/index.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/index.ts new file mode 100644 index 000000000000..4d30c83ac372 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { add, list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/operations.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/operations.ts new file mode 100644 index 000000000000..bc0074340f56 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/operations.ts @@ -0,0 +1,272 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + RuleResults, + ruleResultsDeserializer, + ruleResultsInputSerializer, + RulesResults, + rulesResultsDeserializer, + rulesResultsInputSerializer, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _addSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: !options["body"] ? options["body"] : rulesResultsInputSerializer(options["body"]), + }); +} + +export async function _addDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return rulesResultsDeserializer(result.body); +} + +/** Set a list of baseline rules. Will overwrite any previously existing results (for all rules). */ +export async function add( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _addSend(context, resourceId, options); + return _addDeserialize(result); +} + +export function _listSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return rulesResultsDeserializer(result.body); +} + +/** Gets the results for all rules in the Baseline. */ +export function list( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceId, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-04-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + ruleId: ruleId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes a rule from the Baseline of a given database. */ +export async function $delete( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceId, ruleId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + ruleId: ruleId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: !options["body"] ? options["body"] : ruleResultsInputSerializer(options["body"]), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ruleResultsDeserializer(result.body); +} + +/** Creates a Baseline for a rule in a database. Will overwrite any previously existing results. */ +export async function createOrUpdate( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams = { + requestOptions: {}, + }, +): Promise { + const result = await _createOrUpdateSend(context, resourceId, ruleId, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/baselineRules/{ruleId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + ruleId: ruleId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return ruleResultsDeserializer(result.body); +} + +/** Gets the results for a given rule in the Baseline. */ +export async function get( + context: Client, + resourceId: string, + ruleId: string, + options: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, ruleId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/options.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/options.ts new file mode 100644 index 000000000000..c838c5ea5938 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentBaselineRules/options.ts @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { + RuleResultsInput, + RulesResultsInput, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; + /** The content of the action request */ + body?: RulesResultsInput; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentBaselineRulesListOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; + /** The baseline results for this rule. */ + body?: RuleResultsInput; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/index.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/index.ts new file mode 100644 index 000000000000..c1dd5246c823 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get } from "./operations.js"; +export type { + SqlVulnerabilityAssessmentScanResultsListOptionalParams, + SqlVulnerabilityAssessmentScanResultsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/operations.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/operations.ts new file mode 100644 index 000000000000..afeaf2f36b04 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/operations.ts @@ -0,0 +1,128 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + ScanResult, + scanResultDeserializer, + _ScanResults, + _scanResultsDeserializer, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SqlVulnerabilityAssessmentScanResultsListOptionalParams, + SqlVulnerabilityAssessmentScanResultsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scanId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScanResultsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + scanId: scanId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_ScanResults> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _scanResultsDeserializer(result.body); +} + +/** Gets a list of scan results for a single scan record. */ +export function list( + context: Client, + scanId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScanResultsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scanId, resourceId, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-04-01-preview" }, + ); +} + +export function _getSend( + context: Client, + scanId: string, + scanResultId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScanResultsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}/scanResults/{scanResultId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + scanId: scanId, + scanResultId: scanResultId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return scanResultDeserializer(result.body); +} + +/** Gets the scan results of a single rule in a scan record. */ +export async function get( + context: Client, + scanId: string, + scanResultId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScanResultsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scanId, scanResultId, resourceId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/options.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/options.ts new file mode 100644 index 000000000000..e530b3c4d4ba --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScanResults/options.ts @@ -0,0 +1,14 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScanResultsListOptionalParams extends OperationOptions { + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScanResultsGetOptionalParams extends OperationOptions { + databaseName?: string; +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/index.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/index.ts new file mode 100644 index 000000000000..bb2fc6dd13fd --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, get, getScanOperationResult, initiateScan } from "./operations.js"; +export type { + SqlVulnerabilityAssessmentScansListOptionalParams, + SqlVulnerabilityAssessmentScansGetOptionalParams, + SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/operations.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/operations.ts new file mode 100644 index 000000000000..e95e76b7959d --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/operations.ts @@ -0,0 +1,238 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SqlVulnerabilityAssessmentScanOperationResult, + sqlVulnerabilityAssessmentScanOperationResultDeserializer, + ScanV2, + scanV2Deserializer, + _ScansV2, + _scansV2Deserializer, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { getLongRunningPoller } from "../../static-helpers/pollingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SqlVulnerabilityAssessmentScansListOptionalParams, + SqlVulnerabilityAssessmentScansGetOptionalParams, + SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +export function _listSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentScansListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_ScansV2> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _scansV2Deserializer(result.body); +} + +/** Gets a list of scan records. */ +export function list( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentScansListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceId, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2026-04-01-preview" }, + ); +} + +export function _getSend( + context: Client, + scanId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScansGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/{scanId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + scanId: scanId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return scanV2Deserializer(result.body); +} + +/** Gets the scan details of a single scan record. */ +export async function get( + context: Client, + scanId: string, + resourceId: string, + options: SqlVulnerabilityAssessmentScansGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scanId, resourceId, options); + return _getDeserialize(result); +} + +export function _getScanOperationResultSend( + context: Client, + resourceId: string, + operationId: string, + options: SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams = { + requestOptions: {}, + }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/scanOperationResults/{operationId}{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + operationId: operationId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getScanOperationResultDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return sqlVulnerabilityAssessmentScanOperationResultDeserializer(result.body); +} + +/** Gets the result of a scan operation initiated by the InitiateScan action. */ +export async function getScanOperationResult( + context: Client, + resourceId: string, + operationId: string, + options: SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams = { + requestOptions: {}, + }, +): Promise { + const result = await _getScanOperationResultSend(context, resourceId, operationId, options); + return _getScanOperationResultDeserialize(result); +} + +export function _initiateScanSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default/scans/initiateScan{?api%2Dversion,databaseName}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + databaseName: options?.databaseName, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _initiateScanDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["202", "200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return sqlVulnerabilityAssessmentScanOperationResultDeserializer(result.body); +} + +/** Initiates a vulnerability assessment scan. */ +export function initiateScan( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams = { requestOptions: {} }, +): PollerLike< + OperationState, + SqlVulnerabilityAssessmentScanOperationResult +> { + return getLongRunningPoller(context, _initiateScanDeserialize, ["202", "200", "201"], { + updateIntervalInMs: options?.updateIntervalInMs, + abortSignal: options?.abortSignal, + getInitialResponse: () => _initiateScanSend(context, resourceId, options), + resourceLocationConfig: "location", + apiVersion: "2026-04-01-preview", + }) as PollerLike< + OperationState, + SqlVulnerabilityAssessmentScanOperationResult + >; +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/options.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/options.ts new file mode 100644 index 000000000000..64fa8aa6dd57 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentScans/options.ts @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScansListOptionalParams extends OperationOptions { + /** The name of the database to assess. Required when the API is called on the parent resource (e.g., server level) rather than on a specific database resource, since the database name is not part of the resource URI. This is the only way to assess system databases (e.g., master), which cannot be referenced directly in the resource URI. */ + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScansGetOptionalParams extends OperationOptions { + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams extends OperationOptions { + databaseName?: string; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentScansInitiateScanOptionalParams extends OperationOptions { + /** Delay to wait until next poll, in milliseconds. */ + updateIntervalInMs?: number; + databaseName?: string; +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/index.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/index.ts new file mode 100644 index 000000000000..40c652b6f180 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { $delete, createOrUpdate, get } from "./operations.js"; +export type { + SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentSettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/operations.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/operations.ts new file mode 100644 index 000000000000..e4764e35b1fe --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/operations.ts @@ -0,0 +1,156 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SqlVulnerabilityAssessmentSettings, + sqlVulnerabilityAssessmentSettingsSerializer, + sqlVulnerabilityAssessmentSettingsDeserializer, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentSettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _$deleteSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default{?api%2Dversion}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes the SQL Vulnerability Assessment settings. */ +export async function $delete( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default{?api%2Dversion}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: !options["body"] + ? options["body"] + : sqlVulnerabilityAssessmentSettingsSerializer(options["body"]), + }); +} + +export async function _createOrUpdateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return sqlVulnerabilityAssessmentSettingsDeserializer(result.body); +} + +/** Creates or updates the SQL Vulnerability Assessment settings. */ +export async function createOrUpdate( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend(context, resourceId, options); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/sqlVulnerabilityAssessments/default{?api%2Dversion}", + { + resourceId: resourceId, + "api%2Dversion": "2026-04-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return sqlVulnerabilityAssessmentSettingsDeserializer(result.body); +} + +/** Gets the SQL Vulnerability Assessment settings. */ +export async function get( + context: Client, + resourceId: string, + options: SqlVulnerabilityAssessmentSettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/options.ts b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/options.ts new file mode 100644 index 000000000000..c15225f0ffd1 --- /dev/null +++ b/sdk/security/arm-security/src/api/sqlVulnerabilityAssessmentSettings/options.ts @@ -0,0 +1,17 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SqlVulnerabilityAssessmentSettings } from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentSettingsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams extends OperationOptions { + /** The SQL Vulnerability Assessment settings. */ + body?: SqlVulnerabilityAssessmentSettings; +} + +/** Optional parameters. */ +export interface SqlVulnerabilityAssessmentSettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/standardAssignments/index.ts b/sdk/security/arm-security/src/api/standardAssignments/index.ts new file mode 100644 index 000000000000..043c2eea9efc --- /dev/null +++ b/sdk/security/arm-security/src/api/standardAssignments/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, create, get } from "./operations.js"; +export type { + StandardAssignmentsListOptionalParams, + StandardAssignmentsDeleteOptionalParams, + StandardAssignmentsCreateOptionalParams, + StandardAssignmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/standardAssignments/operations.ts b/sdk/security/arm-security/src/api/standardAssignments/operations.ts new file mode 100644 index 000000000000..2d4e66b134e7 --- /dev/null +++ b/sdk/security/arm-security/src/api/standardAssignments/operations.ts @@ -0,0 +1,226 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { errorResponseDeserializer } from "../../models/models.js"; +import { + StandardAssignment, + standardAssignmentSerializer, + standardAssignmentDeserializer, + _StandardAssignmentsList, + _standardAssignmentsListDeserializer, +} from "../../models/securityStandardsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + StandardAssignmentsListOptionalParams, + StandardAssignmentsDeleteOptionalParams, + StandardAssignmentsCreateOptionalParams, + StandardAssignmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + scope: string, + options: StandardAssignmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/standardAssignments{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_StandardAssignmentsList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return _standardAssignmentsListDeserializer(result.body); +} + +/** Get a list of all relevant standard assignments over a scope */ +export function list( + context: Client, + scope: string, + options: StandardAssignmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2024-08-01" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceId: string, + standardAssignmentName: string, + options: StandardAssignmentsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}{?api%2Dversion}", + { + resourceId: resourceId, + standardAssignmentName: standardAssignmentName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return; +} + +/** This operation deletes a standard assignment, given its name and the scope it was created in. The scope of a standard assignment is the part of its ID preceding '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. */ +export async function $delete( + context: Client, + resourceId: string, + standardAssignmentName: string, + options: StandardAssignmentsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceId, standardAssignmentName, options); + return _$deleteDeserialize(result); +} + +export function _createSend( + context: Client, + resourceId: string, + standardAssignmentName: string, + standardAssignment: StandardAssignment, + options: StandardAssignmentsCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}{?api%2Dversion}", + { + resourceId: resourceId, + standardAssignmentName: standardAssignmentName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: standardAssignmentSerializer(standardAssignment), + }); +} + +export async function _createDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return standardAssignmentDeserializer(result.body); +} + +/** This operation creates or updates a standard assignment with the given scope and name. standard assignments apply to all resources contained within their scope. For example, when you assign a policy at resource group scope, that policy applies to all resources in the group. */ +export async function create( + context: Client, + resourceId: string, + standardAssignmentName: string, + standardAssignment: StandardAssignment, + options: StandardAssignmentsCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend( + context, + resourceId, + standardAssignmentName, + standardAssignment, + options, + ); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + resourceId: string, + standardAssignmentName: string, + options: StandardAssignmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+resourceId}/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}{?api%2Dversion}", + { + resourceId: resourceId, + standardAssignmentName: standardAssignmentName, + "api%2Dversion": "2024-08-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = errorResponseDeserializer(result.body); + + throw error; + } + + return standardAssignmentDeserializer(result.body); +} + +/** This operation retrieves a single standard assignment, given its name and the scope it was created at. */ +export async function get( + context: Client, + resourceId: string, + standardAssignmentName: string, + options: StandardAssignmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceId, standardAssignmentName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/standardAssignments/options.ts b/sdk/security/arm-security/src/api/standardAssignments/options.ts new file mode 100644 index 000000000000..711a28c2517b --- /dev/null +++ b/sdk/security/arm-security/src/api/standardAssignments/options.ts @@ -0,0 +1,16 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface StandardAssignmentsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardAssignmentsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardAssignmentsCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardAssignmentsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/standards/index.ts b/sdk/security/arm-security/src/api/standards/index.ts new file mode 100644 index 000000000000..827acaf77e3c --- /dev/null +++ b/sdk/security/arm-security/src/api/standards/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listBySubscription, list, $delete, createOrUpdate, get } from "./operations.js"; +export type { + StandardsListBySubscriptionOptionalParams, + StandardsListOptionalParams, + StandardsDeleteOptionalParams, + StandardsCreateOrUpdateOptionalParams, + StandardsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/standards/operations.ts b/sdk/security/arm-security/src/api/standards/operations.ts new file mode 100644 index 000000000000..02452fa38e38 --- /dev/null +++ b/sdk/security/arm-security/src/api/standards/operations.ts @@ -0,0 +1,275 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + Standard, + standardSerializer, + standardDeserializer, + _StandardList, + _standardListDeserializer, +} from "../../models/standardsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + StandardsListBySubscriptionOptionalParams, + StandardsListOptionalParams, + StandardsDeleteOptionalParams, + StandardsCreateOrUpdateOptionalParams, + StandardsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listBySubscriptionSend( + context: Client, + options: StandardsListBySubscriptionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/standards{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listBySubscriptionDeserialize( + result: PathUncheckedResponse, +): Promise<_StandardList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _standardListDeserializer(result.body); +} + +/** Get a list of all relevant security standards over a subscription level scope. */ +export function listBySubscription( + context: Client, + options: StandardsListBySubscriptionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listBySubscriptionSend(context, options), + _listBySubscriptionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2021-08-01-preview" }, + ); +} + +export function _listSend( + context: Client, + resourceGroupName: string, + options: StandardsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_StandardList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _standardListDeserializer(result.body); +} + +/** Get security standards on all your resources inside a scope */ +export function list( + context: Client, + resourceGroupName: string, + options: StandardsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, resourceGroupName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2021-08-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + resourceGroupName: string, + standardId: string, + options: StandardsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + standardId: standardId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Delete a security standard on a scope. */ +export async function $delete( + context: Client, + resourceGroupName: string, + standardId: string, + options: StandardsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, resourceGroupName, standardId, options); + return _$deleteDeserialize(result); +} + +export function _createOrUpdateSend( + context: Client, + resourceGroupName: string, + standardId: string, + standard: Standard, + options: StandardsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + standardId: standardId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: standardSerializer(standard), + }); +} + +export async function _createOrUpdateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200", "201"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return standardDeserializer(result.body); +} + +/** Create a security standard on the given scope. Available only for custom standards. Will create/update the required standard definitions. */ +export async function createOrUpdate( + context: Client, + resourceGroupName: string, + standardId: string, + standard: Standard, + options: StandardsCreateOrUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createOrUpdateSend( + context, + resourceGroupName, + standardId, + standard, + options, + ); + return _createOrUpdateDeserialize(result); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + standardId: string, + options: StandardsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/standards/{standardId}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + standardId: standardId, + "api%2Dversion": "2021-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return standardDeserializer(result.body); +} + +/** Get a specific security standard for the requested scope */ +export async function get( + context: Client, + resourceGroupName: string, + standardId: string, + options: StandardsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, resourceGroupName, standardId, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/standards/options.ts b/sdk/security/arm-security/src/api/standards/options.ts new file mode 100644 index 000000000000..3d6e69c77b0c --- /dev/null +++ b/sdk/security/arm-security/src/api/standards/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface StandardsListBySubscriptionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardsCreateOrUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface StandardsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/subAssessments/index.ts b/sdk/security/arm-security/src/api/subAssessments/index.ts new file mode 100644 index 000000000000..0fa107686e86 --- /dev/null +++ b/sdk/security/arm-security/src/api/subAssessments/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { listAll, list, get } from "./operations.js"; +export type { + SubAssessmentsListAllOptionalParams, + SubAssessmentsListOptionalParams, + SubAssessmentsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/subAssessments/operations.ts b/sdk/security/arm-security/src/api/subAssessments/operations.ts new file mode 100644 index 000000000000..e97ba02eb0de --- /dev/null +++ b/sdk/security/arm-security/src/api/subAssessments/operations.ts @@ -0,0 +1,181 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecuritySubAssessment, + securitySubAssessmentDeserializer, + _SecuritySubAssessmentList, + _securitySubAssessmentListDeserializer, +} from "../../models/subAssessmentsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + SubAssessmentsListAllOptionalParams, + SubAssessmentsListOptionalParams, + SubAssessmentsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listAllSend( + context: Client, + scope: string, + options: SubAssessmentsListAllOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/subAssessments{?api%2Dversion}", + { + scope: scope, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listAllDeserialize( + result: PathUncheckedResponse, +): Promise<_SecuritySubAssessmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securitySubAssessmentListDeserializer(result.body); +} + +/** Get security sub-assessments on all your scanned resources inside a subscription scope */ +export function listAll( + context: Client, + scope: string, + options: SubAssessmentsListAllOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listAllSend(context, scope, options), + _listAllDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _listSend( + context: Client, + scope: string, + assessmentName: string, + options: SubAssessmentsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_SecuritySubAssessmentList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securitySubAssessmentListDeserializer(result.body); +} + +/** Get security sub-assessments on all your scanned resources inside a scope */ +export function list( + context: Client, + scope: string, + assessmentName: string, + options: SubAssessmentsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, scope, assessmentName, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2019-01-01-preview" }, + ); +} + +export function _getSend( + context: Client, + scope: string, + assessmentName: string, + subAssessmentName: string, + options: SubAssessmentsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/{+scope}/providers/Microsoft.Security/assessments/{assessmentName}/subAssessments/{subAssessmentName}{?api%2Dversion}", + { + scope: scope, + assessmentName: assessmentName, + subAssessmentName: subAssessmentName, + "api%2Dversion": "2019-01-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securitySubAssessmentDeserializer(result.body); +} + +/** Get a security sub-assessment on your scanned resource */ +export async function get( + context: Client, + scope: string, + assessmentName: string, + subAssessmentName: string, + options: SubAssessmentsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, scope, assessmentName, subAssessmentName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/subAssessments/options.ts b/sdk/security/arm-security/src/api/subAssessments/options.ts new file mode 100644 index 000000000000..1fbfc1608405 --- /dev/null +++ b/sdk/security/arm-security/src/api/subAssessments/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface SubAssessmentsListAllOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SubAssessmentsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface SubAssessmentsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/tasks/index.ts b/sdk/security/arm-security/src/api/tasks/index.ts new file mode 100644 index 000000000000..a3d770fba193 --- /dev/null +++ b/sdk/security/arm-security/src/api/tasks/index.ts @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { + list, + updateSubscriptionLevelTaskState, + listByHomeRegion, + getSubscriptionLevelTask, + updateResourceGroupLevelTaskState, + listByResourceGroup, + getResourceGroupLevelTask, +} from "./operations.js"; +export type { + TasksListOptionalParams, + TasksUpdateSubscriptionLevelTaskStateOptionalParams, + TasksListByHomeRegionOptionalParams, + TasksGetSubscriptionLevelTaskOptionalParams, + TasksUpdateResourceGroupLevelTaskStateOptionalParams, + TasksListByResourceGroupOptionalParams, + TasksGetResourceGroupLevelTaskOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/tasks/operations.ts b/sdk/security/arm-security/src/api/tasks/operations.ts new file mode 100644 index 000000000000..76be03c36a2f --- /dev/null +++ b/sdk/security/arm-security/src/api/tasks/operations.ts @@ -0,0 +1,407 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + SecurityTask, + securityTaskDeserializer, + _SecurityTaskList, + _securityTaskListDeserializer, + TaskUpdateActionType, +} from "../../models/tasksAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + TasksListOptionalParams, + TasksUpdateSubscriptionLevelTaskStateOptionalParams, + TasksListByHomeRegionOptionalParams, + TasksGetSubscriptionLevelTaskOptionalParams, + TasksUpdateResourceGroupLevelTaskStateOptionalParams, + TasksListByResourceGroupOptionalParams, + TasksGetResourceGroupLevelTaskOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: TasksListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/tasks{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2015-06-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_SecurityTaskList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityTaskListDeserializer(result.body); +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export function list( + context: Client, + options: TasksListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2015-06-01-preview" }, + ); +} + +export function _updateSubscriptionLevelTaskStateSend( + context: Client, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options: TasksUpdateSubscriptionLevelTaskStateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + taskName: taskName, + taskUpdateActionType: taskUpdateActionType, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateSubscriptionLevelTaskStateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export async function updateSubscriptionLevelTaskState( + context: Client, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options: TasksUpdateSubscriptionLevelTaskStateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSubscriptionLevelTaskStateSend( + context, + ascLocation, + taskName, + taskUpdateActionType, + options, + ); + return _updateSubscriptionLevelTaskStateDeserialize(result); +} + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: TasksListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2015-06-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityTaskList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityTaskListDeserializer(result.body); +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export function listByHomeRegion( + context: Client, + ascLocation: string, + options: TasksListByHomeRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByHomeRegionSend(context, ascLocation, options), + _listByHomeRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2015-06-01-preview" }, + ); +} + +export function _getSubscriptionLevelTaskSend( + context: Client, + ascLocation: string, + taskName: string, + options: TasksGetSubscriptionLevelTaskOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + taskName: taskName, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getSubscriptionLevelTaskDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityTaskDeserializer(result.body); +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export async function getSubscriptionLevelTask( + context: Client, + ascLocation: string, + taskName: string, + options: TasksGetSubscriptionLevelTaskOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSubscriptionLevelTaskSend(context, ascLocation, taskName, options); + return _getSubscriptionLevelTaskDeserialize(result); +} + +export function _updateResourceGroupLevelTaskStateSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options: TasksUpdateResourceGroupLevelTaskStateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}/{taskUpdateActionType}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + taskName: taskName, + taskUpdateActionType: taskUpdateActionType, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).post({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _updateResourceGroupLevelTaskStateDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export async function updateResourceGroupLevelTaskState( + context: Client, + resourceGroupName: string, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options: TasksUpdateResourceGroupLevelTaskStateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateResourceGroupLevelTaskStateSend( + context, + resourceGroupName, + ascLocation, + taskName, + taskUpdateActionType, + options, + ); + return _updateResourceGroupLevelTaskStateDeserialize(result); +} + +export function _listByResourceGroupSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: TasksListByResourceGroupOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks{?api%2Dversion,%24filter}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + "api%2Dversion": "2015-06-01-preview", + "%24filter": options?.filter, + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByResourceGroupDeserialize( + result: PathUncheckedResponse, +): Promise<_SecurityTaskList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _securityTaskListDeserializer(result.body); +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export function listByResourceGroup( + context: Client, + resourceGroupName: string, + ascLocation: string, + options: TasksListByResourceGroupOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByResourceGroupSend(context, resourceGroupName, ascLocation, options), + _listByResourceGroupDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2015-06-01-preview" }, + ); +} + +export function _getResourceGroupLevelTaskSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + taskName: string, + options: TasksGetResourceGroupLevelTaskOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/tasks/{taskName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + taskName: taskName, + "api%2Dversion": "2015-06-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getResourceGroupLevelTaskDeserialize( + result: PathUncheckedResponse, +): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return securityTaskDeserializer(result.body); +} + +/** Recommended tasks that will help improve the security of the subscription proactively */ +export async function getResourceGroupLevelTask( + context: Client, + resourceGroupName: string, + ascLocation: string, + taskName: string, + options: TasksGetResourceGroupLevelTaskOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getResourceGroupLevelTaskSend( + context, + resourceGroupName, + ascLocation, + taskName, + options, + ); + return _getResourceGroupLevelTaskDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/tasks/options.ts b/sdk/security/arm-security/src/api/tasks/options.ts new file mode 100644 index 000000000000..f4a910ad99c4 --- /dev/null +++ b/sdk/security/arm-security/src/api/tasks/options.ts @@ -0,0 +1,34 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface TasksListOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface TasksUpdateSubscriptionLevelTaskStateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface TasksListByHomeRegionOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface TasksGetSubscriptionLevelTaskOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface TasksUpdateResourceGroupLevelTaskStateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface TasksListByResourceGroupOptionalParams extends OperationOptions { + /** OData filter. Optional. */ + filter?: string; +} + +/** Optional parameters. */ +export interface TasksGetResourceGroupLevelTaskOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/topology/index.ts b/sdk/security/arm-security/src/api/topology/index.ts new file mode 100644 index 000000000000..f5889410e567 --- /dev/null +++ b/sdk/security/arm-security/src/api/topology/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, listByHomeRegion, get } from "./operations.js"; +export type { + TopologyListOptionalParams, + TopologyListByHomeRegionOptionalParams, + TopologyGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/topology/operations.ts b/sdk/security/arm-security/src/api/topology/operations.ts new file mode 100644 index 000000000000..34beada08f58 --- /dev/null +++ b/sdk/security/arm-security/src/api/topology/operations.ts @@ -0,0 +1,180 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + TopologyResource, + topologyResourceDeserializer, + _TopologyList, + _topologyListDeserializer, +} from "../../models/securitySolutionsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + TopologyListOptionalParams, + TopologyListByHomeRegionOptionalParams, + TopologyGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: TopologyListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/topologies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize(result: PathUncheckedResponse): Promise<_TopologyList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _topologyListDeserializer(result.body); +} + +/** Gets a list that allows to build a topology view of a subscription. */ +export function list( + context: Client, + options: TopologyListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _listByHomeRegionSend( + context: Client, + ascLocation: string, + options: TopologyListByHomeRegionOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/locations/{ascLocation}/topologies{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + ascLocation: ascLocation, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listByHomeRegionDeserialize( + result: PathUncheckedResponse, +): Promise<_TopologyList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _topologyListDeserializer(result.body); +} + +/** Gets a list that allows to build a topology view of a subscription and location. */ +export function listByHomeRegion( + context: Client, + ascLocation: string, + options: TopologyListByHomeRegionOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listByHomeRegionSend(context, ascLocation, options), + _listByHomeRegionDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2020-01-01" }, + ); +} + +export function _getSend( + context: Client, + resourceGroupName: string, + ascLocation: string, + topologyResourceName: string, + options: TopologyGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/locations/{ascLocation}/topologies/{topologyResourceName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + resourceGroupName: resourceGroupName, + ascLocation: ascLocation, + topologyResourceName: topologyResourceName, + "api%2Dversion": "2020-01-01", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return topologyResourceDeserializer(result.body); +} + +/** Gets a specific topology component. */ +export async function get( + context: Client, + resourceGroupName: string, + ascLocation: string, + topologyResourceName: string, + options: TopologyGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend( + context, + resourceGroupName, + ascLocation, + topologyResourceName, + options, + ); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/topology/options.ts b/sdk/security/arm-security/src/api/topology/options.ts new file mode 100644 index 000000000000..3bcb3974bd1b --- /dev/null +++ b/sdk/security/arm-security/src/api/topology/options.ts @@ -0,0 +1,13 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface TopologyListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface TopologyListByHomeRegionOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface TopologyGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/api/workspaceSettings/index.ts b/sdk/security/arm-security/src/api/workspaceSettings/index.ts new file mode 100644 index 000000000000..f75b6b7e6722 --- /dev/null +++ b/sdk/security/arm-security/src/api/workspaceSettings/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export { list, $delete, update, create, get } from "./operations.js"; +export type { + WorkspaceSettingsListOptionalParams, + WorkspaceSettingsDeleteOptionalParams, + WorkspaceSettingsUpdateOptionalParams, + WorkspaceSettingsCreateOptionalParams, + WorkspaceSettingsGetOptionalParams, +} from "./options.js"; diff --git a/sdk/security/arm-security/src/api/workspaceSettings/operations.ts b/sdk/security/arm-security/src/api/workspaceSettings/operations.ts new file mode 100644 index 000000000000..4d41e60a5fa2 --- /dev/null +++ b/sdk/security/arm-security/src/api/workspaceSettings/operations.ts @@ -0,0 +1,259 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext as Client } from "../index.js"; +import { cloudErrorDeserializer } from "../../models/common/models.js"; +import { + WorkspaceSetting, + workspaceSettingSerializer, + workspaceSettingDeserializer, + _WorkspaceSettingList, + _workspaceSettingListDeserializer, +} from "../../models/legacySettingsAPI/models.js"; +import { + PagedAsyncIterableIterator, + buildPagedAsyncIterator, +} from "../../static-helpers/pagingHelpers.js"; +import { expandUrlTemplate } from "../../static-helpers/urlTemplate.js"; +import { + WorkspaceSettingsListOptionalParams, + WorkspaceSettingsDeleteOptionalParams, + WorkspaceSettingsUpdateOptionalParams, + WorkspaceSettingsCreateOptionalParams, + WorkspaceSettingsGetOptionalParams, +} from "./options.js"; +import { + StreamableMethod, + PathUncheckedResponse, + createRestError, + operationOptionsToRequestParameters, +} from "@azure-rest/core-client"; + +export function _listSend( + context: Client, + options: WorkspaceSettingsListOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _listDeserialize( + result: PathUncheckedResponse, +): Promise<_WorkspaceSettingList> { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return _workspaceSettingListDeserializer(result.body); +} + +/** 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 */ +export function list( + context: Client, + options: WorkspaceSettingsListOptionalParams = { requestOptions: {} }, +): PagedAsyncIterableIterator { + return buildPagedAsyncIterator( + context, + () => _listSend(context, options), + _listDeserialize, + ["200"], + { itemName: "value", nextLinkName: "nextLink", apiVersion: "2017-08-01-preview" }, + ); +} + +export function _$deleteSend( + context: Client, + workspaceSettingName: string, + options: WorkspaceSettingsDeleteOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + workspaceSettingName: workspaceSettingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).delete({ ...operationOptionsToRequestParameters(options) }); +} + +export async function _$deleteDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["204"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return; +} + +/** Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace */ +export async function $delete( + context: Client, + workspaceSettingName: string, + options: WorkspaceSettingsDeleteOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _$deleteSend(context, workspaceSettingName, options); + return _$deleteDeserialize(result); +} + +export function _updateSend( + context: Client, + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options: WorkspaceSettingsUpdateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + workspaceSettingName: workspaceSettingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).patch({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: workspaceSettingSerializer(workspaceSetting), + }); +} + +export async function _updateDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return workspaceSettingDeserializer(result.body); +} + +/** Settings about where we should store your security data and logs */ +export async function update( + context: Client, + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options: WorkspaceSettingsUpdateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _updateSend(context, workspaceSettingName, workspaceSetting, options); + return _updateDeserialize(result); +} + +export function _createSend( + context: Client, + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options: WorkspaceSettingsCreateOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + workspaceSettingName: workspaceSettingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).put({ + ...operationOptionsToRequestParameters(options), + contentType: "application/json", + headers: { accept: "application/json", ...options.requestOptions?.headers }, + body: workspaceSettingSerializer(workspaceSetting), + }); +} + +export async function _createDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return workspaceSettingDeserializer(result.body); +} + +/** creating settings about where we should store your security data and logs */ +export async function create( + context: Client, + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options: WorkspaceSettingsCreateOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _createSend(context, workspaceSettingName, workspaceSetting, options); + return _createDeserialize(result); +} + +export function _getSend( + context: Client, + workspaceSettingName: string, + options: WorkspaceSettingsGetOptionalParams = { requestOptions: {} }, +): StreamableMethod { + const path = expandUrlTemplate( + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/workspaceSettings/{workspaceSettingName}{?api%2Dversion}", + { + subscriptionId: context.subscriptionId, + workspaceSettingName: workspaceSettingName, + "api%2Dversion": "2017-08-01-preview", + }, + { + allowReserved: options?.requestOptions?.skipUrlEncoding, + }, + ); + return context.path(path).get({ + ...operationOptionsToRequestParameters(options), + headers: { accept: "application/json", ...options.requestOptions?.headers }, + }); +} + +export async function _getDeserialize(result: PathUncheckedResponse): Promise { + const expectedStatuses = ["200"]; + if (!expectedStatuses.includes(result.status)) { + const error = createRestError(result); + error.details = cloudErrorDeserializer(result.body); + + throw error; + } + + return workspaceSettingDeserializer(result.body); +} + +/** 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 */ +export async function get( + context: Client, + workspaceSettingName: string, + options: WorkspaceSettingsGetOptionalParams = { requestOptions: {} }, +): Promise { + const result = await _getSend(context, workspaceSettingName, options); + return _getDeserialize(result); +} diff --git a/sdk/security/arm-security/src/api/workspaceSettings/options.ts b/sdk/security/arm-security/src/api/workspaceSettings/options.ts new file mode 100644 index 000000000000..62103b3b27ca --- /dev/null +++ b/sdk/security/arm-security/src/api/workspaceSettings/options.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationOptions } from "@azure-rest/core-client"; + +/** Optional parameters. */ +export interface WorkspaceSettingsListOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface WorkspaceSettingsDeleteOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface WorkspaceSettingsUpdateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface WorkspaceSettingsCreateOptionalParams extends OperationOptions {} + +/** Optional parameters. */ +export interface WorkspaceSettingsGetOptionalParams extends OperationOptions {} diff --git a/sdk/security/arm-security/src/classic/advancedThreatProtection/index.ts b/sdk/security/arm-security/src/classic/advancedThreatProtection/index.ts new file mode 100644 index 000000000000..319a89aa3b03 --- /dev/null +++ b/sdk/security/arm-security/src/classic/advancedThreatProtection/index.ts @@ -0,0 +1,45 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { create, get } from "../../api/advancedThreatProtection/operations.js"; +import { + AdvancedThreatProtectionCreateOptionalParams, + AdvancedThreatProtectionGetOptionalParams, +} from "../../api/advancedThreatProtection/options.js"; +import { AdvancedThreatProtectionSetting } from "../../models/atpSettingsAPI/models.js"; + +/** Interface representing a AdvancedThreatProtection operations. */ +export interface AdvancedThreatProtectionOperations { + /** Creates or updates the Advanced Threat Protection settings on a specified resource. */ + create: ( + resourceId: string, + advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, + options?: AdvancedThreatProtectionCreateOptionalParams, + ) => Promise; + /** Gets the Advanced Threat Protection settings for the specified resource. */ + get: ( + resourceId: string, + options?: AdvancedThreatProtectionGetOptionalParams, + ) => Promise; +} + +function _getAdvancedThreatProtection(context: SecurityCenterContext) { + return { + create: ( + resourceId: string, + advancedThreatProtectionSetting: AdvancedThreatProtectionSetting, + options?: AdvancedThreatProtectionCreateOptionalParams, + ) => create(context, resourceId, advancedThreatProtectionSetting, options), + get: (resourceId: string, options?: AdvancedThreatProtectionGetOptionalParams) => + get(context, resourceId, options), + }; +} + +export function _getAdvancedThreatProtectionOperations( + context: SecurityCenterContext, +): AdvancedThreatProtectionOperations { + return { + ..._getAdvancedThreatProtection(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/alerts/index.ts b/sdk/security/arm-security/src/classic/alerts/index.ts new file mode 100644 index 000000000000..cf2be80fab0c --- /dev/null +++ b/sdk/security/arm-security/src/classic/alerts/index.ts @@ -0,0 +1,276 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + simulate, + listByResourceGroup, + list, + updateResourceGroupLevelStateToInProgress, + updateResourceGroupLevelStateToActivate, + updateResourceGroupLevelStateToDismiss, + updateResourceGroupLevelStateToResolve, + listResourceGroupLevelByRegion, + getResourceGroupLevel, + updateSubscriptionLevelStateToInProgress, + updateSubscriptionLevelStateToActivate, + updateSubscriptionLevelStateToResolve, + updateSubscriptionLevelStateToDismiss, + listSubscriptionLevelByRegion, + getSubscriptionLevel, +} from "../../api/alerts/operations.js"; +import { + AlertsSimulateOptionalParams, + AlertsListByResourceGroupOptionalParams, + AlertsListOptionalParams, + AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + AlertsListResourceGroupLevelByRegionOptionalParams, + AlertsGetResourceGroupLevelOptionalParams, + AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + AlertsListSubscriptionLevelByRegionOptionalParams, + AlertsGetSubscriptionLevelOptionalParams, +} from "../../api/alerts/options.js"; +import { Alert, AlertSimulatorRequestBody } from "../../models/alertsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a Alerts operations. */ +export interface AlertsOperations { + /** Simulate security alerts */ + simulate: ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => PollerLike, void>; + /** @deprecated use simulate instead */ + beginSimulate: ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => Promise, void>>; + /** @deprecated use simulate instead */ + beginSimulateAndWait: ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => Promise; + /** List all the alerts that are associated with the resource group */ + listByResourceGroup: ( + resourceGroupName: string, + options?: AlertsListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** List all the alerts that are associated with the subscription */ + list: (options?: AlertsListOptionalParams) => PagedAsyncIterableIterator; + /** Update the alert's state */ + updateResourceGroupLevelStateToInProgress: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateResourceGroupLevelStateToActivate: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateResourceGroupLevelStateToDismiss: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateResourceGroupLevelStateToResolve: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + ) => Promise; + /** List all the alerts that are associated with the resource group that are stored in a specific location */ + listResourceGroupLevelByRegion: ( + resourceGroupName: string, + ascLocation: string, + options?: AlertsListResourceGroupLevelByRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get an alert that is associated a resource group or a resource in a resource group */ + getResourceGroupLevel: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsGetResourceGroupLevelOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateSubscriptionLevelStateToInProgress: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateSubscriptionLevelStateToActivate: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateSubscriptionLevelStateToResolve: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + ) => Promise; + /** Update the alert's state */ + updateSubscriptionLevelStateToDismiss: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + ) => Promise; + /** List all the alerts that are associated with the subscription that are stored in a specific location */ + listSubscriptionLevelByRegion: ( + ascLocation: string, + options?: AlertsListSubscriptionLevelByRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get an alert that is associated with a subscription */ + getSubscriptionLevel: ( + ascLocation: string, + alertName: string, + options?: AlertsGetSubscriptionLevelOptionalParams, + ) => Promise; +} + +function _getAlerts(context: SecurityCenterContext) { + return { + simulate: ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => simulate(context, ascLocation, alertSimulatorRequestBody, options), + beginSimulate: async ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => { + const poller = simulate(context, ascLocation, alertSimulatorRequestBody, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginSimulateAndWait: async ( + ascLocation: string, + alertSimulatorRequestBody: AlertSimulatorRequestBody, + options?: AlertsSimulateOptionalParams, + ) => { + return await simulate(context, ascLocation, alertSimulatorRequestBody, options); + }, + listByResourceGroup: ( + resourceGroupName: string, + options?: AlertsListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + list: (options?: AlertsListOptionalParams) => list(context, options), + updateResourceGroupLevelStateToInProgress: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + ) => + updateResourceGroupLevelStateToInProgress( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ), + updateResourceGroupLevelStateToActivate: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + ) => + updateResourceGroupLevelStateToActivate( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ), + updateResourceGroupLevelStateToDismiss: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + ) => + updateResourceGroupLevelStateToDismiss( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ), + updateResourceGroupLevelStateToResolve: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + ) => + updateResourceGroupLevelStateToResolve( + context, + resourceGroupName, + ascLocation, + alertName, + options, + ), + listResourceGroupLevelByRegion: ( + resourceGroupName: string, + ascLocation: string, + options?: AlertsListResourceGroupLevelByRegionOptionalParams, + ) => listResourceGroupLevelByRegion(context, resourceGroupName, ascLocation, options), + getResourceGroupLevel: ( + resourceGroupName: string, + ascLocation: string, + alertName: string, + options?: AlertsGetResourceGroupLevelOptionalParams, + ) => getResourceGroupLevel(context, resourceGroupName, ascLocation, alertName, options), + updateSubscriptionLevelStateToInProgress: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + ) => updateSubscriptionLevelStateToInProgress(context, ascLocation, alertName, options), + updateSubscriptionLevelStateToActivate: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + ) => updateSubscriptionLevelStateToActivate(context, ascLocation, alertName, options), + updateSubscriptionLevelStateToResolve: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + ) => updateSubscriptionLevelStateToResolve(context, ascLocation, alertName, options), + updateSubscriptionLevelStateToDismiss: ( + ascLocation: string, + alertName: string, + options?: AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + ) => updateSubscriptionLevelStateToDismiss(context, ascLocation, alertName, options), + listSubscriptionLevelByRegion: ( + ascLocation: string, + options?: AlertsListSubscriptionLevelByRegionOptionalParams, + ) => listSubscriptionLevelByRegion(context, ascLocation, options), + getSubscriptionLevel: ( + ascLocation: string, + alertName: string, + options?: AlertsGetSubscriptionLevelOptionalParams, + ) => getSubscriptionLevel(context, ascLocation, alertName, options), + }; +} + +export function _getAlertsOperations(context: SecurityCenterContext): AlertsOperations { + return { + ..._getAlerts(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/alertsSuppressionRules/index.ts b/sdk/security/arm-security/src/classic/alertsSuppressionRules/index.ts new file mode 100644 index 000000000000..f00a7b74c1ef --- /dev/null +++ b/sdk/security/arm-security/src/classic/alertsSuppressionRules/index.ts @@ -0,0 +1,62 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, update, get } from "../../api/alertsSuppressionRules/operations.js"; +import { + AlertsSuppressionRulesListOptionalParams, + AlertsSuppressionRulesDeleteOptionalParams, + AlertsSuppressionRulesUpdateOptionalParams, + AlertsSuppressionRulesGetOptionalParams, +} from "../../api/alertsSuppressionRules/options.js"; +import { AlertsSuppressionRule } from "../../models/alertsSuppressionRulesAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a AlertsSuppressionRules operations. */ +export interface AlertsSuppressionRulesOperations { + /** List of all the dismiss rules for the given subscription */ + list: ( + options?: AlertsSuppressionRulesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete dismiss alert rule for this subscription. */ + delete: ( + alertsSuppressionRuleName: string, + options?: AlertsSuppressionRulesDeleteOptionalParams, + ) => Promise; + /** Update existing rule or create new rule if it doesn't exist */ + update: ( + alertsSuppressionRuleName: string, + alertsSuppressionRule: AlertsSuppressionRule, + options?: AlertsSuppressionRulesUpdateOptionalParams, + ) => Promise; + /** Get dismiss rule, with name: {alertsSuppressionRuleName}, for the given subscription */ + get: ( + alertsSuppressionRuleName: string, + options?: AlertsSuppressionRulesGetOptionalParams, + ) => Promise; +} + +function _getAlertsSuppressionRules(context: SecurityCenterContext) { + return { + list: (options?: AlertsSuppressionRulesListOptionalParams) => list(context, options), + delete: ( + alertsSuppressionRuleName: string, + options?: AlertsSuppressionRulesDeleteOptionalParams, + ) => $delete(context, alertsSuppressionRuleName, options), + update: ( + alertsSuppressionRuleName: string, + alertsSuppressionRule: AlertsSuppressionRule, + options?: AlertsSuppressionRulesUpdateOptionalParams, + ) => update(context, alertsSuppressionRuleName, alertsSuppressionRule, options), + get: (alertsSuppressionRuleName: string, options?: AlertsSuppressionRulesGetOptionalParams) => + get(context, alertsSuppressionRuleName, options), + }; +} + +export function _getAlertsSuppressionRulesOperations( + context: SecurityCenterContext, +): AlertsSuppressionRulesOperations { + return { + ..._getAlertsSuppressionRules(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/allowedConnections/index.ts b/sdk/security/arm-security/src/classic/allowedConnections/index.ts new file mode 100644 index 000000000000..e11325d7ed46 --- /dev/null +++ b/sdk/security/arm-security/src/classic/allowedConnections/index.ts @@ -0,0 +1,59 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, listByHomeRegion, get } from "../../api/allowedConnections/operations.js"; +import { + AllowedConnectionsListOptionalParams, + AllowedConnectionsListByHomeRegionOptionalParams, + AllowedConnectionsGetOptionalParams, +} from "../../api/allowedConnections/options.js"; +import { + AllowedConnectionsResource, + ConnectionType, +} from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a AllowedConnections operations. */ +export interface AllowedConnectionsOperations { + /** Gets the list of all possible traffic between resources for the subscription */ + list: ( + options?: AllowedConnectionsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets the list of all possible traffic between resources for the subscription and location. */ + listByHomeRegion: ( + ascLocation: string, + options?: AllowedConnectionsListByHomeRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets the list of all possible traffic between resources for the subscription and location, based on connection type. */ + get: ( + resourceGroupName: string, + ascLocation: string, + connectionType: ConnectionType, + options?: AllowedConnectionsGetOptionalParams, + ) => Promise; +} + +function _getAllowedConnections(context: SecurityCenterContext) { + return { + list: (options?: AllowedConnectionsListOptionalParams) => list(context, options), + listByHomeRegion: ( + ascLocation: string, + options?: AllowedConnectionsListByHomeRegionOptionalParams, + ) => listByHomeRegion(context, ascLocation, options), + get: ( + resourceGroupName: string, + ascLocation: string, + connectionType: ConnectionType, + options?: AllowedConnectionsGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, connectionType, options), + }; +} + +export function _getAllowedConnectionsOperations( + context: SecurityCenterContext, +): AllowedConnectionsOperations { + return { + ..._getAllowedConnections(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/apiCollections/index.ts b/sdk/security/arm-security/src/classic/apiCollections/index.ts new file mode 100644 index 000000000000..d1ba2f326238 --- /dev/null +++ b/sdk/security/arm-security/src/classic/apiCollections/index.ts @@ -0,0 +1,150 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listByResourceGroup, + listBySubscription, + listByAzureApiManagementService, + offboardAzureApiManagementApi, + onboardAzureApiManagementApi, + getByAzureApiManagementService, +} from "../../api/apiCollections/operations.js"; +import { + APICollectionsListByResourceGroupOptionalParams, + APICollectionsListBySubscriptionOptionalParams, + APICollectionsListByAzureApiManagementServiceOptionalParams, + APICollectionsOffboardAzureApiManagementApiOptionalParams, + APICollectionsOnboardAzureApiManagementApiOptionalParams, + APICollectionsGetByAzureApiManagementServiceOptionalParams, +} from "../../api/apiCollections/options.js"; +import { ApiCollection } from "../../models/apiCollectionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a APICollections operations. */ +export interface APICollectionsOperations { + /** Gets a list of API collections within a resource group that have been onboarded to Microsoft Defender for APIs. */ + listByResourceGroup: ( + resourceGroupName: string, + options?: APICollectionsListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a list of API collections within a subscription that have been onboarded to Microsoft Defender for APIs. */ + listBySubscription: ( + options?: APICollectionsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a list of Azure API Management APIs that have been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ + listByAzureApiManagementService: ( + resourceGroupName: string, + serviceName: string, + options?: APICollectionsListByAzureApiManagementServiceOptionalParams, + ) => PagedAsyncIterableIterator; + /** Offboard an Azure API Management API from Microsoft Defender for APIs. The system will stop monitoring the operations within the Azure API Management API for intrusive behaviors. */ + offboardAzureApiManagementApi: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOffboardAzureApiManagementApiOptionalParams, + ) => Promise; + /** Onboard an Azure API Management API to Microsoft Defender for APIs. The system will start monitoring the operations within the Azure Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ + onboardAzureApiManagementApi: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => PollerLike, ApiCollection>; + /** @deprecated use onboardAzureApiManagementApi instead */ + beginOnboardAzureApiManagementApi: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => Promise, ApiCollection>>; + /** @deprecated use onboardAzureApiManagementApi instead */ + beginOnboardAzureApiManagementApiAndWait: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => Promise; + /** Gets an Azure API Management API if it has been onboarded to Microsoft Defender for APIs. If an Azure API Management API is onboarded to Microsoft Defender for APIs, the system will monitor the operations within the Azure API Management API for intrusive behaviors and provide alerts for attacks that have been detected. */ + getByAzureApiManagementService: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsGetByAzureApiManagementServiceOptionalParams, + ) => Promise; +} + +function _getAPICollections(context: SecurityCenterContext) { + return { + listByResourceGroup: ( + resourceGroupName: string, + options?: APICollectionsListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + listBySubscription: (options?: APICollectionsListBySubscriptionOptionalParams) => + listBySubscription(context, options), + listByAzureApiManagementService: ( + resourceGroupName: string, + serviceName: string, + options?: APICollectionsListByAzureApiManagementServiceOptionalParams, + ) => listByAzureApiManagementService(context, resourceGroupName, serviceName, options), + offboardAzureApiManagementApi: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOffboardAzureApiManagementApiOptionalParams, + ) => offboardAzureApiManagementApi(context, resourceGroupName, serviceName, apiId, options), + onboardAzureApiManagementApi: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => onboardAzureApiManagementApi(context, resourceGroupName, serviceName, apiId, options), + beginOnboardAzureApiManagementApi: async ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => { + const poller = onboardAzureApiManagementApi( + context, + resourceGroupName, + serviceName, + apiId, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginOnboardAzureApiManagementApiAndWait: async ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsOnboardAzureApiManagementApiOptionalParams, + ) => { + return await onboardAzureApiManagementApi( + context, + resourceGroupName, + serviceName, + apiId, + options, + ); + }, + getByAzureApiManagementService: ( + resourceGroupName: string, + serviceName: string, + apiId: string, + options?: APICollectionsGetByAzureApiManagementServiceOptionalParams, + ) => getByAzureApiManagementService(context, resourceGroupName, serviceName, apiId, options), + }; +} + +export function _getAPICollectionsOperations( + context: SecurityCenterContext, +): APICollectionsOperations { + return { + ..._getAPICollections(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/application/index.ts b/sdk/security/arm-security/src/classic/application/index.ts new file mode 100644 index 000000000000..daac405048d4 --- /dev/null +++ b/sdk/security/arm-security/src/classic/application/index.ts @@ -0,0 +1,45 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { $delete, createOrUpdate, get } from "../../api/application/operations.js"; +import { + ApplicationDeleteOptionalParams, + ApplicationCreateOrUpdateOptionalParams, + ApplicationGetOptionalParams, +} from "../../api/application/options.js"; +import { Application } from "../../models/applicationsAPI/models.js"; + +/** Interface representing a Application operations. */ +export interface ApplicationOperations { + /** Delete an Application over a given scope */ + delete: (applicationId: string, options?: ApplicationDeleteOptionalParams) => Promise; + /** Creates or update a security application on the given subscription. */ + createOrUpdate: ( + applicationId: string, + application: Application, + options?: ApplicationCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific application for the requested scope by applicationId */ + get: (applicationId: string, options?: ApplicationGetOptionalParams) => Promise; +} + +function _getApplication(context: SecurityCenterContext) { + return { + delete: (applicationId: string, options?: ApplicationDeleteOptionalParams) => + $delete(context, applicationId, options), + createOrUpdate: ( + applicationId: string, + application: Application, + options?: ApplicationCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, applicationId, application, options), + get: (applicationId: string, options?: ApplicationGetOptionalParams) => + get(context, applicationId, options), + }; +} + +export function _getApplicationOperations(context: SecurityCenterContext): ApplicationOperations { + return { + ..._getApplication(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/applications/index.ts b/sdk/security/arm-security/src/classic/applications/index.ts new file mode 100644 index 000000000000..7b22c99c815d --- /dev/null +++ b/sdk/security/arm-security/src/classic/applications/index.ts @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list } from "../../api/applications/operations.js"; +import { ApplicationsListOptionalParams } from "../../api/applications/options.js"; +import { Application } from "../../models/applicationsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Applications operations. */ +export interface ApplicationsOperations { + /** Get a list of all relevant applications over a subscription level scope */ + list: (options?: ApplicationsListOptionalParams) => PagedAsyncIterableIterator; +} + +function _getApplications(context: SecurityCenterContext) { + return { + list: (options?: ApplicationsListOptionalParams) => list(context, options), + }; +} + +export function _getApplicationsOperations(context: SecurityCenterContext): ApplicationsOperations { + return { + ..._getApplications(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/assessments/index.ts b/sdk/security/arm-security/src/classic/assessments/index.ts new file mode 100644 index 000000000000..d7ddb9eff3ae --- /dev/null +++ b/sdk/security/arm-security/src/classic/assessments/index.ts @@ -0,0 +1,69 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/assessments/operations.js"; +import { + AssessmentsListOptionalParams, + AssessmentsDeleteOptionalParams, + AssessmentsCreateOrUpdateOptionalParams, + AssessmentsGetOptionalParams, +} from "../../api/assessments/options.js"; +import { + SecurityAssessmentResponse, + SecurityAssessment, +} from "../../models/assessmentAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Assessments operations. */ +export interface AssessmentsOperations { + /** Get security assessments on all your scanned resources inside a scope */ + list: ( + scope: string, + options?: AssessmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** 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 */ + delete: ( + resourceId: string, + assessmentName: string, + options?: AssessmentsDeleteOptionalParams, + ) => 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 */ + createOrUpdate: ( + resourceId: string, + assessmentName: string, + assessment: SecurityAssessment, + options?: AssessmentsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a security assessment on your scanned resource */ + get: ( + resourceId: string, + assessmentName: string, + options?: AssessmentsGetOptionalParams, + ) => Promise; +} + +function _getAssessments(context: SecurityCenterContext) { + return { + list: (scope: string, options?: AssessmentsListOptionalParams) => list(context, scope, options), + delete: ( + resourceId: string, + assessmentName: string, + options?: AssessmentsDeleteOptionalParams, + ) => $delete(context, resourceId, assessmentName, options), + createOrUpdate: ( + resourceId: string, + assessmentName: string, + assessment: SecurityAssessment, + options?: AssessmentsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceId, assessmentName, assessment, options), + get: (resourceId: string, assessmentName: string, options?: AssessmentsGetOptionalParams) => + get(context, resourceId, assessmentName, options), + }; +} + +export function _getAssessmentsOperations(context: SecurityCenterContext): AssessmentsOperations { + return { + ..._getAssessments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/assessmentsMetadata/index.ts b/sdk/security/arm-security/src/classic/assessmentsMetadata/index.ts new file mode 100644 index 000000000000..55d9a7868943 --- /dev/null +++ b/sdk/security/arm-security/src/classic/assessmentsMetadata/index.ts @@ -0,0 +1,86 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + get, + listBySubscription, + deleteInSubscription, + createInSubscription, + getInSubscription, +} from "../../api/assessmentsMetadata/operations.js"; +import { + AssessmentsMetadataListOptionalParams, + AssessmentsMetadataGetOptionalParams, + AssessmentsMetadataListBySubscriptionOptionalParams, + AssessmentsMetadataDeleteInSubscriptionOptionalParams, + AssessmentsMetadataCreateInSubscriptionOptionalParams, + AssessmentsMetadataGetInSubscriptionOptionalParams, +} from "../../api/assessmentsMetadata/options.js"; +import { SecurityAssessmentMetadataResponse } from "../../models/assessmentAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a AssessmentsMetadata operations. */ +export interface AssessmentsMetadataOperations { + /** Get metadata information on all assessment types */ + list: ( + options?: AssessmentsMetadataListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get metadata information on an assessment type */ + get: ( + assessmentMetadataName: string, + options?: AssessmentsMetadataGetOptionalParams, + ) => Promise; + /** Get metadata information on all assessment types in a specific subscription */ + listBySubscription: ( + options?: AssessmentsMetadataListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** 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 */ + deleteInSubscription: ( + assessmentMetadataName: string, + options?: AssessmentsMetadataDeleteInSubscriptionOptionalParams, + ) => Promise; + /** Create metadata information on an assessment type in a specific subscription */ + createInSubscription: ( + assessmentMetadataName: string, + assessmentMetadata: SecurityAssessmentMetadataResponse, + options?: AssessmentsMetadataCreateInSubscriptionOptionalParams, + ) => Promise; + /** Get metadata information on an assessment type in a specific subscription */ + getInSubscription: ( + assessmentMetadataName: string, + options?: AssessmentsMetadataGetInSubscriptionOptionalParams, + ) => Promise; +} + +function _getAssessmentsMetadata(context: SecurityCenterContext) { + return { + list: (options?: AssessmentsMetadataListOptionalParams) => list(context, options), + get: (assessmentMetadataName: string, options?: AssessmentsMetadataGetOptionalParams) => + get(context, assessmentMetadataName, options), + listBySubscription: (options?: AssessmentsMetadataListBySubscriptionOptionalParams) => + listBySubscription(context, options), + deleteInSubscription: ( + assessmentMetadataName: string, + options?: AssessmentsMetadataDeleteInSubscriptionOptionalParams, + ) => deleteInSubscription(context, assessmentMetadataName, options), + createInSubscription: ( + assessmentMetadataName: string, + assessmentMetadata: SecurityAssessmentMetadataResponse, + options?: AssessmentsMetadataCreateInSubscriptionOptionalParams, + ) => createInSubscription(context, assessmentMetadataName, assessmentMetadata, options), + getInSubscription: ( + assessmentMetadataName: string, + options?: AssessmentsMetadataGetInSubscriptionOptionalParams, + ) => getInSubscription(context, assessmentMetadataName, options), + }; +} + +export function _getAssessmentsMetadataOperations( + context: SecurityCenterContext, +): AssessmentsMetadataOperations { + return { + ..._getAssessmentsMetadata(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/assignments/index.ts b/sdk/security/arm-security/src/classic/assignments/index.ts new file mode 100644 index 000000000000..6c8df79e265d --- /dev/null +++ b/sdk/security/arm-security/src/classic/assignments/index.ts @@ -0,0 +1,83 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listBySubscription, + list, + $delete, + createOrUpdate, + get, +} from "../../api/assignments/operations.js"; +import { + AssignmentsListBySubscriptionOptionalParams, + AssignmentsListOptionalParams, + AssignmentsDeleteOptionalParams, + AssignmentsCreateOrUpdateOptionalParams, + AssignmentsGetOptionalParams, +} from "../../api/assignments/options.js"; +import { Assignment } from "../../models/standardsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Assignments operations. */ +export interface AssignmentsOperations { + /** Get a list of all relevant standardAssignments over a subscription level scope */ + listBySubscription: ( + options?: AssignmentsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get a list of all relevant standardAssignments available for scope */ + list: ( + resourceGroupName: string, + options?: AssignmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a standard assignment over a given scope */ + delete: ( + resourceGroupName: string, + assignmentId: string, + options?: AssignmentsDeleteOptionalParams, + ) => Promise; + /** Create a security assignment on the given scope. Will create/update the required standard assignment. */ + createOrUpdate: ( + resourceGroupName: string, + assignmentId: string, + assignment: Assignment, + options?: AssignmentsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific standard assignment for the requested scope by resourceId */ + get: ( + resourceGroupName: string, + assignmentId: string, + options?: AssignmentsGetOptionalParams, + ) => Promise; +} + +function _getAssignments(context: SecurityCenterContext) { + return { + listBySubscription: (options?: AssignmentsListBySubscriptionOptionalParams) => + listBySubscription(context, options), + list: (resourceGroupName: string, options?: AssignmentsListOptionalParams) => + list(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + assignmentId: string, + options?: AssignmentsDeleteOptionalParams, + ) => $delete(context, resourceGroupName, assignmentId, options), + createOrUpdate: ( + resourceGroupName: string, + assignmentId: string, + assignment: Assignment, + options?: AssignmentsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceGroupName, assignmentId, assignment, options), + get: ( + resourceGroupName: string, + assignmentId: string, + options?: AssignmentsGetOptionalParams, + ) => get(context, resourceGroupName, assignmentId, options), + }; +} + +export function _getAssignmentsOperations(context: SecurityCenterContext): AssignmentsOperations { + return { + ..._getAssignments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/autoProvisioningSettings/index.ts b/sdk/security/arm-security/src/classic/autoProvisioningSettings/index.ts new file mode 100644 index 000000000000..8e35eb65ed64 --- /dev/null +++ b/sdk/security/arm-security/src/classic/autoProvisioningSettings/index.ts @@ -0,0 +1,52 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, create, get } from "../../api/autoProvisioningSettings/operations.js"; +import { + AutoProvisioningSettingsListOptionalParams, + AutoProvisioningSettingsCreateOptionalParams, + AutoProvisioningSettingsGetOptionalParams, +} from "../../api/autoProvisioningSettings/options.js"; +import { AutoProvisioningSetting } from "../../models/legacySettingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a AutoProvisioningSettings operations. */ +export interface AutoProvisioningSettingsOperations { + /** Exposes the auto provisioning settings of the subscriptions */ + list: ( + options?: AutoProvisioningSettingsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Details of a specific setting */ + create: ( + settingName: string, + setting: AutoProvisioningSetting, + options?: AutoProvisioningSettingsCreateOptionalParams, + ) => Promise; + /** Details of a specific setting */ + get: ( + settingName: string, + options?: AutoProvisioningSettingsGetOptionalParams, + ) => Promise; +} + +function _getAutoProvisioningSettings(context: SecurityCenterContext) { + return { + list: (options?: AutoProvisioningSettingsListOptionalParams) => list(context, options), + create: ( + settingName: string, + setting: AutoProvisioningSetting, + options?: AutoProvisioningSettingsCreateOptionalParams, + ) => create(context, settingName, setting, options), + get: (settingName: string, options?: AutoProvisioningSettingsGetOptionalParams) => + get(context, settingName, options), + }; +} + +export function _getAutoProvisioningSettingsOperations( + context: SecurityCenterContext, +): AutoProvisioningSettingsOperations { + return { + ..._getAutoProvisioningSettings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/automations/index.ts b/sdk/security/arm-security/src/classic/automations/index.ts new file mode 100644 index 000000000000..5cc669c9bd33 --- /dev/null +++ b/sdk/security/arm-security/src/classic/automations/index.ts @@ -0,0 +1,116 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + validate, + list, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "../../api/automations/operations.js"; +import { + AutomationsValidateOptionalParams, + AutomationsListOptionalParams, + AutomationsListByResourceGroupOptionalParams, + AutomationsDeleteOptionalParams, + AutomationsUpdateOptionalParams, + AutomationsCreateOrUpdateOptionalParams, + AutomationsGetOptionalParams, +} from "../../api/automations/options.js"; +import { + Automation, + AutomationUpdateModel, + AutomationValidationStatus, +} from "../../models/automationsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Automations operations. */ +export interface AutomationsOperations { + /** Validates the security automation model before create or update. Any validation errors are returned to the client. */ + validate: ( + resourceGroupName: string, + automationName: string, + automation: Automation, + options?: AutomationsValidateOptionalParams, + ) => 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. */ + list: (options?: AutomationsListOptionalParams) => PagedAsyncIterableIterator; + /** 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. */ + listByResourceGroup: ( + resourceGroupName: string, + options?: AutomationsListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes a security automation. */ + delete: ( + resourceGroupName: string, + automationName: string, + options?: AutomationsDeleteOptionalParams, + ) => Promise; + /** Updates a security automation */ + update: ( + resourceGroupName: string, + automationName: string, + automation: AutomationUpdateModel, + options?: AutomationsUpdateOptionalParams, + ) => 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. */ + createOrUpdate: ( + resourceGroupName: string, + automationName: string, + automation: Automation, + options?: AutomationsCreateOrUpdateOptionalParams, + ) => Promise; + /** Retrieves information about the model of a security automation. */ + get: ( + resourceGroupName: string, + automationName: string, + options?: AutomationsGetOptionalParams, + ) => Promise; +} + +function _getAutomations(context: SecurityCenterContext) { + return { + validate: ( + resourceGroupName: string, + automationName: string, + automation: Automation, + options?: AutomationsValidateOptionalParams, + ) => validate(context, resourceGroupName, automationName, automation, options), + list: (options?: AutomationsListOptionalParams) => list(context, options), + listByResourceGroup: ( + resourceGroupName: string, + options?: AutomationsListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + automationName: string, + options?: AutomationsDeleteOptionalParams, + ) => $delete(context, resourceGroupName, automationName, options), + update: ( + resourceGroupName: string, + automationName: string, + automation: AutomationUpdateModel, + options?: AutomationsUpdateOptionalParams, + ) => update(context, resourceGroupName, automationName, automation, options), + createOrUpdate: ( + resourceGroupName: string, + automationName: string, + automation: Automation, + options?: AutomationsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceGroupName, automationName, automation, options), + get: ( + resourceGroupName: string, + automationName: string, + options?: AutomationsGetOptionalParams, + ) => get(context, resourceGroupName, automationName, options), + }; +} + +export function _getAutomationsOperations(context: SecurityCenterContext): AutomationsOperations { + return { + ..._getAutomations(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/azureDevOpsOrgs/index.ts b/sdk/security/arm-security/src/classic/azureDevOpsOrgs/index.ts new file mode 100644 index 000000000000..c960d4dbaeee --- /dev/null +++ b/sdk/security/arm-security/src/classic/azureDevOpsOrgs/index.ts @@ -0,0 +1,216 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listAvailable, + list, + update, + createOrUpdate, + get, +} from "../../api/azureDevOpsOrgs/operations.js"; +import { + AzureDevOpsOrgsListAvailableOptionalParams, + AzureDevOpsOrgsListOptionalParams, + AzureDevOpsOrgsUpdateOptionalParams, + AzureDevOpsOrgsCreateOrUpdateOptionalParams, + AzureDevOpsOrgsGetOptionalParams, +} from "../../api/azureDevOpsOrgs/options.js"; +import { + AzureDevOpsOrg, + AzureDevOpsOrgListResponse, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a AzureDevOpsOrgs operations. */ +export interface AzureDevOpsOrgsOperations { + /** Returns a list of all Azure DevOps organizations accessible by the user token consumed by the connector. */ + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: AzureDevOpsOrgsListAvailableOptionalParams, + ) => Promise; + /** Returns a list of Azure DevOps organizations onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: AzureDevOpsOrgsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Updates monitored Azure DevOps organization details. */ + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => PollerLike, AzureDevOpsOrg>; + /** @deprecated use update instead */ + beginUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => Promise, AzureDevOpsOrg>>; + /** @deprecated use update instead */ + beginUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => Promise; + /** Creates or updates monitored Azure DevOps organization details. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => PollerLike, AzureDevOpsOrg>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => Promise, AzureDevOpsOrg>>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => Promise; + /** Returns a monitored Azure DevOps organization resource. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options?: AzureDevOpsOrgsGetOptionalParams, + ) => Promise; +} + +function _getAzureDevOpsOrgs(context: SecurityCenterContext) { + return { + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: AzureDevOpsOrgsListAvailableOptionalParams, + ) => listAvailable(context, resourceGroupName, securityConnectorName, options), + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: AzureDevOpsOrgsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, options), + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => + update(context, resourceGroupName, securityConnectorName, orgName, azureDevOpsOrg, options), + beginUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => { + const poller = update( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsUpdateOptionalParams, + ) => { + return await update( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ), + beginCreateOrUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => { + const poller = createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateOrUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + azureDevOpsOrg: AzureDevOpsOrg, + options?: AzureDevOpsOrgsCreateOrUpdateOptionalParams, + ) => { + return await createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + azureDevOpsOrg, + options, + ); + }, + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options?: AzureDevOpsOrgsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, orgName, options), + }; +} + +export function _getAzureDevOpsOrgsOperations( + context: SecurityCenterContext, +): AzureDevOpsOrgsOperations { + return { + ..._getAzureDevOpsOrgs(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/azureDevOpsProjects/index.ts b/sdk/security/arm-security/src/classic/azureDevOpsProjects/index.ts new file mode 100644 index 000000000000..3f90b66286ae --- /dev/null +++ b/sdk/security/arm-security/src/classic/azureDevOpsProjects/index.ts @@ -0,0 +1,224 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, update, createOrUpdate, get } from "../../api/azureDevOpsProjects/operations.js"; +import { + AzureDevOpsProjectsListOptionalParams, + AzureDevOpsProjectsUpdateOptionalParams, + AzureDevOpsProjectsCreateOrUpdateOptionalParams, + AzureDevOpsProjectsGetOptionalParams, +} from "../../api/azureDevOpsProjects/options.js"; +import { AzureDevOpsProject } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a AzureDevOpsProjects operations. */ +export interface AzureDevOpsProjectsOperations { + /** Returns a list of Azure DevOps projects onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options?: AzureDevOpsProjectsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Updates a monitored Azure DevOps project resource. */ + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => PollerLike, AzureDevOpsProject>; + /** @deprecated use update instead */ + beginUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => Promise, AzureDevOpsProject>>; + /** @deprecated use update instead */ + beginUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => Promise; + /** Creates or updates a monitored Azure DevOps project resource. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => PollerLike, AzureDevOpsProject>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => Promise, AzureDevOpsProject>>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => Promise; + /** Returns a monitored Azure DevOps project resource. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options?: AzureDevOpsProjectsGetOptionalParams, + ) => Promise; +} + +function _getAzureDevOpsProjects(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + options?: AzureDevOpsProjectsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, orgName, options), + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => + update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ), + beginUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => { + const poller = update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsUpdateOptionalParams, + ) => { + return await update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ), + beginCreateOrUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => { + const poller = createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateOrUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + azureDevOpsProject: AzureDevOpsProject, + options?: AzureDevOpsProjectsCreateOrUpdateOptionalParams, + ) => { + return await createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + azureDevOpsProject, + options, + ); + }, + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options?: AzureDevOpsProjectsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, orgName, projectName, options), + }; +} + +export function _getAzureDevOpsProjectsOperations( + context: SecurityCenterContext, +): AzureDevOpsProjectsOperations { + return { + ..._getAzureDevOpsProjects(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/azureDevOpsRepos/index.ts b/sdk/security/arm-security/src/classic/azureDevOpsRepos/index.ts new file mode 100644 index 000000000000..881f371c75ad --- /dev/null +++ b/sdk/security/arm-security/src/classic/azureDevOpsRepos/index.ts @@ -0,0 +1,255 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, update, createOrUpdate, get } from "../../api/azureDevOpsRepos/operations.js"; +import { + AzureDevOpsReposListOptionalParams, + AzureDevOpsReposUpdateOptionalParams, + AzureDevOpsReposCreateOrUpdateOptionalParams, + AzureDevOpsReposGetOptionalParams, +} from "../../api/azureDevOpsRepos/options.js"; +import { AzureDevOpsRepository } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a AzureDevOpsRepos operations. */ +export interface AzureDevOpsReposOperations { + /** Returns a list of Azure DevOps repositories onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options?: AzureDevOpsReposListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Updates a monitored Azure DevOps repository resource. */ + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => PollerLike, AzureDevOpsRepository>; + /** @deprecated use update instead */ + beginUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => Promise, AzureDevOpsRepository>>; + /** @deprecated use update instead */ + beginUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => Promise; + /** Creates or updates a monitored Azure DevOps repository resource. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => PollerLike, AzureDevOpsRepository>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => Promise, AzureDevOpsRepository>>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => Promise; + /** Returns a monitored Azure DevOps repository resource. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + options?: AzureDevOpsReposGetOptionalParams, + ) => Promise; +} + +function _getAzureDevOpsRepos(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + options?: AzureDevOpsReposListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, orgName, projectName, options), + update: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => + update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ), + beginUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => { + const poller = update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposUpdateOptionalParams, + ) => { + return await update( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ), + beginCreateOrUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => { + const poller = createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateOrUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + azureDevOpsRepository: AzureDevOpsRepository, + options?: AzureDevOpsReposCreateOrUpdateOptionalParams, + ) => { + return await createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + azureDevOpsRepository, + options, + ); + }, + get: ( + resourceGroupName: string, + securityConnectorName: string, + orgName: string, + projectName: string, + repoName: string, + options?: AzureDevOpsReposGetOptionalParams, + ) => + get( + context, + resourceGroupName, + securityConnectorName, + orgName, + projectName, + repoName, + options, + ), + }; +} + +export function _getAzureDevOpsReposOperations( + context: SecurityCenterContext, +): AzureDevOpsReposOperations { + return { + ..._getAzureDevOpsRepos(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/complianceResults/index.ts b/sdk/security/arm-security/src/classic/complianceResults/index.ts new file mode 100644 index 000000000000..486ca9642115 --- /dev/null +++ b/sdk/security/arm-security/src/classic/complianceResults/index.ts @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/complianceResults/operations.js"; +import { + ComplianceResultsListOptionalParams, + ComplianceResultsGetOptionalParams, +} from "../../api/complianceResults/options.js"; +import { ComplianceResult } from "../../models/complianceResultsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a ComplianceResults operations. */ +export interface ComplianceResultsOperations { + /** Security compliance results in the subscription */ + list: ( + scope: string, + options?: ComplianceResultsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Security Compliance Result */ + get: ( + resourceId: string, + complianceResultName: string, + options?: ComplianceResultsGetOptionalParams, + ) => Promise; +} + +function _getComplianceResults(context: SecurityCenterContext) { + return { + list: (scope: string, options?: ComplianceResultsListOptionalParams) => + list(context, scope, options), + get: ( + resourceId: string, + complianceResultName: string, + options?: ComplianceResultsGetOptionalParams, + ) => get(context, resourceId, complianceResultName, options), + }; +} + +export function _getComplianceResultsOperations( + context: SecurityCenterContext, +): ComplianceResultsOperations { + return { + ..._getComplianceResults(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/compliances/index.ts b/sdk/security/arm-security/src/classic/compliances/index.ts new file mode 100644 index 000000000000..60722fb26121 --- /dev/null +++ b/sdk/security/arm-security/src/classic/compliances/index.ts @@ -0,0 +1,40 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/compliances/operations.js"; +import { + CompliancesListOptionalParams, + CompliancesGetOptionalParams, +} from "../../api/compliances/options.js"; +import { Compliance } from "../../models/legacySettingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Compliances operations. */ +export interface CompliancesOperations { + /** The Compliance scores of the specific management group. */ + list: ( + scope: string, + options?: CompliancesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Details of a specific Compliance. */ + get: ( + scope: string, + complianceName: string, + options?: CompliancesGetOptionalParams, + ) => Promise; +} + +function _getCompliances(context: SecurityCenterContext) { + return { + list: (scope: string, options?: CompliancesListOptionalParams) => list(context, scope, options), + get: (scope: string, complianceName: string, options?: CompliancesGetOptionalParams) => + get(context, scope, complianceName, options), + }; +} + +export function _getCompliancesOperations(context: SecurityCenterContext): CompliancesOperations { + return { + ..._getCompliances(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/customRecommendations/index.ts b/sdk/security/arm-security/src/classic/customRecommendations/index.ts new file mode 100644 index 000000000000..6b000800f596 --- /dev/null +++ b/sdk/security/arm-security/src/classic/customRecommendations/index.ts @@ -0,0 +1,73 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/customRecommendations/operations.js"; +import { + CustomRecommendationsListOptionalParams, + CustomRecommendationsDeleteOptionalParams, + CustomRecommendationsCreateOrUpdateOptionalParams, + CustomRecommendationsGetOptionalParams, +} from "../../api/customRecommendations/options.js"; +import { CustomRecommendation } from "../../models/securityStandardsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a CustomRecommendations operations. */ +export interface CustomRecommendationsOperations { + /** Get a list of all relevant custom recommendations over a scope */ + list: ( + scope: string, + options?: CustomRecommendationsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a custom recommendation over a given scope */ + delete: ( + scope: string, + customRecommendationName: string, + options?: CustomRecommendationsDeleteOptionalParams, + ) => Promise; + /** Creates or updates a custom recommendation over a given scope */ + createOrUpdate: ( + scope: string, + customRecommendationName: string, + customRecommendationBody: CustomRecommendation, + options?: CustomRecommendationsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific custom recommendation for the requested scope by customRecommendationName */ + get: ( + scope: string, + customRecommendationName: string, + options?: CustomRecommendationsGetOptionalParams, + ) => Promise; +} + +function _getCustomRecommendations(context: SecurityCenterContext) { + return { + list: (scope: string, options?: CustomRecommendationsListOptionalParams) => + list(context, scope, options), + delete: ( + scope: string, + customRecommendationName: string, + options?: CustomRecommendationsDeleteOptionalParams, + ) => $delete(context, scope, customRecommendationName, options), + createOrUpdate: ( + scope: string, + customRecommendationName: string, + customRecommendationBody: CustomRecommendation, + options?: CustomRecommendationsCreateOrUpdateOptionalParams, + ) => + createOrUpdate(context, scope, customRecommendationName, customRecommendationBody, options), + get: ( + scope: string, + customRecommendationName: string, + options?: CustomRecommendationsGetOptionalParams, + ) => get(context, scope, customRecommendationName, options), + }; +} + +export function _getCustomRecommendationsOperations( + context: SecurityCenterContext, +): CustomRecommendationsOperations { + return { + ..._getCustomRecommendations(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/defenderForStorage/index.ts b/sdk/security/arm-security/src/classic/defenderForStorage/index.ts new file mode 100644 index 000000000000..26eca87ec627 --- /dev/null +++ b/sdk/security/arm-security/src/classic/defenderForStorage/index.ts @@ -0,0 +1,111 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + getMalwareScan, + cancelMalwareScan, + startMalwareScan, + list, + create, + get, +} from "../../api/defenderForStorage/operations.js"; +import { + DefenderForStorageGetMalwareScanOptionalParams, + DefenderForStorageCancelMalwareScanOptionalParams, + DefenderForStorageStartMalwareScanOptionalParams, + DefenderForStorageListOptionalParams, + DefenderForStorageCreateOptionalParams, + DefenderForStorageGetOptionalParams, +} from "../../api/defenderForStorage/options.js"; +import { SettingName } from "../../models/common/models.js"; +import { + DefenderForStorageSetting, + MalwareScan, +} from "../../models/defenderForStorageAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a DefenderForStorage operations. */ +export interface DefenderForStorageOperations { + /** Gets the Defender for Storage malware scan for the specified storage resource. */ + getMalwareScan: ( + resourceId: string, + settingName: SettingName, + scanId: string, + options?: DefenderForStorageGetMalwareScanOptionalParams, + ) => Promise; + /** Cancels a Defender for Storage malware scan for the specified storage account. */ + cancelMalwareScan: ( + resourceId: string, + settingName: SettingName, + scanId: string, + options?: DefenderForStorageCancelMalwareScanOptionalParams, + ) => Promise; + /** Initiate a Defender for Storage malware scan for the specified storage account. Blobs and Files will be scanned for malware. */ + startMalwareScan: ( + resourceId: string, + settingName: SettingName, + options?: DefenderForStorageStartMalwareScanOptionalParams, + ) => Promise; + /** Lists the Defender for Storage settings for the specified storage account. */ + list: ( + resourceId: string, + options?: DefenderForStorageListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Creates or updates the Defender for Storage settings on a specified storage account. */ + create: ( + resourceId: string, + settingName: SettingName, + defenderForStorageSetting: DefenderForStorageSetting, + options?: DefenderForStorageCreateOptionalParams, + ) => Promise; + /** Gets the Defender for Storage settings for the specified storage account. */ + get: ( + resourceId: string, + settingName: SettingName, + options?: DefenderForStorageGetOptionalParams, + ) => Promise; +} + +function _getDefenderForStorage(context: SecurityCenterContext) { + return { + getMalwareScan: ( + resourceId: string, + settingName: SettingName, + scanId: string, + options?: DefenderForStorageGetMalwareScanOptionalParams, + ) => getMalwareScan(context, resourceId, settingName, scanId, options), + cancelMalwareScan: ( + resourceId: string, + settingName: SettingName, + scanId: string, + options?: DefenderForStorageCancelMalwareScanOptionalParams, + ) => cancelMalwareScan(context, resourceId, settingName, scanId, options), + startMalwareScan: ( + resourceId: string, + settingName: SettingName, + options?: DefenderForStorageStartMalwareScanOptionalParams, + ) => startMalwareScan(context, resourceId, settingName, options), + list: (resourceId: string, options?: DefenderForStorageListOptionalParams) => + list(context, resourceId, options), + create: ( + resourceId: string, + settingName: SettingName, + defenderForStorageSetting: DefenderForStorageSetting, + options?: DefenderForStorageCreateOptionalParams, + ) => create(context, resourceId, settingName, defenderForStorageSetting, options), + get: ( + resourceId: string, + settingName: SettingName, + options?: DefenderForStorageGetOptionalParams, + ) => get(context, resourceId, settingName, options), + }; +} + +export function _getDefenderForStorageOperations( + context: SecurityCenterContext, +): DefenderForStorageOperations { + return { + ..._getDefenderForStorage(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/devOpsConfigurations/index.ts b/sdk/security/arm-security/src/classic/devOpsConfigurations/index.ts new file mode 100644 index 000000000000..156be04187e4 --- /dev/null +++ b/sdk/security/arm-security/src/classic/devOpsConfigurations/index.ts @@ -0,0 +1,221 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + $delete, + update, + createOrUpdate, + get, +} from "../../api/devOpsConfigurations/operations.js"; +import { + DevOpsConfigurationsListOptionalParams, + DevOpsConfigurationsDeleteOptionalParams, + DevOpsConfigurationsUpdateOptionalParams, + DevOpsConfigurationsCreateOrUpdateOptionalParams, + DevOpsConfigurationsGetOptionalParams, +} from "../../api/devOpsConfigurations/options.js"; +import { DevOpsConfiguration } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a DevOpsConfigurations operations. */ +export interface DevOpsConfigurationsOperations { + /** List DevOps Configurations. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes a DevOps Connector. */ + delete: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use delete instead */ + beginDelete: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => Promise, void>>; + /** @deprecated use delete instead */ + beginDeleteAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => Promise; + /** Updates a DevOps Configuration. */ + update: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => PollerLike, DevOpsConfiguration>; + /** @deprecated use update instead */ + beginUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => Promise, DevOpsConfiguration>>; + /** @deprecated use update instead */ + beginUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => Promise; + /** Creates or updates a DevOps Configuration. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => PollerLike, DevOpsConfiguration>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => Promise, DevOpsConfiguration>>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets a DevOps Configuration. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsGetOptionalParams, + ) => Promise; +} + +function _getDevOpsConfigurations(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, options), + delete: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => $delete(context, resourceGroupName, securityConnectorName, options), + beginDelete: async ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => { + const poller = $delete(context, resourceGroupName, securityConnectorName, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginDeleteAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsDeleteOptionalParams, + ) => { + return await $delete(context, resourceGroupName, securityConnectorName, options); + }, + update: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => update(context, resourceGroupName, securityConnectorName, devOpsConfiguration, options), + beginUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => { + const poller = update( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsUpdateOptionalParams, + ) => { + return await update( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ), + beginCreateOrUpdate: async ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => { + const poller = createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateOrUpdateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + devOpsConfiguration: DevOpsConfiguration, + options?: DevOpsConfigurationsCreateOrUpdateOptionalParams, + ) => { + return await createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + devOpsConfiguration, + options, + ); + }, + get: ( + resourceGroupName: string, + securityConnectorName: string, + options?: DevOpsConfigurationsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, options), + }; +} + +export function _getDevOpsConfigurationsOperations( + context: SecurityCenterContext, +): DevOpsConfigurationsOperations { + return { + ..._getDevOpsConfigurations(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/devOpsOperationResults/index.ts b/sdk/security/arm-security/src/classic/devOpsOperationResults/index.ts new file mode 100644 index 000000000000..2d723c72bb23 --- /dev/null +++ b/sdk/security/arm-security/src/classic/devOpsOperationResults/index.ts @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { get } from "../../api/devOpsOperationResults/operations.js"; +import { DevOpsOperationResultsGetOptionalParams } from "../../api/devOpsOperationResults/options.js"; +import { OperationStatusResult } from "../../models/models.js"; + +/** Interface representing a DevOpsOperationResults operations. */ +export interface DevOpsOperationResultsOperations { + /** Get devops long running operation result. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + operationResultId: string, + options?: DevOpsOperationResultsGetOptionalParams, + ) => Promise; +} + +function _getDevOpsOperationResults(context: SecurityCenterContext) { + return { + get: ( + resourceGroupName: string, + securityConnectorName: string, + operationResultId: string, + options?: DevOpsOperationResultsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, operationResultId, options), + }; +} + +export function _getDevOpsOperationResultsOperations( + context: SecurityCenterContext, +): DevOpsOperationResultsOperations { + return { + ..._getDevOpsOperationResults(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/deviceSecurityGroups/index.ts b/sdk/security/arm-security/src/classic/deviceSecurityGroups/index.ts new file mode 100644 index 000000000000..f13442eae5f0 --- /dev/null +++ b/sdk/security/arm-security/src/classic/deviceSecurityGroups/index.ts @@ -0,0 +1,72 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/deviceSecurityGroups/operations.js"; +import { + DeviceSecurityGroupsListOptionalParams, + DeviceSecurityGroupsDeleteOptionalParams, + DeviceSecurityGroupsCreateOrUpdateOptionalParams, + DeviceSecurityGroupsGetOptionalParams, +} from "../../api/deviceSecurityGroups/options.js"; +import { DeviceSecurityGroup } from "../../models/ioTSecurityAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a DeviceSecurityGroups operations. */ +export interface DeviceSecurityGroupsOperations { + /** Use this method get the list of device security groups for the specified IoT Hub resource. */ + list: ( + resourceId: string, + options?: DeviceSecurityGroupsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** User this method to deletes the device security group. */ + delete: ( + resourceId: string, + deviceSecurityGroupName: string, + options?: DeviceSecurityGroupsDeleteOptionalParams, + ) => Promise; + /** Use this method to creates or updates the device security group on a specified IoT Hub resource. */ + createOrUpdate: ( + resourceId: string, + deviceSecurityGroupName: string, + deviceSecurityGroup: DeviceSecurityGroup, + options?: DeviceSecurityGroupsCreateOrUpdateOptionalParams, + ) => Promise; + /** Use this method to get the device security group for the specified IoT Hub resource. */ + get: ( + resourceId: string, + deviceSecurityGroupName: string, + options?: DeviceSecurityGroupsGetOptionalParams, + ) => Promise; +} + +function _getDeviceSecurityGroups(context: SecurityCenterContext) { + return { + list: (resourceId: string, options?: DeviceSecurityGroupsListOptionalParams) => + list(context, resourceId, options), + delete: ( + resourceId: string, + deviceSecurityGroupName: string, + options?: DeviceSecurityGroupsDeleteOptionalParams, + ) => $delete(context, resourceId, deviceSecurityGroupName, options), + createOrUpdate: ( + resourceId: string, + deviceSecurityGroupName: string, + deviceSecurityGroup: DeviceSecurityGroup, + options?: DeviceSecurityGroupsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceId, deviceSecurityGroupName, deviceSecurityGroup, options), + get: ( + resourceId: string, + deviceSecurityGroupName: string, + options?: DeviceSecurityGroupsGetOptionalParams, + ) => get(context, resourceId, deviceSecurityGroupName, options), + }; +} + +export function _getDeviceSecurityGroupsOperations( + context: SecurityCenterContext, +): DeviceSecurityGroupsOperations { + return { + ..._getDeviceSecurityGroups(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/discoveredSecuritySolutions/index.ts b/sdk/security/arm-security/src/classic/discoveredSecuritySolutions/index.ts new file mode 100644 index 000000000000..d23012cf3756 --- /dev/null +++ b/sdk/security/arm-security/src/classic/discoveredSecuritySolutions/index.ts @@ -0,0 +1,56 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, listByHomeRegion, get } from "../../api/discoveredSecuritySolutions/operations.js"; +import { + DiscoveredSecuritySolutionsListOptionalParams, + DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + DiscoveredSecuritySolutionsGetOptionalParams, +} from "../../api/discoveredSecuritySolutions/options.js"; +import { DiscoveredSecuritySolution } from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a DiscoveredSecuritySolutions operations. */ +export interface DiscoveredSecuritySolutionsOperations { + /** Gets a list of discovered Security Solutions for the subscription. */ + list: ( + options?: DiscoveredSecuritySolutionsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a list of discovered Security Solutions for the subscription and location. */ + listByHomeRegion: ( + ascLocation: string, + options?: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a specific discovered Security Solution. */ + get: ( + resourceGroupName: string, + ascLocation: string, + discoveredSecuritySolutionName: string, + options?: DiscoveredSecuritySolutionsGetOptionalParams, + ) => Promise; +} + +function _getDiscoveredSecuritySolutions(context: SecurityCenterContext) { + return { + list: (options?: DiscoveredSecuritySolutionsListOptionalParams) => list(context, options), + listByHomeRegion: ( + ascLocation: string, + options?: DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + ) => listByHomeRegion(context, ascLocation, options), + get: ( + resourceGroupName: string, + ascLocation: string, + discoveredSecuritySolutionName: string, + options?: DiscoveredSecuritySolutionsGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, discoveredSecuritySolutionName, options), + }; +} + +export function _getDiscoveredSecuritySolutionsOperations( + context: SecurityCenterContext, +): DiscoveredSecuritySolutionsOperations { + return { + ..._getDiscoveredSecuritySolutions(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/externalSecuritySolutions/index.ts b/sdk/security/arm-security/src/classic/externalSecuritySolutions/index.ts new file mode 100644 index 000000000000..42bfa3b583c4 --- /dev/null +++ b/sdk/security/arm-security/src/classic/externalSecuritySolutions/index.ts @@ -0,0 +1,56 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, listByHomeRegion, get } from "../../api/externalSecuritySolutions/operations.js"; +import { + ExternalSecuritySolutionsListOptionalParams, + ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ExternalSecuritySolutionsGetOptionalParams, +} from "../../api/externalSecuritySolutions/options.js"; +import { ExternalSecuritySolutionUnion } from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a ExternalSecuritySolutions operations. */ +export interface ExternalSecuritySolutionsOperations { + /** Gets a list of external security solutions for the subscription. */ + list: ( + options?: ExternalSecuritySolutionsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a list of external Security Solutions for the subscription and location. */ + listByHomeRegion: ( + ascLocation: string, + options?: ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a specific external Security Solution. */ + get: ( + resourceGroupName: string, + ascLocation: string, + externalSecuritySolutionsName: string, + options?: ExternalSecuritySolutionsGetOptionalParams, + ) => Promise; +} + +function _getExternalSecuritySolutions(context: SecurityCenterContext) { + return { + list: (options?: ExternalSecuritySolutionsListOptionalParams) => list(context, options), + listByHomeRegion: ( + ascLocation: string, + options?: ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ) => listByHomeRegion(context, ascLocation, options), + get: ( + resourceGroupName: string, + ascLocation: string, + externalSecuritySolutionsName: string, + options?: ExternalSecuritySolutionsGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, externalSecuritySolutionsName, options), + }; +} + +export function _getExternalSecuritySolutionsOperations( + context: SecurityCenterContext, +): ExternalSecuritySolutionsOperations { + return { + ..._getExternalSecuritySolutions(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitHubIssues/index.ts b/sdk/security/arm-security/src/classic/gitHubIssues/index.ts new file mode 100644 index 000000000000..65aea7446bb6 --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitHubIssues/index.ts @@ -0,0 +1,88 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { create } from "../../api/gitHubIssues/operations.js"; +import { GitHubIssuesCreateOptionalParams } from "../../api/gitHubIssues/options.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a GitHubIssues operations. */ +export interface GitHubIssuesOperations { + /** Creates a GitHub issue for the specified repository and assessment. */ + create: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => PollerLike, void>; + /** @deprecated use create instead */ + beginCreate: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => Promise, void>>; + /** @deprecated use create instead */ + beginCreateAndWait: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => Promise; +} + +function _getGitHubIssues(context: SecurityCenterContext) { + return { + create: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => create(context, resourceGroupName, securityConnectorName, ownerName, repoName, options), + beginCreate: async ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => { + const poller = create( + context, + resourceGroupName, + securityConnectorName, + ownerName, + repoName, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateAndWait: async ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubIssuesCreateOptionalParams, + ) => { + return await create( + context, + resourceGroupName, + securityConnectorName, + ownerName, + repoName, + options, + ); + }, + }; +} + +export function _getGitHubIssuesOperations(context: SecurityCenterContext): GitHubIssuesOperations { + return { + ..._getGitHubIssues(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitHubOwners/index.ts b/sdk/security/arm-security/src/classic/gitHubOwners/index.ts new file mode 100644 index 000000000000..abc510739e63 --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitHubOwners/index.ts @@ -0,0 +1,65 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { listAvailable, list, get } from "../../api/gitHubOwners/operations.js"; +import { + GitHubOwnersListAvailableOptionalParams, + GitHubOwnersListOptionalParams, + GitHubOwnersGetOptionalParams, +} from "../../api/gitHubOwners/options.js"; +import { + GitHubOwner, + GitHubOwnerListResponse, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a GitHubOwners operations. */ +export interface GitHubOwnersOperations { + /** Returns a list of all GitHub owners accessible by the user token consumed by the connector. */ + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitHubOwnersListAvailableOptionalParams, + ) => Promise; + /** Returns a list of GitHub owners onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitHubOwnersListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Returns a monitored GitHub owner. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options?: GitHubOwnersGetOptionalParams, + ) => Promise; +} + +function _getGitHubOwners(context: SecurityCenterContext) { + return { + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitHubOwnersListAvailableOptionalParams, + ) => listAvailable(context, resourceGroupName, securityConnectorName, options), + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitHubOwnersListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, options), + get: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options?: GitHubOwnersGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, ownerName, options), + }; +} + +export function _getGitHubOwnersOperations(context: SecurityCenterContext): GitHubOwnersOperations { + return { + ..._getGitHubOwners(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitHubRepos/index.ts b/sdk/security/arm-security/src/classic/gitHubRepos/index.ts new file mode 100644 index 000000000000..1447ca852aaf --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitHubRepos/index.ts @@ -0,0 +1,54 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/gitHubRepos/operations.js"; +import { + GitHubReposListOptionalParams, + GitHubReposGetOptionalParams, +} from "../../api/gitHubRepos/options.js"; +import { GitHubRepository } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a GitHubRepos operations. */ +export interface GitHubReposOperations { + /** Returns a list of GitHub repositories onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options?: GitHubReposListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Returns a monitored GitHub repository. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubReposGetOptionalParams, + ) => Promise; +} + +function _getGitHubRepos(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + options?: GitHubReposListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, ownerName, options), + get: ( + resourceGroupName: string, + securityConnectorName: string, + ownerName: string, + repoName: string, + options?: GitHubReposGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, ownerName, repoName, options), + }; +} + +export function _getGitHubReposOperations(context: SecurityCenterContext): GitHubReposOperations { + return { + ..._getGitHubRepos(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitLabGroups/index.ts b/sdk/security/arm-security/src/classic/gitLabGroups/index.ts new file mode 100644 index 000000000000..172dfdaae084 --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitLabGroups/index.ts @@ -0,0 +1,65 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { listAvailable, list, get } from "../../api/gitLabGroups/operations.js"; +import { + GitLabGroupsListAvailableOptionalParams, + GitLabGroupsListOptionalParams, + GitLabGroupsGetOptionalParams, +} from "../../api/gitLabGroups/options.js"; +import { + GitLabGroup, + GitLabGroupListResponse, +} from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a GitLabGroups operations. */ +export interface GitLabGroupsOperations { + /** Returns a list of all GitLab groups accessible by the user token consumed by the connector. */ + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitLabGroupsListAvailableOptionalParams, + ) => Promise; + /** Returns a list of GitLab groups onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitLabGroupsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Returns a monitored GitLab Group resource for a given fully-qualified name. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabGroupsGetOptionalParams, + ) => Promise; +} + +function _getGitLabGroups(context: SecurityCenterContext) { + return { + listAvailable: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitLabGroupsListAvailableOptionalParams, + ) => listAvailable(context, resourceGroupName, securityConnectorName, options), + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: GitLabGroupsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, options), + get: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabGroupsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, groupFQName, options), + }; +} + +export function _getGitLabGroupsOperations(context: SecurityCenterContext): GitLabGroupsOperations { + return { + ..._getGitLabGroups(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitLabProjects/index.ts b/sdk/security/arm-security/src/classic/gitLabProjects/index.ts new file mode 100644 index 000000000000..d361e38b4b49 --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitLabProjects/index.ts @@ -0,0 +1,56 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/gitLabProjects/operations.js"; +import { + GitLabProjectsListOptionalParams, + GitLabProjectsGetOptionalParams, +} from "../../api/gitLabProjects/options.js"; +import { GitLabProject } from "../../models/securityConnectorsDevOpsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a GitLabProjects operations. */ +export interface GitLabProjectsOperations { + /** Gets a list of GitLab projects that are directly owned by given group and onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabProjectsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Returns a monitored GitLab Project resource for a given fully-qualified group name and project name. */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + projectName: string, + options?: GitLabProjectsGetOptionalParams, + ) => Promise; +} + +function _getGitLabProjects(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabProjectsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, groupFQName, options), + get: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + projectName: string, + options?: GitLabProjectsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, groupFQName, projectName, options), + }; +} + +export function _getGitLabProjectsOperations( + context: SecurityCenterContext, +): GitLabProjectsOperations { + return { + ..._getGitLabProjects(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/gitLabSubgroups/index.ts b/sdk/security/arm-security/src/classic/gitLabSubgroups/index.ts new file mode 100644 index 000000000000..67e709ee633c --- /dev/null +++ b/sdk/security/arm-security/src/classic/gitLabSubgroups/index.ts @@ -0,0 +1,37 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list } from "../../api/gitLabSubgroups/operations.js"; +import { GitLabSubgroupsListOptionalParams } from "../../api/gitLabSubgroups/options.js"; +import { GitLabGroupListResponse } from "../../models/securityConnectorsDevOpsAPI/models.js"; + +/** Interface representing a GitLabSubgroups operations. */ +export interface GitLabSubgroupsOperations { + /** Gets nested subgroups of given GitLab Group which are onboarded to the connector. */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabSubgroupsListOptionalParams, + ) => Promise; +} + +function _getGitLabSubgroups(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + groupFQName: string, + options?: GitLabSubgroupsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, groupFQName, options), + }; +} + +export function _getGitLabSubgroupsOperations( + context: SecurityCenterContext, +): GitLabSubgroupsOperations { + return { + ..._getGitLabSubgroups(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/governanceAssignments/index.ts b/sdk/security/arm-security/src/classic/governanceAssignments/index.ts new file mode 100644 index 000000000000..1a4a15bb707b --- /dev/null +++ b/sdk/security/arm-security/src/classic/governanceAssignments/index.ts @@ -0,0 +1,83 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/governanceAssignments/operations.js"; +import { + GovernanceAssignmentsListOptionalParams, + GovernanceAssignmentsDeleteOptionalParams, + GovernanceAssignmentsCreateOrUpdateOptionalParams, + GovernanceAssignmentsGetOptionalParams, +} from "../../api/governanceAssignments/options.js"; +import { GovernanceAssignment } from "../../models/governanceAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a GovernanceAssignments operations. */ +export interface GovernanceAssignmentsOperations { + /** Get governance assignments on all of your resources inside a scope */ + list: ( + scope: string, + assessmentName: string, + options?: GovernanceAssignmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a GovernanceAssignment over a given scope */ + delete: ( + scope: string, + assessmentName: string, + assignmentKey: string, + options?: GovernanceAssignmentsDeleteOptionalParams, + ) => Promise; + /** Creates or updates a governance assignment on the given subscription. */ + createOrUpdate: ( + scope: string, + assessmentName: string, + assignmentKey: string, + governanceAssignment: GovernanceAssignment, + options?: GovernanceAssignmentsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific governanceAssignment for the requested scope by AssignmentKey */ + get: ( + scope: string, + assessmentName: string, + assignmentKey: string, + options?: GovernanceAssignmentsGetOptionalParams, + ) => Promise; +} + +function _getGovernanceAssignments(context: SecurityCenterContext) { + return { + list: ( + scope: string, + assessmentName: string, + options?: GovernanceAssignmentsListOptionalParams, + ) => list(context, scope, assessmentName, options), + delete: ( + scope: string, + assessmentName: string, + assignmentKey: string, + options?: GovernanceAssignmentsDeleteOptionalParams, + ) => $delete(context, scope, assessmentName, assignmentKey, options), + createOrUpdate: ( + scope: string, + assessmentName: string, + assignmentKey: string, + governanceAssignment: GovernanceAssignment, + options?: GovernanceAssignmentsCreateOrUpdateOptionalParams, + ) => + createOrUpdate(context, scope, assessmentName, assignmentKey, governanceAssignment, options), + get: ( + scope: string, + assessmentName: string, + assignmentKey: string, + options?: GovernanceAssignmentsGetOptionalParams, + ) => get(context, scope, assessmentName, assignmentKey, options), + }; +} + +export function _getGovernanceAssignmentsOperations( + context: SecurityCenterContext, +): GovernanceAssignmentsOperations { + return { + ..._getGovernanceAssignments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/governanceRules/index.ts b/sdk/security/arm-security/src/classic/governanceRules/index.ts new file mode 100644 index 000000000000..4dd1a295c4a5 --- /dev/null +++ b/sdk/security/arm-security/src/classic/governanceRules/index.ts @@ -0,0 +1,154 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + operationResults, + execute, + list, + $delete, + createOrUpdate, + get, +} from "../../api/governanceRules/operations.js"; +import { + GovernanceRulesOperationResultsOptionalParams, + GovernanceRulesExecuteOptionalParams, + GovernanceRulesListOptionalParams, + GovernanceRulesDeleteOptionalParams, + GovernanceRulesCreateOrUpdateOptionalParams, + GovernanceRulesGetOptionalParams, +} from "../../api/governanceRules/options.js"; +import { GovernanceRule, OperationResult } from "../../models/governanceAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a GovernanceRules operations. */ +export interface GovernanceRulesOperations { + /** Get governance rules long run operation result for the requested scope by ruleId and operationId */ + operationResults: ( + scope: string, + ruleId: string, + operationId: string, + options?: GovernanceRulesOperationResultsOptionalParams, + ) => Promise; + /** Execute a governance rule */ + execute: ( + scope: string, + ruleId: string, + options?: GovernanceRulesExecuteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use execute instead */ + beginExecute: ( + scope: string, + ruleId: string, + options?: GovernanceRulesExecuteOptionalParams, + ) => Promise, void>>; + /** @deprecated use execute instead */ + beginExecuteAndWait: ( + scope: string, + ruleId: string, + options?: GovernanceRulesExecuteOptionalParams, + ) => Promise; + /** Get a list of all relevant governance rules over a scope */ + list: ( + scope: string, + options?: GovernanceRulesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a Governance rule over a given scope */ + delete: ( + scope: string, + ruleId: string, + options?: GovernanceRulesDeleteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use delete instead */ + beginDelete: ( + scope: string, + ruleId: string, + options?: GovernanceRulesDeleteOptionalParams, + ) => Promise, void>>; + /** @deprecated use delete instead */ + beginDeleteAndWait: ( + scope: string, + ruleId: string, + options?: GovernanceRulesDeleteOptionalParams, + ) => Promise; + /** Creates or updates a governance rule over a given scope */ + createOrUpdate: ( + scope: string, + ruleId: string, + governanceRule: GovernanceRule, + options?: GovernanceRulesCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific governance rule for the requested scope by ruleId */ + get: ( + scope: string, + ruleId: string, + options?: GovernanceRulesGetOptionalParams, + ) => Promise; +} + +function _getGovernanceRules(context: SecurityCenterContext) { + return { + operationResults: ( + scope: string, + ruleId: string, + operationId: string, + options?: GovernanceRulesOperationResultsOptionalParams, + ) => operationResults(context, scope, ruleId, operationId, options), + execute: (scope: string, ruleId: string, options?: GovernanceRulesExecuteOptionalParams) => + execute(context, scope, ruleId, options), + beginExecute: async ( + scope: string, + ruleId: string, + options?: GovernanceRulesExecuteOptionalParams, + ) => { + const poller = execute(context, scope, ruleId, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginExecuteAndWait: async ( + scope: string, + ruleId: string, + options?: GovernanceRulesExecuteOptionalParams, + ) => { + return await execute(context, scope, ruleId, options); + }, + list: (scope: string, options?: GovernanceRulesListOptionalParams) => + list(context, scope, options), + delete: (scope: string, ruleId: string, options?: GovernanceRulesDeleteOptionalParams) => + $delete(context, scope, ruleId, options), + beginDelete: async ( + scope: string, + ruleId: string, + options?: GovernanceRulesDeleteOptionalParams, + ) => { + const poller = $delete(context, scope, ruleId, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginDeleteAndWait: async ( + scope: string, + ruleId: string, + options?: GovernanceRulesDeleteOptionalParams, + ) => { + return await $delete(context, scope, ruleId, options); + }, + createOrUpdate: ( + scope: string, + ruleId: string, + governanceRule: GovernanceRule, + options?: GovernanceRulesCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, scope, ruleId, governanceRule, options), + get: (scope: string, ruleId: string, options?: GovernanceRulesGetOptionalParams) => + get(context, scope, ruleId, options), + }; +} + +export function _getGovernanceRulesOperations( + context: SecurityCenterContext, +): GovernanceRulesOperations { + return { + ..._getGovernanceRules(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/healthReports/index.ts b/sdk/security/arm-security/src/classic/healthReports/index.ts new file mode 100644 index 000000000000..e963230d4b41 --- /dev/null +++ b/sdk/security/arm-security/src/classic/healthReports/index.ts @@ -0,0 +1,43 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/healthReports/operations.js"; +import { + HealthReportsListOptionalParams, + HealthReportsGetOptionalParams, +} from "../../api/healthReports/options.js"; +import { HealthReport } from "../../models/healthReportsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a HealthReports operations. */ +export interface HealthReportsOperations { + /** Get a list of all health reports inside a scope. Valid scopes are: subscription (format: 'subscriptions/{subscriptionId}'), or security connector (format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' */ + list: ( + scope: string, + options?: HealthReportsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get health report of resource */ + get: ( + resourceId: string, + healthReportName: string, + options?: HealthReportsGetOptionalParams, + ) => Promise; +} + +function _getHealthReports(context: SecurityCenterContext) { + return { + list: (scope: string, options?: HealthReportsListOptionalParams) => + list(context, scope, options), + get: (resourceId: string, healthReportName: string, options?: HealthReportsGetOptionalParams) => + get(context, resourceId, healthReportName, options), + }; +} + +export function _getHealthReportsOperations( + context: SecurityCenterContext, +): HealthReportsOperations { + return { + ..._getHealthReports(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/index.ts b/sdk/security/arm-security/src/classic/index.ts new file mode 100644 index 000000000000..2516a0159c31 --- /dev/null +++ b/sdk/security/arm-security/src/classic/index.ts @@ -0,0 +1,79 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { AdvancedThreatProtectionOperations } from "./advancedThreatProtection/index.js"; +export type { AlertsOperations } from "./alerts/index.js"; +export type { AlertsSuppressionRulesOperations } from "./alertsSuppressionRules/index.js"; +export type { AllowedConnectionsOperations } from "./allowedConnections/index.js"; +export type { APICollectionsOperations } from "./apiCollections/index.js"; +export type { ApplicationOperations } from "./application/index.js"; +export type { ApplicationsOperations } from "./applications/index.js"; +export type { AssessmentsOperations } from "./assessments/index.js"; +export type { AssessmentsMetadataOperations } from "./assessmentsMetadata/index.js"; +export type { AssignmentsOperations } from "./assignments/index.js"; +export type { AutomationsOperations } from "./automations/index.js"; +export type { AutoProvisioningSettingsOperations } from "./autoProvisioningSettings/index.js"; +export type { AzureDevOpsOrgsOperations } from "./azureDevOpsOrgs/index.js"; +export type { AzureDevOpsProjectsOperations } from "./azureDevOpsProjects/index.js"; +export type { AzureDevOpsReposOperations } from "./azureDevOpsRepos/index.js"; +export type { ComplianceResultsOperations } from "./complianceResults/index.js"; +export type { CompliancesOperations } from "./compliances/index.js"; +export type { CustomRecommendationsOperations } from "./customRecommendations/index.js"; +export type { DefenderForStorageOperations } from "./defenderForStorage/index.js"; +export type { DeviceSecurityGroupsOperations } from "./deviceSecurityGroups/index.js"; +export type { DevOpsConfigurationsOperations } from "./devOpsConfigurations/index.js"; +export type { DevOpsOperationResultsOperations } from "./devOpsOperationResults/index.js"; +export type { DiscoveredSecuritySolutionsOperations } from "./discoveredSecuritySolutions/index.js"; +export type { ExternalSecuritySolutionsOperations } from "./externalSecuritySolutions/index.js"; +export type { GitHubIssuesOperations } from "./gitHubIssues/index.js"; +export type { GitHubOwnersOperations } from "./gitHubOwners/index.js"; +export type { GitHubReposOperations } from "./gitHubRepos/index.js"; +export type { GitLabGroupsOperations } from "./gitLabGroups/index.js"; +export type { GitLabProjectsOperations } from "./gitLabProjects/index.js"; +export type { GitLabSubgroupsOperations } from "./gitLabSubgroups/index.js"; +export type { GovernanceAssignmentsOperations } from "./governanceAssignments/index.js"; +export type { GovernanceRulesOperations } from "./governanceRules/index.js"; +export type { HealthReportsOperations } from "./healthReports/index.js"; +export type { InformationProtectionPoliciesOperations } from "./informationProtectionPolicies/index.js"; +export type { IotSecuritySolutionOperations } from "./iotSecuritySolution/index.js"; +export type { IotSecuritySolutionAnalyticsOperations } from "./iotSecuritySolutionAnalytics/index.js"; +export type { IotSecuritySolutionsAnalyticsAggregatedAlertOperations } from "./iotSecuritySolutionsAnalyticsAggregatedAlert/index.js"; +export type { IotSecuritySolutionsAnalyticsRecommendationOperations } from "./iotSecuritySolutionsAnalyticsRecommendation/index.js"; +export type { JitNetworkAccessPoliciesOperations } from "./jitNetworkAccessPolicies/index.js"; +export type { LocationsOperations } from "./locations/index.js"; +export type { MdeOnboardingsOperations } from "./mdeOnboardings/index.js"; +export type { OperationResultsOperations } from "./operationResults/index.js"; +export type { OperationsOperations } from "./operations/index.js"; +export type { OperationStatusesOperations } from "./operationStatuses/index.js"; +export type { PricingsOperations } from "./pricings/index.js"; +export type { PrivateEndpointConnectionsOperations } from "./privateEndpointConnections/index.js"; +export type { PrivateLinkResourcesOperations } from "./privateLinkResources/index.js"; +export type { PrivateLinksOperations } from "./privateLinks/index.js"; +export type { RegulatoryComplianceAssessmentsOperations } from "./regulatoryComplianceAssessments/index.js"; +export type { RegulatoryComplianceControlsOperations } from "./regulatoryComplianceControls/index.js"; +export type { RegulatoryComplianceStandardsOperations } from "./regulatoryComplianceStandards/index.js"; +export type { SecureScoreControlDefinitionsOperations } from "./secureScoreControlDefinitions/index.js"; +export type { SecureScoreControlsOperations } from "./secureScoreControls/index.js"; +export type { SecureScoresOperations } from "./secureScores/index.js"; +export type { SecurityConnectorApplicationOperations } from "./securityConnectorApplication/index.js"; +export type { SecurityConnectorApplicationsOperations } from "./securityConnectorApplications/index.js"; +export type { SecurityConnectorsOperations } from "./securityConnectors/index.js"; +export type { SecurityContactsOperations } from "./securityContacts/index.js"; +export type { SecurityOperatorsOperations } from "./securityOperators/index.js"; +export type { SecuritySolutionsOperations } from "./securitySolutions/index.js"; +export type { SecuritySolutionsReferenceDataOperations } from "./securitySolutionsReferenceData/index.js"; +export type { SecurityStandardsOperations } from "./securityStandards/index.js"; +export type { SensitivitySettingsOperations } from "./sensitivitySettings/index.js"; +export type { ServerVulnerabilityAssessmentOperations } from "./serverVulnerabilityAssessment/index.js"; +export type { ServerVulnerabilityAssessmentsSettingsOperations } from "./serverVulnerabilityAssessmentsSettings/index.js"; +export type { SettingsOperations } from "./settings/index.js"; +export type { SqlVulnerabilityAssessmentBaselineRulesOperations } from "./sqlVulnerabilityAssessmentBaselineRules/index.js"; +export type { SqlVulnerabilityAssessmentScanResultsOperations } from "./sqlVulnerabilityAssessmentScanResults/index.js"; +export type { SqlVulnerabilityAssessmentScansOperations } from "./sqlVulnerabilityAssessmentScans/index.js"; +export type { SqlVulnerabilityAssessmentSettingsOperations } from "./sqlVulnerabilityAssessmentSettings/index.js"; +export type { StandardAssignmentsOperations } from "./standardAssignments/index.js"; +export type { StandardsOperations } from "./standards/index.js"; +export type { SubAssessmentsOperations } from "./subAssessments/index.js"; +export type { TasksOperations } from "./tasks/index.js"; +export type { TopologyOperations } from "./topology/index.js"; +export type { WorkspaceSettingsOperations } from "./workspaceSettings/index.js"; diff --git a/sdk/security/arm-security/src/classic/informationProtectionPolicies/index.ts b/sdk/security/arm-security/src/classic/informationProtectionPolicies/index.ts new file mode 100644 index 000000000000..feeebc98da89 --- /dev/null +++ b/sdk/security/arm-security/src/classic/informationProtectionPolicies/index.ts @@ -0,0 +1,70 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, createOrUpdate, get } from "../../api/informationProtectionPolicies/operations.js"; +import { + InformationProtectionPoliciesListOptionalParams, + InformationProtectionPoliciesCreateOrUpdateOptionalParams, + InformationProtectionPoliciesGetOptionalParams, +} from "../../api/informationProtectionPolicies/options.js"; +import { + InformationProtectionPolicy, + InformationProtectionPolicyName, +} from "../../models/legacySettingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a InformationProtectionPolicies operations. */ +export interface InformationProtectionPoliciesOperations { + /** Information protection policies of a specific management group. */ + list: ( + scope: string, + options?: InformationProtectionPoliciesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Details of the information protection policy. */ + createOrUpdate: ( + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + informationProtectionPolicy: InformationProtectionPolicy, + options?: InformationProtectionPoliciesCreateOrUpdateOptionalParams, + ) => Promise; + /** Details of the information protection policy. */ + get: ( + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + options?: InformationProtectionPoliciesGetOptionalParams, + ) => Promise; +} + +function _getInformationProtectionPolicies(context: SecurityCenterContext) { + return { + list: (scope: string, options?: InformationProtectionPoliciesListOptionalParams) => + list(context, scope, options), + createOrUpdate: ( + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + informationProtectionPolicy: InformationProtectionPolicy, + options?: InformationProtectionPoliciesCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + scope, + informationProtectionPolicyName, + informationProtectionPolicy, + options, + ), + get: ( + scope: string, + informationProtectionPolicyName: InformationProtectionPolicyName, + options?: InformationProtectionPoliciesGetOptionalParams, + ) => get(context, scope, informationProtectionPolicyName, options), + }; +} + +export function _getInformationProtectionPoliciesOperations( + context: SecurityCenterContext, +): InformationProtectionPoliciesOperations { + return { + ..._getInformationProtectionPolicies(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/iotSecuritySolution/index.ts b/sdk/security/arm-security/src/classic/iotSecuritySolution/index.ts new file mode 100644 index 000000000000..87098b139b00 --- /dev/null +++ b/sdk/security/arm-security/src/classic/iotSecuritySolution/index.ts @@ -0,0 +1,105 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listBySubscription, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "../../api/iotSecuritySolution/operations.js"; +import { + IotSecuritySolutionListBySubscriptionOptionalParams, + IotSecuritySolutionListByResourceGroupOptionalParams, + IotSecuritySolutionDeleteOptionalParams, + IotSecuritySolutionUpdateOptionalParams, + IotSecuritySolutionCreateOrUpdateOptionalParams, + IotSecuritySolutionGetOptionalParams, +} from "../../api/iotSecuritySolution/options.js"; +import { + IoTSecuritySolutionModel, + UpdateIotSecuritySolutionData, +} from "../../models/ioTSecurityAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a IotSecuritySolution operations. */ +export interface IotSecuritySolutionOperations { + /** Use this method to get the list of IoT Security solutions by subscription. */ + listBySubscription: ( + options?: IotSecuritySolutionListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Use this method to get the list IoT Security solutions organized by resource group. */ + listByResourceGroup: ( + resourceGroupName: string, + options?: IotSecuritySolutionListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Use this method to delete yours IoT Security solution */ + delete: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionDeleteOptionalParams, + ) => Promise; + /** Use this method to update existing IoT Security solution tags or user defined resources. To update other fields use the CreateOrUpdate method. */ + update: ( + resourceGroupName: string, + solutionName: string, + updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, + options?: IotSecuritySolutionUpdateOptionalParams, + ) => Promise; + /** Use this method to create or update yours IoT Security solution */ + createOrUpdate: ( + resourceGroupName: string, + solutionName: string, + iotSecuritySolutionData: IoTSecuritySolutionModel, + options?: IotSecuritySolutionCreateOrUpdateOptionalParams, + ) => Promise; + /** User this method to get details of a specific IoT Security solution based on solution name */ + get: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionGetOptionalParams, + ) => Promise; +} + +function _getIotSecuritySolution(context: SecurityCenterContext) { + return { + listBySubscription: (options?: IotSecuritySolutionListBySubscriptionOptionalParams) => + listBySubscription(context, options), + listByResourceGroup: ( + resourceGroupName: string, + options?: IotSecuritySolutionListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionDeleteOptionalParams, + ) => $delete(context, resourceGroupName, solutionName, options), + update: ( + resourceGroupName: string, + solutionName: string, + updateIotSecuritySolutionData: UpdateIotSecuritySolutionData, + options?: IotSecuritySolutionUpdateOptionalParams, + ) => update(context, resourceGroupName, solutionName, updateIotSecuritySolutionData, options), + createOrUpdate: ( + resourceGroupName: string, + solutionName: string, + iotSecuritySolutionData: IoTSecuritySolutionModel, + options?: IotSecuritySolutionCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceGroupName, solutionName, iotSecuritySolutionData, options), + get: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionGetOptionalParams, + ) => get(context, resourceGroupName, solutionName, options), + }; +} + +export function _getIotSecuritySolutionOperations( + context: SecurityCenterContext, +): IotSecuritySolutionOperations { + return { + ..._getIotSecuritySolution(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/iotSecuritySolutionAnalytics/index.ts b/sdk/security/arm-security/src/classic/iotSecuritySolutionAnalytics/index.ts new file mode 100644 index 000000000000..573cd6493be7 --- /dev/null +++ b/sdk/security/arm-security/src/classic/iotSecuritySolutionAnalytics/index.ts @@ -0,0 +1,52 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/iotSecuritySolutionAnalytics/operations.js"; +import { + IotSecuritySolutionAnalyticsListOptionalParams, + IotSecuritySolutionAnalyticsGetOptionalParams, +} from "../../api/iotSecuritySolutionAnalytics/options.js"; +import { + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelList, +} from "../../models/ioTSecurityAPI/models.js"; + +/** Interface representing a IotSecuritySolutionAnalytics operations. */ +export interface IotSecuritySolutionAnalyticsOperations { + /** Use this method to get IoT security Analytics metrics in an array. */ + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionAnalyticsListOptionalParams, + ) => Promise; + /** Use this method to get IoT Security Analytics metrics. */ + get: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionAnalyticsGetOptionalParams, + ) => Promise; +} + +function _getIotSecuritySolutionAnalytics(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionAnalyticsListOptionalParams, + ) => list(context, resourceGroupName, solutionName, options), + get: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionAnalyticsGetOptionalParams, + ) => get(context, resourceGroupName, solutionName, options), + }; +} + +export function _getIotSecuritySolutionAnalyticsOperations( + context: SecurityCenterContext, +): IotSecuritySolutionAnalyticsOperations { + return { + ..._getIotSecuritySolutionAnalytics(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts b/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts new file mode 100644 index 000000000000..36b36d303b0d --- /dev/null +++ b/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsAggregatedAlert/index.ts @@ -0,0 +1,70 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + dismiss, + list, + get, +} from "../../api/iotSecuritySolutionsAnalyticsAggregatedAlert/operations.js"; +import { + IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, +} from "../../api/iotSecuritySolutionsAnalyticsAggregatedAlert/options.js"; +import { IoTSecurityAggregatedAlert } from "../../models/ioTSecurityAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a IotSecuritySolutionsAnalyticsAggregatedAlert operations. */ +export interface IotSecuritySolutionsAnalyticsAggregatedAlertOperations { + /** Use this method to dismiss an aggregated IoT Security Solution Alert. */ + dismiss: ( + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + ) => Promise; + /** Use this method to get the aggregated alert list of yours IoT Security solution. */ + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Use this method to get a single the aggregated alert of yours IoT Security solution. This aggregation is performed by alert name. */ + get: ( + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, + ) => Promise; +} + +function _getIotSecuritySolutionsAnalyticsAggregatedAlert(context: SecurityCenterContext) { + return { + dismiss: ( + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + ) => dismiss(context, resourceGroupName, solutionName, aggregatedAlertName, options), + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + ) => list(context, resourceGroupName, solutionName, options), + get: ( + resourceGroupName: string, + solutionName: string, + aggregatedAlertName: string, + options?: IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, + ) => get(context, resourceGroupName, solutionName, aggregatedAlertName, options), + }; +} + +export function _getIotSecuritySolutionsAnalyticsAggregatedAlertOperations( + context: SecurityCenterContext, +): IotSecuritySolutionsAnalyticsAggregatedAlertOperations { + return { + ..._getIotSecuritySolutionsAnalyticsAggregatedAlert(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsRecommendation/index.ts b/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsRecommendation/index.ts new file mode 100644 index 000000000000..08c709475be1 --- /dev/null +++ b/sdk/security/arm-security/src/classic/iotSecuritySolutionsAnalyticsRecommendation/index.ts @@ -0,0 +1,52 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/iotSecuritySolutionsAnalyticsRecommendation/operations.js"; +import { + IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, +} from "../../api/iotSecuritySolutionsAnalyticsRecommendation/options.js"; +import { IoTSecurityAggregatedRecommendation } from "../../models/ioTSecurityAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a IotSecuritySolutionsAnalyticsRecommendation operations. */ +export interface IotSecuritySolutionsAnalyticsRecommendationOperations { + /** Use this method to get the list of aggregated security analytics recommendations of yours IoT Security solution. */ + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Use this method to get the aggregated security analytics recommendation of yours IoT Security solution. This aggregation is performed by recommendation name. */ + get: ( + resourceGroupName: string, + solutionName: string, + aggregatedRecommendationName: string, + options?: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, + ) => Promise; +} + +function _getIotSecuritySolutionsAnalyticsRecommendation(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + solutionName: string, + options?: IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + ) => list(context, resourceGroupName, solutionName, options), + get: ( + resourceGroupName: string, + solutionName: string, + aggregatedRecommendationName: string, + options?: IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, + ) => get(context, resourceGroupName, solutionName, aggregatedRecommendationName, options), + }; +} + +export function _getIotSecuritySolutionsAnalyticsRecommendationOperations( + context: SecurityCenterContext, +): IotSecuritySolutionsAnalyticsRecommendationOperations { + return { + ..._getIotSecuritySolutionsAnalyticsRecommendation(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/jitNetworkAccessPolicies/index.ts b/sdk/security/arm-security/src/classic/jitNetworkAccessPolicies/index.ts new file mode 100644 index 000000000000..05334596b46e --- /dev/null +++ b/sdk/security/arm-security/src/classic/jitNetworkAccessPolicies/index.ts @@ -0,0 +1,146 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listByResourceGroup, + list, + initiate, + listByRegion, + listByResourceGroupAndRegion, + $delete, + createOrUpdate, + get, +} from "../../api/jitNetworkAccessPolicies/operations.js"; +import { + JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + JitNetworkAccessPoliciesListOptionalParams, + JitNetworkAccessPoliciesInitiateOptionalParams, + JitNetworkAccessPoliciesListByRegionOptionalParams, + JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + JitNetworkAccessPoliciesDeleteOptionalParams, + JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + JitNetworkAccessPoliciesGetOptionalParams, +} from "../../api/jitNetworkAccessPolicies/options.js"; +import { + JitNetworkAccessPolicy, + JitNetworkAccessRequest, + JitNetworkAccessPolicyInitiateRequest, +} from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a JitNetworkAccessPolicies operations. */ +export interface JitNetworkAccessPoliciesOperations { + /** Policies for protecting resources using Just-in-Time access control for the subscription, location */ + listByResourceGroup: ( + resourceGroupName: string, + options?: JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Policies for protecting resources using Just-in-Time access control. */ + list: ( + options?: JitNetworkAccessPoliciesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Initiate a JIT access from a specific Just-in-Time policy configuration. */ + initiate: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicyInitiateRequest, + options?: JitNetworkAccessPoliciesInitiateOptionalParams, + ) => Promise; + /** Policies for protecting resources using Just-in-Time access control for the subscription, location */ + listByRegion: ( + ascLocation: string, + options?: JitNetworkAccessPoliciesListByRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Policies for protecting resources using Just-in-Time access control for the subscription, location */ + listByResourceGroupAndRegion: ( + resourceGroupName: string, + ascLocation: string, + options?: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a Just-in-Time access control policy. */ + delete: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options?: JitNetworkAccessPoliciesDeleteOptionalParams, + ) => Promise; + /** Create a policy for protecting resources using Just-in-Time access control */ + createOrUpdate: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicy, + options?: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + ) => Promise; + /** Policies for protecting resources using Just-in-Time access control for the subscription, location */ + get: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options?: JitNetworkAccessPoliciesGetOptionalParams, + ) => Promise; +} + +function _getJitNetworkAccessPolicies(context: SecurityCenterContext) { + return { + listByResourceGroup: ( + resourceGroupName: string, + options?: JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + list: (options?: JitNetworkAccessPoliciesListOptionalParams) => list(context, options), + initiate: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicyInitiateRequest, + options?: JitNetworkAccessPoliciesInitiateOptionalParams, + ) => + initiate(context, resourceGroupName, ascLocation, jitNetworkAccessPolicyName, body, options), + listByRegion: ( + ascLocation: string, + options?: JitNetworkAccessPoliciesListByRegionOptionalParams, + ) => listByRegion(context, ascLocation, options), + listByResourceGroupAndRegion: ( + resourceGroupName: string, + ascLocation: string, + options?: JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + ) => listByResourceGroupAndRegion(context, resourceGroupName, ascLocation, options), + delete: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options?: JitNetworkAccessPoliciesDeleteOptionalParams, + ) => $delete(context, resourceGroupName, ascLocation, jitNetworkAccessPolicyName, options), + createOrUpdate: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + body: JitNetworkAccessPolicy, + options?: JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + ascLocation, + jitNetworkAccessPolicyName, + body, + options, + ), + get: ( + resourceGroupName: string, + ascLocation: string, + jitNetworkAccessPolicyName: string, + options?: JitNetworkAccessPoliciesGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, jitNetworkAccessPolicyName, options), + }; +} + +export function _getJitNetworkAccessPoliciesOperations( + context: SecurityCenterContext, +): JitNetworkAccessPoliciesOperations { + return { + ..._getJitNetworkAccessPolicies(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/locations/index.ts b/sdk/security/arm-security/src/classic/locations/index.ts new file mode 100644 index 000000000000..d2afb3623c23 --- /dev/null +++ b/sdk/security/arm-security/src/classic/locations/index.ts @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/locations/operations.js"; +import { + LocationsListOptionalParams, + LocationsGetOptionalParams, +} from "../../api/locations/options.js"; +import { AscLocation } from "../../models/locationsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Locations operations. */ +export interface LocationsOperations { + /** The location of the responsible ASC of the specific subscription (home region). For each subscription there is only one responsible location. The location in the response should be used to read or write other resources in ASC according to their ID. */ + list: (options?: LocationsListOptionalParams) => PagedAsyncIterableIterator; + /** Details of a specific location */ + get: (ascLocation: string, options?: LocationsGetOptionalParams) => Promise; +} + +function _getLocations(context: SecurityCenterContext) { + return { + list: (options?: LocationsListOptionalParams) => list(context, options), + get: (ascLocation: string, options?: LocationsGetOptionalParams) => + get(context, ascLocation, options), + }; +} + +export function _getLocationsOperations(context: SecurityCenterContext): LocationsOperations { + return { + ..._getLocations(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/mdeOnboardings/index.ts b/sdk/security/arm-security/src/classic/mdeOnboardings/index.ts new file mode 100644 index 000000000000..942f9d05f0a5 --- /dev/null +++ b/sdk/security/arm-security/src/classic/mdeOnboardings/index.ts @@ -0,0 +1,33 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/mdeOnboardings/operations.js"; +import { + MdeOnboardingsListOptionalParams, + MdeOnboardingsGetOptionalParams, +} from "../../api/mdeOnboardings/options.js"; +import { MdeOnboardingData, MdeOnboardingDataList } from "../../models/mdeOnboardingAPI/models.js"; + +/** Interface representing a MdeOnboardings operations. */ +export interface MdeOnboardingsOperations { + /** The configuration or data needed to onboard the machine to MDE */ + list: (options?: MdeOnboardingsListOptionalParams) => Promise; + /** The default configuration or data needed to onboard the machine to MDE */ + get: (options?: MdeOnboardingsGetOptionalParams) => Promise; +} + +function _getMdeOnboardings(context: SecurityCenterContext) { + return { + list: (options?: MdeOnboardingsListOptionalParams) => list(context, options), + get: (options?: MdeOnboardingsGetOptionalParams) => get(context, options), + }; +} + +export function _getMdeOnboardingsOperations( + context: SecurityCenterContext, +): MdeOnboardingsOperations { + return { + ..._getMdeOnboardings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/operationResults/index.ts b/sdk/security/arm-security/src/classic/operationResults/index.ts new file mode 100644 index 000000000000..5eeeb5e9aded --- /dev/null +++ b/sdk/security/arm-security/src/classic/operationResults/index.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { get } from "../../api/operationResults/operations.js"; +import { OperationResultsGetOptionalParams } from "../../api/operationResults/options.js"; + +/** Interface representing a OperationResults operations. */ +export interface OperationResultsOperations { + /** Returns operation results for long running operations. */ + get: ( + location: string, + operationId: string, + options?: OperationResultsGetOptionalParams, + ) => Promise; +} + +function _getOperationResults(context: SecurityCenterContext) { + return { + get: (location: string, operationId: string, options?: OperationResultsGetOptionalParams) => + get(context, location, operationId, options), + }; +} + +export function _getOperationResultsOperations( + context: SecurityCenterContext, +): OperationResultsOperations { + return { + ..._getOperationResults(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/operationStatuses/index.ts b/sdk/security/arm-security/src/classic/operationStatuses/index.ts new file mode 100644 index 000000000000..8f881f1d10c1 --- /dev/null +++ b/sdk/security/arm-security/src/classic/operationStatuses/index.ts @@ -0,0 +1,32 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { get } from "../../api/operationStatuses/operations.js"; +import { OperationStatusesGetOptionalParams } from "../../api/operationStatuses/options.js"; +import { OperationStatusResult } from "../../models/models.js"; + +/** Interface representing a OperationStatuses operations. */ +export interface OperationStatusesOperations { + /** Get the status of a long running azure asynchronous operation. */ + get: ( + location: string, + operationId: string, + options?: OperationStatusesGetOptionalParams, + ) => Promise; +} + +function _getOperationStatuses(context: SecurityCenterContext) { + return { + get: (location: string, operationId: string, options?: OperationStatusesGetOptionalParams) => + get(context, location, operationId, options), + }; +} + +export function _getOperationStatusesOperations( + context: SecurityCenterContext, +): OperationStatusesOperations { + return { + ..._getOperationStatuses(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/operations/index.ts b/sdk/security/arm-security/src/classic/operations/index.ts new file mode 100644 index 000000000000..faeb22b14dcd --- /dev/null +++ b/sdk/security/arm-security/src/classic/operations/index.ts @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list } from "../../api/operations/operations.js"; +import { OperationsListOptionalParams } from "../../api/operations/options.js"; +import { Operation } from "../../models/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Operations operations. */ +export interface OperationsOperations { + /** Exposes all available operations for discovery purposes. */ + list: (options?: OperationsListOptionalParams) => PagedAsyncIterableIterator; +} + +function _getOperations(context: SecurityCenterContext) { + return { + list: (options?: OperationsListOptionalParams) => list(context, options), + }; +} + +export function _getOperationsOperations(context: SecurityCenterContext): OperationsOperations { + return { + ..._getOperations(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/pricings/index.ts b/sdk/security/arm-security/src/classic/pricings/index.ts new file mode 100644 index 000000000000..635944a2a171 --- /dev/null +++ b/sdk/security/arm-security/src/classic/pricings/index.ts @@ -0,0 +1,60 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, update, get } from "../../api/pricings/operations.js"; +import { + PricingsListOptionalParams, + PricingsDeleteOptionalParams, + PricingsUpdateOptionalParams, + PricingsGetOptionalParams, +} from "../../api/pricings/options.js"; +import { Pricing, PricingList } from "../../models/pricingsAPI/models.js"; + +/** Interface representing a Pricings operations. */ +export interface PricingsOperations { + /** Lists Microsoft Defender for Cloud pricing configurations of the scopeId, that match the optional given $filter. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines'). Valid $filter is: 'name in ({planName1},{planName2},...)'. If $filter is not provided, the unfiltered list will be returned. If '$filter=name in (planName1,planName2)' is provided, the returned list includes the pricings set for 'planName1' and 'planName2' only. */ + list: (scopeId: string, options?: PricingsListOptionalParams) => Promise; + /** Deletes a provided Microsoft Defender for Cloud pricing configuration in a specific resource. Valid only for resource scope (Supported resources are: 'VirtualMachines, VMSS, ARC Machines, and Containers'). */ + delete: ( + scopeId: string, + pricingName: string, + options?: PricingsDeleteOptionalParams, + ) => Promise; + /** Updates a provided Microsoft Defender for Cloud pricing configuration in the scope. Valid scopes are: subscription id or a specific resource id (Supported resources are: 'VirtualMachines, VMSS and ARC Machines' and only for plan='VirtualMachines' and subPlan='P1'). */ + update: ( + scopeId: string, + pricingName: string, + pricing: Pricing, + options?: PricingsUpdateOptionalParams, + ) => Promise; + /** Get the Defender plans pricing configurations of the selected scope (valid scopes are resource id or a subscription id). At the resource level, supported resource types are 'VirtualMachines, VMSS and ARC Machines'. */ + get: ( + scopeId: string, + pricingName: string, + options?: PricingsGetOptionalParams, + ) => Promise; +} + +function _getPricings(context: SecurityCenterContext) { + return { + list: (scopeId: string, options?: PricingsListOptionalParams) => + list(context, scopeId, options), + delete: (scopeId: string, pricingName: string, options?: PricingsDeleteOptionalParams) => + $delete(context, scopeId, pricingName, options), + update: ( + scopeId: string, + pricingName: string, + pricing: Pricing, + options?: PricingsUpdateOptionalParams, + ) => update(context, scopeId, pricingName, pricing, options), + get: (scopeId: string, pricingName: string, options?: PricingsGetOptionalParams) => + get(context, scopeId, pricingName, options), + }; +} + +export function _getPricingsOperations(context: SecurityCenterContext): PricingsOperations { + return { + ..._getPricings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/privateEndpointConnections/index.ts b/sdk/security/arm-security/src/classic/privateEndpointConnections/index.ts new file mode 100644 index 000000000000..7fc43492a8b1 --- /dev/null +++ b/sdk/security/arm-security/src/classic/privateEndpointConnections/index.ts @@ -0,0 +1,196 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + $delete, + createOrUpdate, + get, +} from "../../api/privateEndpointConnections/operations.js"; +import { + PrivateEndpointConnectionsListOptionalParams, + PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + PrivateEndpointConnectionsGetOptionalParams, +} from "../../api/privateEndpointConnections/options.js"; +import { ArmPrivateEndpointConnection } from "../../models/models.js"; +import { PrivateEndpointConnection } from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a PrivateEndpointConnections operations. */ +export interface PrivateEndpointConnectionsOperations { + /** Gets all private endpoint connections for a private link. Returns the list of private endpoints that are connected or in the process of connecting to this private link. */ + list: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateEndpointConnectionsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes the specified private endpoint connection associated with the private link. This operation will disconnect the private endpoint and remove the connection configuration. */ + delete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use delete instead */ + beginDelete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => Promise, void>>; + /** @deprecated use delete instead */ + beginDeleteAndWait: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => Promise; + /** Update the state of specified private endpoint connection associated with the private link. This operation is typically used to approve or reject pending private endpoint connections. */ + createOrUpdate: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => PollerLike, PrivateEndpointConnection>; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdate: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => Promise< + SimplePollerLike, PrivateEndpointConnection> + >; + /** @deprecated use createOrUpdate instead */ + beginCreateOrUpdateAndWait: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets the specified private endpoint connection associated with the private link. Returns the connection details, status, and configuration for a specific private endpoint. */ + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsGetOptionalParams, + ) => Promise; +} + +function _getPrivateEndpointConnections(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateEndpointConnectionsListOptionalParams, + ) => list(context, resourceGroupName, privateLinkName, options), + delete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => + $delete(context, resourceGroupName, privateLinkName, privateEndpointConnectionName, options), + beginDelete: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => { + const poller = $delete( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginDeleteAndWait: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsDeleteOptionalParams, + ) => { + return await $delete( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + privateEndpointConnection, + options, + ), + beginCreateOrUpdate: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => { + const poller = createOrUpdate( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + privateEndpointConnection, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateOrUpdateAndWait: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + privateEndpointConnection: ArmPrivateEndpointConnection, + options?: PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + ) => { + return await createOrUpdate( + context, + resourceGroupName, + privateLinkName, + privateEndpointConnectionName, + privateEndpointConnection, + options, + ); + }, + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateEndpointConnectionName: string, + options?: PrivateEndpointConnectionsGetOptionalParams, + ) => get(context, resourceGroupName, privateLinkName, privateEndpointConnectionName, options), + }; +} + +export function _getPrivateEndpointConnectionsOperations( + context: SecurityCenterContext, +): PrivateEndpointConnectionsOperations { + return { + ..._getPrivateEndpointConnections(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/privateLinkResources/index.ts b/sdk/security/arm-security/src/classic/privateLinkResources/index.ts new file mode 100644 index 000000000000..785f5079169d --- /dev/null +++ b/sdk/security/arm-security/src/classic/privateLinkResources/index.ts @@ -0,0 +1,53 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/privateLinkResources/operations.js"; +import { + PrivateLinkResourcesListOptionalParams, + PrivateLinkResourcesGetOptionalParams, +} from "../../api/privateLinkResources/options.js"; +import { PrivateLinkGroupResource } from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a PrivateLinkResources operations. */ +export interface PrivateLinkResourcesOperations { + /** List all private link resources in a private link. */ + list: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinkResourcesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get the specified private link resource associated with the private link. */ + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + groupId: string, + options?: PrivateLinkResourcesGetOptionalParams, + ) => Promise; +} + +function _getPrivateLinkResources(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinkResourcesListOptionalParams, + ) => list(context, resourceGroupName, privateLinkName, options), + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + groupId: string, + options?: PrivateLinkResourcesGetOptionalParams, + ) => get(context, resourceGroupName, privateLinkName, groupId, options), + }; +} + +export function _getPrivateLinkResourcesOperations( + context: SecurityCenterContext, +): PrivateLinkResourcesOperations { + return { + ..._getPrivateLinkResources(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/privateLinks/index.ts b/sdk/security/arm-security/src/classic/privateLinks/index.ts new file mode 100644 index 000000000000..e0b1e63bff46 --- /dev/null +++ b/sdk/security/arm-security/src/classic/privateLinks/index.ts @@ -0,0 +1,174 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listBySubscription, + list, + $delete, + update, + create, + head, + get, +} from "../../api/privateLinks/operations.js"; +import { + PrivateLinksListBySubscriptionOptionalParams, + PrivateLinksListOptionalParams, + PrivateLinksDeleteOptionalParams, + PrivateLinksUpdateOptionalParams, + PrivateLinksCreateOptionalParams, + PrivateLinksHeadOptionalParams, + PrivateLinksGetOptionalParams, +} from "../../api/privateLinks/options.js"; +import { PrivateLinkResource, PrivateLinkUpdate } from "../../models/privateLinksAPI/models.js"; +import { PrivateLinkParameters } from "../../models/securityManagementClient/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a PrivateLinks operations. */ +export interface PrivateLinksOperations { + /** Lists all the private links in the specified subscription. private links enable secure, private connectivity to Microsoft Defender for Cloud services without exposing traffic to the public internet. Use the 'nextLink' property in the response to get the next page of private links for the specified subscription. */ + listBySubscription: ( + options?: PrivateLinksListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Lists all the private links in the specified resource group. private links enable secure, private connectivity to Microsoft Defender for Cloud services without exposing traffic to the public internet. Use the 'nextLink' property in the response to get the next page of private links for the specified resource group. */ + list: ( + resourceGroupName: string, + options?: PrivateLinksListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a private link resource. This operation will remove the private link infrastructure and disconnect all associated private endpoints. This operation is asynchronous and may take several minutes to complete. */ + delete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use delete instead */ + beginDelete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => Promise, void>>; + /** @deprecated use delete instead */ + beginDeleteAndWait: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => Promise; + /** Update specific properties of a private link resource. Use this operation to update mutable properties like tags without affecting the entire resource configuration. */ + update: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkUpdate, + options?: PrivateLinksUpdateOptionalParams, + ) => Promise; + /** Create a private link resource. This operation creates the necessary infrastructure to enable private endpoint connections to Microsoft Defender for Cloud services. For updates to existing resources, use the PATCH operation. The operation is asynchronous and may take several minutes to complete. */ + create: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => PollerLike, PrivateLinkResource>; + /** @deprecated use create instead */ + beginCreate: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => Promise, PrivateLinkResource>>; + /** @deprecated use create instead */ + beginCreateAndWait: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => Promise; + /** Checks whether private link exists. */ + head: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksHeadOptionalParams, + ) => Promise; + /** Get a private link resource. Returns the configuration and status of private endpoint connectivity for Microsoft Defender for Cloud services in the specified region. */ + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksGetOptionalParams, + ) => Promise; +} + +function _getPrivateLinks(context: SecurityCenterContext) { + return { + listBySubscription: (options?: PrivateLinksListBySubscriptionOptionalParams) => + listBySubscription(context, options), + list: (resourceGroupName: string, options?: PrivateLinksListOptionalParams) => + list(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => $delete(context, resourceGroupName, privateLinkName, options), + beginDelete: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => { + const poller = $delete(context, resourceGroupName, privateLinkName, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginDeleteAndWait: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksDeleteOptionalParams, + ) => { + return await $delete(context, resourceGroupName, privateLinkName, options); + }, + update: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkUpdate, + options?: PrivateLinksUpdateOptionalParams, + ) => update(context, resourceGroupName, privateLinkName, privateLink, options), + create: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => create(context, resourceGroupName, privateLinkName, privateLink, options), + beginCreate: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => { + const poller = create(context, resourceGroupName, privateLinkName, privateLink, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginCreateAndWait: async ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + privateLink: PrivateLinkResource, + options?: PrivateLinksCreateOptionalParams, + ) => { + return await create(context, resourceGroupName, privateLinkName, privateLink, options); + }, + head: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksHeadOptionalParams, + ) => head(context, resourceGroupName, privateLinkName, options), + get: ( + resourceGroupName: string, + privateLinkName: PrivateLinkParameters, + options?: PrivateLinksGetOptionalParams, + ) => get(context, resourceGroupName, privateLinkName, options), + }; +} + +export function _getPrivateLinksOperations(context: SecurityCenterContext): PrivateLinksOperations { + return { + ..._getPrivateLinks(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/regulatoryComplianceAssessments/index.ts b/sdk/security/arm-security/src/classic/regulatoryComplianceAssessments/index.ts new file mode 100644 index 000000000000..c886a290be98 --- /dev/null +++ b/sdk/security/arm-security/src/classic/regulatoryComplianceAssessments/index.ts @@ -0,0 +1,59 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/regulatoryComplianceAssessments/operations.js"; +import { + RegulatoryComplianceAssessmentsListOptionalParams, + RegulatoryComplianceAssessmentsGetOptionalParams, +} from "../../api/regulatoryComplianceAssessments/options.js"; +import { RegulatoryComplianceAssessment } from "../../models/regulatoryComplianceAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a RegulatoryComplianceAssessments operations. */ +export interface RegulatoryComplianceAssessmentsOperations { + /** Details and state of assessments mapped to selected regulatory compliance control */ + list: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options?: RegulatoryComplianceAssessmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Supported regulatory compliance details and state for selected assessment */ + get: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + regulatoryComplianceAssessmentName: string, + options?: RegulatoryComplianceAssessmentsGetOptionalParams, + ) => Promise; +} + +function _getRegulatoryComplianceAssessments(context: SecurityCenterContext) { + return { + list: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options?: RegulatoryComplianceAssessmentsListOptionalParams, + ) => list(context, regulatoryComplianceStandardName, regulatoryComplianceControlName, options), + get: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + regulatoryComplianceAssessmentName: string, + options?: RegulatoryComplianceAssessmentsGetOptionalParams, + ) => + get( + context, + regulatoryComplianceStandardName, + regulatoryComplianceControlName, + regulatoryComplianceAssessmentName, + options, + ), + }; +} + +export function _getRegulatoryComplianceAssessmentsOperations( + context: SecurityCenterContext, +): RegulatoryComplianceAssessmentsOperations { + return { + ..._getRegulatoryComplianceAssessments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/regulatoryComplianceControls/index.ts b/sdk/security/arm-security/src/classic/regulatoryComplianceControls/index.ts new file mode 100644 index 000000000000..9cfe4a4facf1 --- /dev/null +++ b/sdk/security/arm-security/src/classic/regulatoryComplianceControls/index.ts @@ -0,0 +1,48 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/regulatoryComplianceControls/operations.js"; +import { + RegulatoryComplianceControlsListOptionalParams, + RegulatoryComplianceControlsGetOptionalParams, +} from "../../api/regulatoryComplianceControls/options.js"; +import { RegulatoryComplianceControl } from "../../models/regulatoryComplianceAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a RegulatoryComplianceControls operations. */ +export interface RegulatoryComplianceControlsOperations { + /** All supported regulatory compliance controls details and state for selected standard */ + list: ( + regulatoryComplianceStandardName: string, + options?: RegulatoryComplianceControlsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Selected regulatory compliance control details and state */ + get: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options?: RegulatoryComplianceControlsGetOptionalParams, + ) => Promise; +} + +function _getRegulatoryComplianceControls(context: SecurityCenterContext) { + return { + list: ( + regulatoryComplianceStandardName: string, + options?: RegulatoryComplianceControlsListOptionalParams, + ) => list(context, regulatoryComplianceStandardName, options), + get: ( + regulatoryComplianceStandardName: string, + regulatoryComplianceControlName: string, + options?: RegulatoryComplianceControlsGetOptionalParams, + ) => get(context, regulatoryComplianceStandardName, regulatoryComplianceControlName, options), + }; +} + +export function _getRegulatoryComplianceControlsOperations( + context: SecurityCenterContext, +): RegulatoryComplianceControlsOperations { + return { + ..._getRegulatoryComplianceControls(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/regulatoryComplianceStandards/index.ts b/sdk/security/arm-security/src/classic/regulatoryComplianceStandards/index.ts new file mode 100644 index 000000000000..2b1308aa2e8d --- /dev/null +++ b/sdk/security/arm-security/src/classic/regulatoryComplianceStandards/index.ts @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/regulatoryComplianceStandards/operations.js"; +import { + RegulatoryComplianceStandardsListOptionalParams, + RegulatoryComplianceStandardsGetOptionalParams, +} from "../../api/regulatoryComplianceStandards/options.js"; +import { RegulatoryComplianceStandard } from "../../models/regulatoryComplianceAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a RegulatoryComplianceStandards operations. */ +export interface RegulatoryComplianceStandardsOperations { + /** Supported regulatory compliance standards details and state */ + list: ( + options?: RegulatoryComplianceStandardsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Supported regulatory compliance details state for selected standard */ + get: ( + regulatoryComplianceStandardName: string, + options?: RegulatoryComplianceStandardsGetOptionalParams, + ) => Promise; +} + +function _getRegulatoryComplianceStandards(context: SecurityCenterContext) { + return { + list: (options?: RegulatoryComplianceStandardsListOptionalParams) => list(context, options), + get: ( + regulatoryComplianceStandardName: string, + options?: RegulatoryComplianceStandardsGetOptionalParams, + ) => get(context, regulatoryComplianceStandardName, options), + }; +} + +export function _getRegulatoryComplianceStandardsOperations( + context: SecurityCenterContext, +): RegulatoryComplianceStandardsOperations { + return { + ..._getRegulatoryComplianceStandards(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/secureScoreControlDefinitions/index.ts b/sdk/security/arm-security/src/classic/secureScoreControlDefinitions/index.ts new file mode 100644 index 000000000000..a5f7d1824383 --- /dev/null +++ b/sdk/security/arm-security/src/classic/secureScoreControlDefinitions/index.ts @@ -0,0 +1,39 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { listBySubscription, list } from "../../api/secureScoreControlDefinitions/operations.js"; +import { + SecureScoreControlDefinitionsListBySubscriptionOptionalParams, + SecureScoreControlDefinitionsListOptionalParams, +} from "../../api/secureScoreControlDefinitions/options.js"; +import { SecureScoreControlDefinitionItem } from "../../models/secureScoreAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecureScoreControlDefinitions operations. */ +export interface SecureScoreControlDefinitionsOperations { + /** For a specified subscription, list the available security controls, their assessments, and the max score */ + listBySubscription: ( + options?: SecureScoreControlDefinitionsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** List the available security controls, their assessments, and the max score */ + list: ( + options?: SecureScoreControlDefinitionsListOptionalParams, + ) => PagedAsyncIterableIterator; +} + +function _getSecureScoreControlDefinitions(context: SecurityCenterContext) { + return { + listBySubscription: (options?: SecureScoreControlDefinitionsListBySubscriptionOptionalParams) => + listBySubscription(context, options), + list: (options?: SecureScoreControlDefinitionsListOptionalParams) => list(context, options), + }; +} + +export function _getSecureScoreControlDefinitionsOperations( + context: SecurityCenterContext, +): SecureScoreControlDefinitionsOperations { + return { + ..._getSecureScoreControlDefinitions(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/secureScoreControls/index.ts b/sdk/security/arm-security/src/classic/secureScoreControls/index.ts new file mode 100644 index 000000000000..33a4b3936753 --- /dev/null +++ b/sdk/security/arm-security/src/classic/secureScoreControls/index.ts @@ -0,0 +1,42 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, listBySecureScore } from "../../api/secureScoreControls/operations.js"; +import { + SecureScoreControlsListOptionalParams, + SecureScoreControlsListBySecureScoreOptionalParams, +} from "../../api/secureScoreControls/options.js"; +import { SecureScoreControlDetails } from "../../models/secureScoreAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecureScoreControls operations. */ +export interface SecureScoreControlsOperations { + /** Get all security controls within a scope */ + list: ( + options?: SecureScoreControlsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get all security controls for a specific initiative within a scope */ + listBySecureScore: ( + secureScoreName: string, + options?: SecureScoreControlsListBySecureScoreOptionalParams, + ) => PagedAsyncIterableIterator; +} + +function _getSecureScoreControls(context: SecurityCenterContext) { + return { + list: (options?: SecureScoreControlsListOptionalParams) => list(context, options), + listBySecureScore: ( + secureScoreName: string, + options?: SecureScoreControlsListBySecureScoreOptionalParams, + ) => listBySecureScore(context, secureScoreName, options), + }; +} + +export function _getSecureScoreControlsOperations( + context: SecurityCenterContext, +): SecureScoreControlsOperations { + return { + ..._getSecureScoreControls(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/secureScores/index.ts b/sdk/security/arm-security/src/classic/secureScores/index.ts new file mode 100644 index 000000000000..46721bb017d2 --- /dev/null +++ b/sdk/security/arm-security/src/classic/secureScores/index.ts @@ -0,0 +1,36 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/secureScores/operations.js"; +import { + SecureScoresListOptionalParams, + SecureScoresGetOptionalParams, +} from "../../api/secureScores/options.js"; +import { SecureScoreItem } from "../../models/secureScoreAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecureScores operations. */ +export interface SecureScoresOperations { + /** List secure scores for all your Microsoft Defender for Cloud initiatives within your current scope. */ + list: (options?: SecureScoresListOptionalParams) => PagedAsyncIterableIterator; + /** Get secure score for a specific Microsoft Defender for Cloud initiative within your current scope. For the ASC Default initiative, use 'ascScore'. */ + get: ( + secureScoreName: string, + options?: SecureScoresGetOptionalParams, + ) => Promise; +} + +function _getSecureScores(context: SecurityCenterContext) { + return { + list: (options?: SecureScoresListOptionalParams) => list(context, options), + get: (secureScoreName: string, options?: SecureScoresGetOptionalParams) => + get(context, secureScoreName, options), + }; +} + +export function _getSecureScoresOperations(context: SecurityCenterContext): SecureScoresOperations { + return { + ..._getSecureScores(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityConnectorApplication/index.ts b/sdk/security/arm-security/src/classic/securityConnectorApplication/index.ts new file mode 100644 index 000000000000..0c6e19bbd73a --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityConnectorApplication/index.ts @@ -0,0 +1,77 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { $delete, createOrUpdate, get } from "../../api/securityConnectorApplication/operations.js"; +import { + SecurityConnectorApplicationDeleteOptionalParams, + SecurityConnectorApplicationCreateOrUpdateOptionalParams, + SecurityConnectorApplicationGetOptionalParams, +} from "../../api/securityConnectorApplication/options.js"; +import { Application } from "../../models/applicationsAPI/models.js"; + +/** Interface representing a SecurityConnectorApplication operations. */ +export interface SecurityConnectorApplicationOperations { + /** Delete an Application over a given scope */ + delete: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options?: SecurityConnectorApplicationDeleteOptionalParams, + ) => Promise; + /** Creates or update a security Application on the given security connector. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + application: Application, + options?: SecurityConnectorApplicationCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific application for the requested scope by applicationId */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options?: SecurityConnectorApplicationGetOptionalParams, + ) => Promise; +} + +function _getSecurityConnectorApplication(context: SecurityCenterContext) { + return { + delete: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options?: SecurityConnectorApplicationDeleteOptionalParams, + ) => $delete(context, resourceGroupName, securityConnectorName, applicationId, options), + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + application: Application, + options?: SecurityConnectorApplicationCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + securityConnectorName, + applicationId, + application, + options, + ), + get: ( + resourceGroupName: string, + securityConnectorName: string, + applicationId: string, + options?: SecurityConnectorApplicationGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, applicationId, options), + }; +} + +export function _getSecurityConnectorApplicationOperations( + context: SecurityCenterContext, +): SecurityConnectorApplicationOperations { + return { + ..._getSecurityConnectorApplication(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityConnectorApplications/index.ts b/sdk/security/arm-security/src/classic/securityConnectorApplications/index.ts new file mode 100644 index 000000000000..55c428dd60f0 --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityConnectorApplications/index.ts @@ -0,0 +1,36 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list } from "../../api/securityConnectorApplications/operations.js"; +import { SecurityConnectorApplicationsListOptionalParams } from "../../api/securityConnectorApplications/options.js"; +import { Application } from "../../models/applicationsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecurityConnectorApplications operations. */ +export interface SecurityConnectorApplicationsOperations { + /** Get a list of all relevant applications over a security connector level scope */ + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorApplicationsListOptionalParams, + ) => PagedAsyncIterableIterator; +} + +function _getSecurityConnectorApplications(context: SecurityCenterContext) { + return { + list: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorApplicationsListOptionalParams, + ) => list(context, resourceGroupName, securityConnectorName, options), + }; +} + +export function _getSecurityConnectorApplicationsOperations( + context: SecurityCenterContext, +): SecurityConnectorApplicationsOperations { + return { + ..._getSecurityConnectorApplications(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityConnectors/index.ts b/sdk/security/arm-security/src/classic/securityConnectors/index.ts new file mode 100644 index 000000000000..025747a3867b --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityConnectors/index.ts @@ -0,0 +1,102 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + listByResourceGroup, + $delete, + update, + createOrUpdate, + get, +} from "../../api/securityConnectors/operations.js"; +import { + SecurityConnectorsListOptionalParams, + SecurityConnectorsListByResourceGroupOptionalParams, + SecurityConnectorsDeleteOptionalParams, + SecurityConnectorsUpdateOptionalParams, + SecurityConnectorsCreateOrUpdateOptionalParams, + SecurityConnectorsGetOptionalParams, +} from "../../api/securityConnectors/options.js"; +import { SecurityConnector } from "../../models/securityConnectorsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecurityConnectors operations. */ +export interface SecurityConnectorsOperations { + /** Lists all the security connectors in the specified subscription. Use the 'nextLink' property in the response to get the next page of security connectors for the specified subscription. */ + list: ( + options?: SecurityConnectorsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Lists all the security connectors in the specified resource group. Use the 'nextLink' property in the response to get the next page of security connectors for the specified resource group. */ + listByResourceGroup: ( + resourceGroupName: string, + options?: SecurityConnectorsListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes a security connector. */ + delete: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorsDeleteOptionalParams, + ) => Promise; + /** Updates a security connector */ + update: ( + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options?: SecurityConnectorsUpdateOptionalParams, + ) => Promise; + /** Creates or updates a security connector. If a security connector is already created and a subsequent request is issued for the same security connector id, then it will be updated. */ + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options?: SecurityConnectorsCreateOrUpdateOptionalParams, + ) => Promise; + /** Retrieves details of a specific security connector */ + get: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorsGetOptionalParams, + ) => Promise; +} + +function _getSecurityConnectors(context: SecurityCenterContext) { + return { + list: (options?: SecurityConnectorsListOptionalParams) => list(context, options), + listByResourceGroup: ( + resourceGroupName: string, + options?: SecurityConnectorsListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorsDeleteOptionalParams, + ) => $delete(context, resourceGroupName, securityConnectorName, options), + update: ( + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options?: SecurityConnectorsUpdateOptionalParams, + ) => update(context, resourceGroupName, securityConnectorName, securityConnector, options), + createOrUpdate: ( + resourceGroupName: string, + securityConnectorName: string, + securityConnector: SecurityConnector, + options?: SecurityConnectorsCreateOrUpdateOptionalParams, + ) => + createOrUpdate(context, resourceGroupName, securityConnectorName, securityConnector, options), + get: ( + resourceGroupName: string, + securityConnectorName: string, + options?: SecurityConnectorsGetOptionalParams, + ) => get(context, resourceGroupName, securityConnectorName, options), + }; +} + +export function _getSecurityConnectorsOperations( + context: SecurityCenterContext, +): SecurityConnectorsOperations { + return { + ..._getSecurityConnectors(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityContacts/index.ts b/sdk/security/arm-security/src/classic/securityContacts/index.ts new file mode 100644 index 000000000000..4626c5febdc2 --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityContacts/index.ts @@ -0,0 +1,62 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, create, get } from "../../api/securityContacts/operations.js"; +import { + SecurityContactsListOptionalParams, + SecurityContactsDeleteOptionalParams, + SecurityContactsCreateOptionalParams, + SecurityContactsGetOptionalParams, +} from "../../api/securityContacts/options.js"; +import { SecurityContact, SecurityContactName } from "../../models/automationsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecurityContacts operations. */ +export interface SecurityContactsOperations { + /** List all security contact configurations for the subscription */ + list: ( + options?: SecurityContactsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete security contact configurations for the subscription */ + delete: ( + securityContactName: SecurityContactName, + options?: SecurityContactsDeleteOptionalParams, + ) => Promise; + /** Create security contact configurations for the subscription */ + create: ( + securityContactName: SecurityContactName, + securityContact: SecurityContact, + options?: SecurityContactsCreateOptionalParams, + ) => Promise; + /** Get Default Security contact configurations for the subscription */ + get: ( + securityContactName: SecurityContactName, + options?: SecurityContactsGetOptionalParams, + ) => Promise; +} + +function _getSecurityContacts(context: SecurityCenterContext) { + return { + list: (options?: SecurityContactsListOptionalParams) => list(context, options), + delete: ( + securityContactName: SecurityContactName, + options?: SecurityContactsDeleteOptionalParams, + ) => $delete(context, securityContactName, options), + create: ( + securityContactName: SecurityContactName, + securityContact: SecurityContact, + options?: SecurityContactsCreateOptionalParams, + ) => create(context, securityContactName, securityContact, options), + get: (securityContactName: SecurityContactName, options?: SecurityContactsGetOptionalParams) => + get(context, securityContactName, options), + }; +} + +export function _getSecurityContactsOperations( + context: SecurityCenterContext, +): SecurityContactsOperations { + return { + ..._getSecurityContacts(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityOperators/index.ts b/sdk/security/arm-security/src/classic/securityOperators/index.ts new file mode 100644 index 000000000000..fff9a6cdcd09 --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityOperators/index.ts @@ -0,0 +1,70 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/securityOperators/operations.js"; +import { + SecurityOperatorsListOptionalParams, + SecurityOperatorsDeleteOptionalParams, + SecurityOperatorsCreateOrUpdateOptionalParams, + SecurityOperatorsGetOptionalParams, +} from "../../api/securityOperators/options.js"; +import { SecurityOperator } from "../../models/securityOperatorsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecurityOperators operations. */ +export interface SecurityOperatorsOperations { + /** Lists Microsoft Defender for Cloud securityOperators in the subscription. */ + list: ( + pricingName: string, + options?: SecurityOperatorsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete Microsoft Defender for Cloud securityOperator in the subscription. */ + delete: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsDeleteOptionalParams, + ) => Promise; + /** Creates Microsoft Defender for Cloud security operator on the given scope. */ + createOrUpdate: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific security operator for the requested scope. */ + get: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsGetOptionalParams, + ) => Promise; +} + +function _getSecurityOperators(context: SecurityCenterContext) { + return { + list: (pricingName: string, options?: SecurityOperatorsListOptionalParams) => + list(context, pricingName, options), + delete: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsDeleteOptionalParams, + ) => $delete(context, pricingName, securityOperatorName, options), + createOrUpdate: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, pricingName, securityOperatorName, options), + get: ( + pricingName: string, + securityOperatorName: string, + options?: SecurityOperatorsGetOptionalParams, + ) => get(context, pricingName, securityOperatorName, options), + }; +} + +export function _getSecurityOperatorsOperations( + context: SecurityCenterContext, +): SecurityOperatorsOperations { + return { + ..._getSecurityOperators(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securitySolutions/index.ts b/sdk/security/arm-security/src/classic/securitySolutions/index.ts new file mode 100644 index 000000000000..6fdba8b136da --- /dev/null +++ b/sdk/security/arm-security/src/classic/securitySolutions/index.ts @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/securitySolutions/operations.js"; +import { + SecuritySolutionsListOptionalParams, + SecuritySolutionsGetOptionalParams, +} from "../../api/securitySolutions/options.js"; +import { SecuritySolution } from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecuritySolutions operations. */ +export interface SecuritySolutionsOperations { + /** Gets a list of Security Solutions for the subscription. */ + list: ( + options?: SecuritySolutionsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a specific Security Solution. */ + get: ( + resourceGroupName: string, + ascLocation: string, + securitySolutionName: string, + options?: SecuritySolutionsGetOptionalParams, + ) => Promise; +} + +function _getSecuritySolutions(context: SecurityCenterContext) { + return { + list: (options?: SecuritySolutionsListOptionalParams) => list(context, options), + get: ( + resourceGroupName: string, + ascLocation: string, + securitySolutionName: string, + options?: SecuritySolutionsGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, securitySolutionName, options), + }; +} + +export function _getSecuritySolutionsOperations( + context: SecurityCenterContext, +): SecuritySolutionsOperations { + return { + ..._getSecuritySolutions(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securitySolutionsReferenceData/index.ts b/sdk/security/arm-security/src/classic/securitySolutionsReferenceData/index.ts new file mode 100644 index 000000000000..55aff506c6eb --- /dev/null +++ b/sdk/security/arm-security/src/classic/securitySolutionsReferenceData/index.ts @@ -0,0 +1,41 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { listByHomeRegion, list } from "../../api/securitySolutionsReferenceData/operations.js"; +import { + SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + SecuritySolutionsReferenceDataListOptionalParams, +} from "../../api/securitySolutionsReferenceData/options.js"; +import { SecuritySolutionsReferenceDataList } from "../../models/securitySolutionsAPI/models.js"; + +/** Interface representing a SecuritySolutionsReferenceData operations. */ +export interface SecuritySolutionsReferenceDataOperations { + /** Gets list of all supported Security Solutions for subscription and location. */ + listByHomeRegion: ( + ascLocation: string, + options?: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + ) => Promise; + /** Gets a list of all supported Security Solutions for the subscription. */ + list: ( + options?: SecuritySolutionsReferenceDataListOptionalParams, + ) => Promise; +} + +function _getSecuritySolutionsReferenceData(context: SecurityCenterContext) { + return { + listByHomeRegion: ( + ascLocation: string, + options?: SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + ) => listByHomeRegion(context, ascLocation, options), + list: (options?: SecuritySolutionsReferenceDataListOptionalParams) => list(context, options), + }; +} + +export function _getSecuritySolutionsReferenceDataOperations( + context: SecurityCenterContext, +): SecuritySolutionsReferenceDataOperations { + return { + ..._getSecuritySolutionsReferenceData(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/securityStandards/index.ts b/sdk/security/arm-security/src/classic/securityStandards/index.ts new file mode 100644 index 000000000000..374045db67ad --- /dev/null +++ b/sdk/security/arm-security/src/classic/securityStandards/index.ts @@ -0,0 +1,66 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, createOrUpdate, get } from "../../api/securityStandards/operations.js"; +import { + SecurityStandardsListOptionalParams, + SecurityStandardsDeleteOptionalParams, + SecurityStandardsCreateOrUpdateOptionalParams, + SecurityStandardsGetOptionalParams, +} from "../../api/securityStandards/options.js"; +import { SecurityStandard } from "../../models/securityStandardsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SecurityStandards operations. */ +export interface SecurityStandardsOperations { + /** Get a list of all relevant security standards over a scope */ + list: ( + scope: string, + options?: SecurityStandardsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a security standard over a given scope */ + delete: ( + scope: string, + standardId: string, + options?: SecurityStandardsDeleteOptionalParams, + ) => Promise; + /** Creates or updates a security standard over a given scope */ + createOrUpdate: ( + scope: string, + standardId: string, + standard: SecurityStandard, + options?: SecurityStandardsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific security standard for the requested scope by standardId */ + get: ( + scope: string, + standardId: string, + options?: SecurityStandardsGetOptionalParams, + ) => Promise; +} + +function _getSecurityStandards(context: SecurityCenterContext) { + return { + list: (scope: string, options?: SecurityStandardsListOptionalParams) => + list(context, scope, options), + delete: (scope: string, standardId: string, options?: SecurityStandardsDeleteOptionalParams) => + $delete(context, scope, standardId, options), + createOrUpdate: ( + scope: string, + standardId: string, + standard: SecurityStandard, + options?: SecurityStandardsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, scope, standardId, standard, options), + get: (scope: string, standardId: string, options?: SecurityStandardsGetOptionalParams) => + get(context, scope, standardId, options), + }; +} + +export function _getSecurityStandardsOperations( + context: SecurityCenterContext, +): SecurityStandardsOperations { + return { + ..._getSecurityStandards(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/sensitivitySettings/index.ts b/sdk/security/arm-security/src/classic/sensitivitySettings/index.ts new file mode 100644 index 000000000000..36db37eceb00 --- /dev/null +++ b/sdk/security/arm-security/src/classic/sensitivitySettings/index.ts @@ -0,0 +1,49 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, createOrUpdate, get } from "../../api/sensitivitySettings/operations.js"; +import { + SensitivitySettingsListOptionalParams, + SensitivitySettingsCreateOrUpdateOptionalParams, + SensitivitySettingsGetOptionalParams, +} from "../../api/sensitivitySettings/options.js"; +import { + GetSensitivitySettingsResponse, + UpdateSensitivitySettingsRequest, + GetSensitivitySettingsListResponse, +} from "../../models/sensitivitySettingsAPI/models.js"; + +/** Interface representing a SensitivitySettings operations. */ +export interface SensitivitySettingsOperations { + /** Gets a list with a single sensitivity settings resource */ + list: ( + options?: SensitivitySettingsListOptionalParams, + ) => Promise; + /** Create or update data sensitivity settings for sensitive data discovery */ + createOrUpdate: ( + sensitivitySettings: UpdateSensitivitySettingsRequest, + options?: SensitivitySettingsCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets data sensitivity settings for sensitive data discovery */ + get: (options?: SensitivitySettingsGetOptionalParams) => Promise; +} + +function _getSensitivitySettings(context: SecurityCenterContext) { + return { + list: (options?: SensitivitySettingsListOptionalParams) => list(context, options), + createOrUpdate: ( + sensitivitySettings: UpdateSensitivitySettingsRequest, + options?: SensitivitySettingsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, sensitivitySettings, options), + get: (options?: SensitivitySettingsGetOptionalParams) => get(context, options), + }; +} + +export function _getSensitivitySettingsOperations( + context: SecurityCenterContext, +): SensitivitySettingsOperations { + return { + ..._getSensitivitySettings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/serverVulnerabilityAssessment/index.ts b/sdk/security/arm-security/src/classic/serverVulnerabilityAssessment/index.ts new file mode 100644 index 000000000000..e1297d2f6302 --- /dev/null +++ b/sdk/security/arm-security/src/classic/serverVulnerabilityAssessment/index.ts @@ -0,0 +1,166 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listByExtendedResource, + $delete, + createOrUpdate, + get, +} from "../../api/serverVulnerabilityAssessment/operations.js"; +import { + ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ServerVulnerabilityAssessmentDeleteOptionalParams, + ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentGetOptionalParams, +} from "../../api/serverVulnerabilityAssessment/options.js"; +import { + ServerVulnerabilityAssessment, + ServerVulnerabilityAssessmentsList, +} from "../../models/securitySolutionsAPI/models.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a ServerVulnerabilityAssessment operations. */ +export interface ServerVulnerabilityAssessmentOperations { + /** Gets a list of server vulnerability assessment onboarding statuses on a given resource. */ + listByExtendedResource: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ) => Promise; + /** Removing server vulnerability assessment from a resource. */ + delete: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => PollerLike, void>; + /** @deprecated use delete instead */ + beginDelete: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => Promise, void>>; + /** @deprecated use delete instead */ + beginDeleteAndWait: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => Promise; + /** Creating a server vulnerability assessment on a resource, which will onboard a resource for having a vulnerability assessment on it */ + createOrUpdate: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets a server vulnerability assessment onboarding statuses on a given resource. */ + get: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentGetOptionalParams, + ) => Promise; +} + +function _getServerVulnerabilityAssessment(context: SecurityCenterContext) { + return { + listByExtendedResource: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ) => + listByExtendedResource( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ), + delete: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => + $delete(context, resourceGroupName, resourceNamespace, resourceType, resourceName, options), + beginDelete: async ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => { + const poller = $delete( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginDeleteAndWait: async ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentDeleteOptionalParams, + ) => { + return await $delete( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ); + }, + createOrUpdate: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ) => + createOrUpdate( + context, + resourceGroupName, + resourceNamespace, + resourceType, + resourceName, + options, + ), + get: ( + resourceGroupName: string, + resourceNamespace: string, + resourceType: string, + resourceName: string, + options?: ServerVulnerabilityAssessmentGetOptionalParams, + ) => get(context, resourceGroupName, resourceNamespace, resourceType, resourceName, options), + }; +} + +export function _getServerVulnerabilityAssessmentOperations( + context: SecurityCenterContext, +): ServerVulnerabilityAssessmentOperations { + return { + ..._getServerVulnerabilityAssessment(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/serverVulnerabilityAssessmentsSettings/index.ts b/sdk/security/arm-security/src/classic/serverVulnerabilityAssessmentsSettings/index.ts new file mode 100644 index 000000000000..8c42fff3faf1 --- /dev/null +++ b/sdk/security/arm-security/src/classic/serverVulnerabilityAssessmentsSettings/index.ts @@ -0,0 +1,74 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listBySubscription, + $delete, + createOrUpdate, + get, +} from "../../api/serverVulnerabilityAssessmentsSettings/operations.js"; +import { + ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentsSettingsGetOptionalParams, +} from "../../api/serverVulnerabilityAssessmentsSettings/options.js"; +import { + ServerVulnerabilityAssessmentsSettingUnion, + ServerVulnerabilityAssessmentsSettingKindName, +} from "../../models/serverVulnerabilityAssessmentsSettingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a ServerVulnerabilityAssessmentsSettings operations. */ +export interface ServerVulnerabilityAssessmentsSettingsOperations { + /** Get a list of all the server vulnerability assessments settings over a subscription level scope */ + listBySubscription: ( + options?: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete the server vulnerability assessments setting of the requested kind from the subscription */ + delete: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options?: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ) => Promise; + /** Create or update a server vulnerability assessments setting of the requested kind on the subscription */ + createOrUpdate: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, + options?: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a server vulnerability assessments setting of the requested kind, that is set on the subscription */ + get: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options?: ServerVulnerabilityAssessmentsSettingsGetOptionalParams, + ) => Promise; +} + +function _getServerVulnerabilityAssessmentsSettings(context: SecurityCenterContext) { + return { + listBySubscription: ( + options?: ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ) => listBySubscription(context, options), + delete: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options?: ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ) => $delete(context, settingKind, options), + createOrUpdate: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + serverVulnerabilityAssessmentsSetting: ServerVulnerabilityAssessmentsSettingUnion, + options?: ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, settingKind, serverVulnerabilityAssessmentsSetting, options), + get: ( + settingKind: ServerVulnerabilityAssessmentsSettingKindName, + options?: ServerVulnerabilityAssessmentsSettingsGetOptionalParams, + ) => get(context, settingKind, options), + }; +} + +export function _getServerVulnerabilityAssessmentsSettingsOperations( + context: SecurityCenterContext, +): ServerVulnerabilityAssessmentsSettingsOperations { + return { + ..._getServerVulnerabilityAssessmentsSettings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/settings/index.ts b/sdk/security/arm-security/src/classic/settings/index.ts new file mode 100644 index 000000000000..f9836d9cf167 --- /dev/null +++ b/sdk/security/arm-security/src/classic/settings/index.ts @@ -0,0 +1,46 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, update, get } from "../../api/settings/operations.js"; +import { + SettingsListOptionalParams, + SettingsUpdateOptionalParams, + SettingsGetOptionalParams, +} from "../../api/settings/options.js"; +import { SettingName } from "../../models/common/models.js"; +import { SettingUnion } from "../../models/settingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Settings operations. */ +export interface SettingsOperations { + /** Settings about different configurations in Microsoft Defender for Cloud */ + list: (options?: SettingsListOptionalParams) => PagedAsyncIterableIterator; + /** updating settings about different configurations in Microsoft Defender for Cloud */ + update: ( + settingName: SettingName, + setting: SettingUnion, + options?: SettingsUpdateOptionalParams, + ) => Promise; + /** Settings of different configurations in Microsoft Defender for Cloud */ + get: (settingName: SettingName, options?: SettingsGetOptionalParams) => Promise; +} + +function _getSettings(context: SecurityCenterContext) { + return { + list: (options?: SettingsListOptionalParams) => list(context, options), + update: ( + settingName: SettingName, + setting: SettingUnion, + options?: SettingsUpdateOptionalParams, + ) => update(context, settingName, setting, options), + get: (settingName: SettingName, options?: SettingsGetOptionalParams) => + get(context, settingName, options), + }; +} + +export function _getSettingsOperations(context: SecurityCenterContext): SettingsOperations { + return { + ..._getSettings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentBaselineRules/index.ts b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentBaselineRules/index.ts new file mode 100644 index 000000000000..d4da0e2b2b51 --- /dev/null +++ b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentBaselineRules/index.ts @@ -0,0 +1,86 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + add, + list, + $delete, + createOrUpdate, + get, +} from "../../api/sqlVulnerabilityAssessmentBaselineRules/operations.js"; +import { + SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, +} from "../../api/sqlVulnerabilityAssessmentBaselineRules/options.js"; +import { RuleResults, RulesResults } from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SqlVulnerabilityAssessmentBaselineRules operations. */ +export interface SqlVulnerabilityAssessmentBaselineRulesOperations { + /** Set a list of baseline rules. Will overwrite any previously existing results (for all rules). */ + add: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, + ) => Promise; + /** Gets the results for all rules in the Baseline. */ + list: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes a rule from the Baseline of a given database. */ + delete: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + ) => Promise; + /** Creates a Baseline for a rule in a database. Will overwrite any previously existing results. */ + createOrUpdate: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets the results for a given rule in the Baseline. */ + get: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, + ) => Promise; +} + +function _getSqlVulnerabilityAssessmentBaselineRules(context: SecurityCenterContext) { + return { + add: (resourceId: string, options?: SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams) => + add(context, resourceId, options), + list: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + ) => list(context, resourceId, options), + delete: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + ) => $delete(context, resourceId, ruleId, options), + createOrUpdate: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceId, ruleId, options), + get: ( + resourceId: string, + ruleId: string, + options?: SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, + ) => get(context, resourceId, ruleId, options), + }; +} + +export function _getSqlVulnerabilityAssessmentBaselineRulesOperations( + context: SecurityCenterContext, +): SqlVulnerabilityAssessmentBaselineRulesOperations { + return { + ..._getSqlVulnerabilityAssessmentBaselineRules(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScanResults/index.ts b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScanResults/index.ts new file mode 100644 index 000000000000..b8e9bcb51ffd --- /dev/null +++ b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScanResults/index.ts @@ -0,0 +1,52 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, get } from "../../api/sqlVulnerabilityAssessmentScanResults/operations.js"; +import { + SqlVulnerabilityAssessmentScanResultsListOptionalParams, + SqlVulnerabilityAssessmentScanResultsGetOptionalParams, +} from "../../api/sqlVulnerabilityAssessmentScanResults/options.js"; +import { ScanResult } from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SqlVulnerabilityAssessmentScanResults operations. */ +export interface SqlVulnerabilityAssessmentScanResultsOperations { + /** Gets a list of scan results for a single scan record. */ + list: ( + scanId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScanResultsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets the scan results of a single rule in a scan record. */ + get: ( + scanId: string, + scanResultId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScanResultsGetOptionalParams, + ) => Promise; +} + +function _getSqlVulnerabilityAssessmentScanResults(context: SecurityCenterContext) { + return { + list: ( + scanId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScanResultsListOptionalParams, + ) => list(context, scanId, resourceId, options), + get: ( + scanId: string, + scanResultId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScanResultsGetOptionalParams, + ) => get(context, scanId, scanResultId, resourceId, options), + }; +} + +export function _getSqlVulnerabilityAssessmentScanResultsOperations( + context: SecurityCenterContext, +): SqlVulnerabilityAssessmentScanResultsOperations { + return { + ..._getSqlVulnerabilityAssessmentScanResults(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScans/index.ts b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScans/index.ts new file mode 100644 index 000000000000..facdeb378348 --- /dev/null +++ b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentScans/index.ts @@ -0,0 +1,110 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + get, + getScanOperationResult, + initiateScan, +} from "../../api/sqlVulnerabilityAssessmentScans/operations.js"; +import { + SqlVulnerabilityAssessmentScansListOptionalParams, + SqlVulnerabilityAssessmentScansGetOptionalParams, + SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, +} from "../../api/sqlVulnerabilityAssessmentScans/options.js"; +import { + SqlVulnerabilityAssessmentScanOperationResult, + ScanV2, +} from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; +import { SimplePollerLike, getSimplePoller } from "../../static-helpers/simplePollerHelpers.js"; +import { PollerLike, OperationState } from "@azure/core-lro"; + +/** Interface representing a SqlVulnerabilityAssessmentScans operations. */ +export interface SqlVulnerabilityAssessmentScansOperations { + /** Gets a list of scan records. */ + list: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets the scan details of a single scan record. */ + get: ( + scanId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScansGetOptionalParams, + ) => Promise; + /** Gets the result of a scan operation initiated by the InitiateScan action. */ + getScanOperationResult: ( + resourceId: string, + operationId: string, + options?: SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + ) => Promise; + /** Initiates a vulnerability assessment scan. */ + initiateScan: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => PollerLike< + OperationState, + SqlVulnerabilityAssessmentScanOperationResult + >; + /** @deprecated use initiateScan instead */ + beginInitiateScan: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => Promise< + SimplePollerLike< + OperationState, + SqlVulnerabilityAssessmentScanOperationResult + > + >; + /** @deprecated use initiateScan instead */ + beginInitiateScanAndWait: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => Promise; +} + +function _getSqlVulnerabilityAssessmentScans(context: SecurityCenterContext) { + return { + list: (resourceId: string, options?: SqlVulnerabilityAssessmentScansListOptionalParams) => + list(context, resourceId, options), + get: ( + scanId: string, + resourceId: string, + options?: SqlVulnerabilityAssessmentScansGetOptionalParams, + ) => get(context, scanId, resourceId, options), + getScanOperationResult: ( + resourceId: string, + operationId: string, + options?: SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + ) => getScanOperationResult(context, resourceId, operationId, options), + initiateScan: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => initiateScan(context, resourceId, options), + beginInitiateScan: async ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => { + const poller = initiateScan(context, resourceId, options); + await poller.submitted(); + return getSimplePoller(poller); + }, + beginInitiateScanAndWait: async ( + resourceId: string, + options?: SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, + ) => { + return await initiateScan(context, resourceId, options); + }, + }; +} + +export function _getSqlVulnerabilityAssessmentScansOperations( + context: SecurityCenterContext, +): SqlVulnerabilityAssessmentScansOperations { + return { + ..._getSqlVulnerabilityAssessmentScans(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentSettings/index.ts b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentSettings/index.ts new file mode 100644 index 000000000000..f8adddae3ebf --- /dev/null +++ b/sdk/security/arm-security/src/classic/sqlVulnerabilityAssessmentSettings/index.ts @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + $delete, + createOrUpdate, + get, +} from "../../api/sqlVulnerabilityAssessmentSettings/operations.js"; +import { + SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentSettingsGetOptionalParams, +} from "../../api/sqlVulnerabilityAssessmentSettings/options.js"; +import { SqlVulnerabilityAssessmentSettings } from "../../models/sqlVulnerabilityAssessmentsAPI/models.js"; + +/** Interface representing a SqlVulnerabilityAssessmentSettings operations. */ +export interface SqlVulnerabilityAssessmentSettingsOperations { + /** Deletes the SQL Vulnerability Assessment settings. */ + delete: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + ) => Promise; + /** Creates or updates the SQL Vulnerability Assessment settings. */ + createOrUpdate: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + ) => Promise; + /** Gets the SQL Vulnerability Assessment settings. */ + get: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentSettingsGetOptionalParams, + ) => Promise; +} + +function _getSqlVulnerabilityAssessmentSettings(context: SecurityCenterContext) { + return { + delete: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + ) => $delete(context, resourceId, options), + createOrUpdate: ( + resourceId: string, + options?: SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceId, options), + get: (resourceId: string, options?: SqlVulnerabilityAssessmentSettingsGetOptionalParams) => + get(context, resourceId, options), + }; +} + +export function _getSqlVulnerabilityAssessmentSettingsOperations( + context: SecurityCenterContext, +): SqlVulnerabilityAssessmentSettingsOperations { + return { + ..._getSqlVulnerabilityAssessmentSettings(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/standardAssignments/index.ts b/sdk/security/arm-security/src/classic/standardAssignments/index.ts new file mode 100644 index 000000000000..a15d409d4e50 --- /dev/null +++ b/sdk/security/arm-security/src/classic/standardAssignments/index.ts @@ -0,0 +1,72 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, create, get } from "../../api/standardAssignments/operations.js"; +import { + StandardAssignmentsListOptionalParams, + StandardAssignmentsDeleteOptionalParams, + StandardAssignmentsCreateOptionalParams, + StandardAssignmentsGetOptionalParams, +} from "../../api/standardAssignments/options.js"; +import { StandardAssignment } from "../../models/securityStandardsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a StandardAssignments operations. */ +export interface StandardAssignmentsOperations { + /** Get a list of all relevant standard assignments over a scope */ + list: ( + scope: string, + options?: StandardAssignmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** This operation deletes a standard assignment, given its name and the scope it was created in. The scope of a standard assignment is the part of its ID preceding '/providers/Microsoft.Security/standardAssignments/{standardAssignmentName}'. */ + delete: ( + resourceId: string, + standardAssignmentName: string, + options?: StandardAssignmentsDeleteOptionalParams, + ) => Promise; + /** This operation creates or updates a standard assignment with the given scope and name. standard assignments apply to all resources contained within their scope. For example, when you assign a policy at resource group scope, that policy applies to all resources in the group. */ + create: ( + resourceId: string, + standardAssignmentName: string, + standardAssignment: StandardAssignment, + options?: StandardAssignmentsCreateOptionalParams, + ) => Promise; + /** This operation retrieves a single standard assignment, given its name and the scope it was created at. */ + get: ( + resourceId: string, + standardAssignmentName: string, + options?: StandardAssignmentsGetOptionalParams, + ) => Promise; +} + +function _getStandardAssignments(context: SecurityCenterContext) { + return { + list: (scope: string, options?: StandardAssignmentsListOptionalParams) => + list(context, scope, options), + delete: ( + resourceId: string, + standardAssignmentName: string, + options?: StandardAssignmentsDeleteOptionalParams, + ) => $delete(context, resourceId, standardAssignmentName, options), + create: ( + resourceId: string, + standardAssignmentName: string, + standardAssignment: StandardAssignment, + options?: StandardAssignmentsCreateOptionalParams, + ) => create(context, resourceId, standardAssignmentName, standardAssignment, options), + get: ( + resourceId: string, + standardAssignmentName: string, + options?: StandardAssignmentsGetOptionalParams, + ) => get(context, resourceId, standardAssignmentName, options), + }; +} + +export function _getStandardAssignmentsOperations( + context: SecurityCenterContext, +): StandardAssignmentsOperations { + return { + ..._getStandardAssignments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/standards/index.ts b/sdk/security/arm-security/src/classic/standards/index.ts new file mode 100644 index 000000000000..14da465e43c5 --- /dev/null +++ b/sdk/security/arm-security/src/classic/standards/index.ts @@ -0,0 +1,80 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + listBySubscription, + list, + $delete, + createOrUpdate, + get, +} from "../../api/standards/operations.js"; +import { + StandardsListBySubscriptionOptionalParams, + StandardsListOptionalParams, + StandardsDeleteOptionalParams, + StandardsCreateOrUpdateOptionalParams, + StandardsGetOptionalParams, +} from "../../api/standards/options.js"; +import { Standard } from "../../models/standardsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Standards operations. */ +export interface StandardsOperations { + /** Get a list of all relevant security standards over a subscription level scope. */ + listBySubscription: ( + options?: StandardsListBySubscriptionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get security standards on all your resources inside a scope */ + list: ( + resourceGroupName: string, + options?: StandardsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Delete a security standard on a scope. */ + delete: ( + resourceGroupName: string, + standardId: string, + options?: StandardsDeleteOptionalParams, + ) => Promise; + /** Create a security standard on the given scope. Available only for custom standards. Will create/update the required standard definitions. */ + createOrUpdate: ( + resourceGroupName: string, + standardId: string, + standard: Standard, + options?: StandardsCreateOrUpdateOptionalParams, + ) => Promise; + /** Get a specific security standard for the requested scope */ + get: ( + resourceGroupName: string, + standardId: string, + options?: StandardsGetOptionalParams, + ) => Promise; +} + +function _getStandards(context: SecurityCenterContext) { + return { + listBySubscription: (options?: StandardsListBySubscriptionOptionalParams) => + listBySubscription(context, options), + list: (resourceGroupName: string, options?: StandardsListOptionalParams) => + list(context, resourceGroupName, options), + delete: ( + resourceGroupName: string, + standardId: string, + options?: StandardsDeleteOptionalParams, + ) => $delete(context, resourceGroupName, standardId, options), + createOrUpdate: ( + resourceGroupName: string, + standardId: string, + standard: Standard, + options?: StandardsCreateOrUpdateOptionalParams, + ) => createOrUpdate(context, resourceGroupName, standardId, standard, options), + get: (resourceGroupName: string, standardId: string, options?: StandardsGetOptionalParams) => + get(context, resourceGroupName, standardId, options), + }; +} + +export function _getStandardsOperations(context: SecurityCenterContext): StandardsOperations { + return { + ..._getStandards(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/subAssessments/index.ts b/sdk/security/arm-security/src/classic/subAssessments/index.ts new file mode 100644 index 000000000000..cc448b33107e --- /dev/null +++ b/sdk/security/arm-security/src/classic/subAssessments/index.ts @@ -0,0 +1,57 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { listAll, list, get } from "../../api/subAssessments/operations.js"; +import { + SubAssessmentsListAllOptionalParams, + SubAssessmentsListOptionalParams, + SubAssessmentsGetOptionalParams, +} from "../../api/subAssessments/options.js"; +import { SecuritySubAssessment } from "../../models/subAssessmentsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a SubAssessments operations. */ +export interface SubAssessmentsOperations { + /** Get security sub-assessments on all your scanned resources inside a subscription scope */ + listAll: ( + scope: string, + options?: SubAssessmentsListAllOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get security sub-assessments on all your scanned resources inside a scope */ + list: ( + scope: string, + assessmentName: string, + options?: SubAssessmentsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Get a security sub-assessment on your scanned resource */ + get: ( + scope: string, + assessmentName: string, + subAssessmentName: string, + options?: SubAssessmentsGetOptionalParams, + ) => Promise; +} + +function _getSubAssessments(context: SecurityCenterContext) { + return { + listAll: (scope: string, options?: SubAssessmentsListAllOptionalParams) => + listAll(context, scope, options), + list: (scope: string, assessmentName: string, options?: SubAssessmentsListOptionalParams) => + list(context, scope, assessmentName, options), + get: ( + scope: string, + assessmentName: string, + subAssessmentName: string, + options?: SubAssessmentsGetOptionalParams, + ) => get(context, scope, assessmentName, subAssessmentName, options), + }; +} + +export function _getSubAssessmentsOperations( + context: SecurityCenterContext, +): SubAssessmentsOperations { + return { + ..._getSubAssessments(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/tasks/index.ts b/sdk/security/arm-security/src/classic/tasks/index.ts new file mode 100644 index 000000000000..7b6ef4fd19dd --- /dev/null +++ b/sdk/security/arm-security/src/classic/tasks/index.ts @@ -0,0 +1,127 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { + list, + updateSubscriptionLevelTaskState, + listByHomeRegion, + getSubscriptionLevelTask, + updateResourceGroupLevelTaskState, + listByResourceGroup, + getResourceGroupLevelTask, +} from "../../api/tasks/operations.js"; +import { + TasksListOptionalParams, + TasksUpdateSubscriptionLevelTaskStateOptionalParams, + TasksListByHomeRegionOptionalParams, + TasksGetSubscriptionLevelTaskOptionalParams, + TasksUpdateResourceGroupLevelTaskStateOptionalParams, + TasksListByResourceGroupOptionalParams, + TasksGetResourceGroupLevelTaskOptionalParams, +} from "../../api/tasks/options.js"; +import { SecurityTask, TaskUpdateActionType } from "../../models/tasksAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Tasks operations. */ +export interface TasksOperations { + /** Recommended tasks that will help improve the security of the subscription proactively */ + list: (options?: TasksListOptionalParams) => PagedAsyncIterableIterator; + /** Recommended tasks that will help improve the security of the subscription proactively */ + updateSubscriptionLevelTaskState: ( + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options?: TasksUpdateSubscriptionLevelTaskStateOptionalParams, + ) => Promise; + /** Recommended tasks that will help improve the security of the subscription proactively */ + listByHomeRegion: ( + ascLocation: string, + options?: TasksListByHomeRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Recommended tasks that will help improve the security of the subscription proactively */ + getSubscriptionLevelTask: ( + ascLocation: string, + taskName: string, + options?: TasksGetSubscriptionLevelTaskOptionalParams, + ) => Promise; + /** Recommended tasks that will help improve the security of the subscription proactively */ + updateResourceGroupLevelTaskState: ( + resourceGroupName: string, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options?: TasksUpdateResourceGroupLevelTaskStateOptionalParams, + ) => Promise; + /** Recommended tasks that will help improve the security of the subscription proactively */ + listByResourceGroup: ( + resourceGroupName: string, + ascLocation: string, + options?: TasksListByResourceGroupOptionalParams, + ) => PagedAsyncIterableIterator; + /** Recommended tasks that will help improve the security of the subscription proactively */ + getResourceGroupLevelTask: ( + resourceGroupName: string, + ascLocation: string, + taskName: string, + options?: TasksGetResourceGroupLevelTaskOptionalParams, + ) => Promise; +} + +function _getTasks(context: SecurityCenterContext) { + return { + list: (options?: TasksListOptionalParams) => list(context, options), + updateSubscriptionLevelTaskState: ( + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options?: TasksUpdateSubscriptionLevelTaskStateOptionalParams, + ) => + updateSubscriptionLevelTaskState( + context, + ascLocation, + taskName, + taskUpdateActionType, + options, + ), + listByHomeRegion: (ascLocation: string, options?: TasksListByHomeRegionOptionalParams) => + listByHomeRegion(context, ascLocation, options), + getSubscriptionLevelTask: ( + ascLocation: string, + taskName: string, + options?: TasksGetSubscriptionLevelTaskOptionalParams, + ) => getSubscriptionLevelTask(context, ascLocation, taskName, options), + updateResourceGroupLevelTaskState: ( + resourceGroupName: string, + ascLocation: string, + taskName: string, + taskUpdateActionType: TaskUpdateActionType, + options?: TasksUpdateResourceGroupLevelTaskStateOptionalParams, + ) => + updateResourceGroupLevelTaskState( + context, + resourceGroupName, + ascLocation, + taskName, + taskUpdateActionType, + options, + ), + listByResourceGroup: ( + resourceGroupName: string, + ascLocation: string, + options?: TasksListByResourceGroupOptionalParams, + ) => listByResourceGroup(context, resourceGroupName, ascLocation, options), + getResourceGroupLevelTask: ( + resourceGroupName: string, + ascLocation: string, + taskName: string, + options?: TasksGetResourceGroupLevelTaskOptionalParams, + ) => getResourceGroupLevelTask(context, resourceGroupName, ascLocation, taskName, options), + }; +} + +export function _getTasksOperations(context: SecurityCenterContext): TasksOperations { + return { + ..._getTasks(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/topology/index.ts b/sdk/security/arm-security/src/classic/topology/index.ts new file mode 100644 index 000000000000..d6dadc06aaca --- /dev/null +++ b/sdk/security/arm-security/src/classic/topology/index.ts @@ -0,0 +1,50 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, listByHomeRegion, get } from "../../api/topology/operations.js"; +import { + TopologyListOptionalParams, + TopologyListByHomeRegionOptionalParams, + TopologyGetOptionalParams, +} from "../../api/topology/options.js"; +import { TopologyResource } from "../../models/securitySolutionsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a Topology operations. */ +export interface TopologyOperations { + /** Gets a list that allows to build a topology view of a subscription. */ + list: (options?: TopologyListOptionalParams) => PagedAsyncIterableIterator; + /** Gets a list that allows to build a topology view of a subscription and location. */ + listByHomeRegion: ( + ascLocation: string, + options?: TopologyListByHomeRegionOptionalParams, + ) => PagedAsyncIterableIterator; + /** Gets a specific topology component. */ + get: ( + resourceGroupName: string, + ascLocation: string, + topologyResourceName: string, + options?: TopologyGetOptionalParams, + ) => Promise; +} + +function _getTopology(context: SecurityCenterContext) { + return { + list: (options?: TopologyListOptionalParams) => list(context, options), + listByHomeRegion: (ascLocation: string, options?: TopologyListByHomeRegionOptionalParams) => + listByHomeRegion(context, ascLocation, options), + get: ( + resourceGroupName: string, + ascLocation: string, + topologyResourceName: string, + options?: TopologyGetOptionalParams, + ) => get(context, resourceGroupName, ascLocation, topologyResourceName, options), + }; +} + +export function _getTopologyOperations(context: SecurityCenterContext): TopologyOperations { + return { + ..._getTopology(context), + }; +} diff --git a/sdk/security/arm-security/src/classic/workspaceSettings/index.ts b/sdk/security/arm-security/src/classic/workspaceSettings/index.ts new file mode 100644 index 000000000000..f05ded91b5e4 --- /dev/null +++ b/sdk/security/arm-security/src/classic/workspaceSettings/index.ts @@ -0,0 +1,72 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { SecurityCenterContext } from "../../api/securityCenterContext.js"; +import { list, $delete, update, create, get } from "../../api/workspaceSettings/operations.js"; +import { + WorkspaceSettingsListOptionalParams, + WorkspaceSettingsDeleteOptionalParams, + WorkspaceSettingsUpdateOptionalParams, + WorkspaceSettingsCreateOptionalParams, + WorkspaceSettingsGetOptionalParams, +} from "../../api/workspaceSettings/options.js"; +import { WorkspaceSetting } from "../../models/legacySettingsAPI/models.js"; +import { PagedAsyncIterableIterator } from "../../static-helpers/pagingHelpers.js"; + +/** Interface representing a WorkspaceSettings operations. */ +export interface WorkspaceSettingsOperations { + /** 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 */ + list: ( + options?: WorkspaceSettingsListOptionalParams, + ) => PagedAsyncIterableIterator; + /** Deletes the custom workspace settings for this subscription. new VMs will report to the default workspace */ + delete: ( + workspaceSettingName: string, + options?: WorkspaceSettingsDeleteOptionalParams, + ) => Promise; + /** Settings about where we should store your security data and logs */ + update: ( + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options?: WorkspaceSettingsUpdateOptionalParams, + ) => Promise; + /** creating settings about where we should store your security data and logs */ + create: ( + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options?: WorkspaceSettingsCreateOptionalParams, + ) => Promise; + /** 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 */ + get: ( + workspaceSettingName: string, + options?: WorkspaceSettingsGetOptionalParams, + ) => Promise; +} + +function _getWorkspaceSettings(context: SecurityCenterContext) { + return { + list: (options?: WorkspaceSettingsListOptionalParams) => list(context, options), + delete: (workspaceSettingName: string, options?: WorkspaceSettingsDeleteOptionalParams) => + $delete(context, workspaceSettingName, options), + update: ( + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options?: WorkspaceSettingsUpdateOptionalParams, + ) => update(context, workspaceSettingName, workspaceSetting, options), + create: ( + workspaceSettingName: string, + workspaceSetting: WorkspaceSetting, + options?: WorkspaceSettingsCreateOptionalParams, + ) => create(context, workspaceSettingName, workspaceSetting, options), + get: (workspaceSettingName: string, options?: WorkspaceSettingsGetOptionalParams) => + get(context, workspaceSettingName, options), + }; +} + +export function _getWorkspaceSettingsOperations( + context: SecurityCenterContext, +): WorkspaceSettingsOperations { + return { + ..._getWorkspaceSettings(context), + }; +} diff --git a/sdk/security/arm-security/src/index.ts b/sdk/security/arm-security/src/index.ts index 32fda95fab40..376e33bea29c 100644 --- a/sdk/security/arm-security/src/index.ts +++ b/sdk/security/arm-security/src/index.ts @@ -1,13 +1,1251 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { AzureClouds, AzureSupportedClouds } from "./static-helpers/cloudSettingHelpers.js"; +import { + PageSettings, + ContinuablePage, + PagedAsyncIterableIterator, +} from "./static-helpers/pagingHelpers.js"; -/// -export { getContinuationToken } from "./pagingHelper.js"; -export * from "./models/index.js"; export { SecurityCenter } from "./securityCenter.js"; -export * from "./operationsInterfaces/index.js"; +export type { SimplePollerLike } from "./static-helpers/simplePollerHelpers.js"; +export type { RestorePollerOptions } from "./restorePollerHelpers.js"; +export { restorePoller } from "./restorePollerHelpers.js"; +export type { + ProxyResource, + Resource, + SystemData, + CreatedByType, + ErrorAdditionalInfo, + ErrorResponse, + ErrorDetail, + ExtensionResource, + Operation, + OperationDisplay, + Origin, + ArmActionType, + PrivateLinkResourceProperties, + PrivateEndpointConnectionProperties, + PrivateEndpoint, + PrivateLinkServiceConnectionState, + PrivateEndpointServiceConnectionStatus, + PrivateEndpointConnectionProvisioningState, + ArmPrivateEndpointConnection, + Identity, + ResourceIdentityType, + OperationStatusResult, + TrackedResource, +} from "./models/index.js"; +export { + KnownCreatedByType, + KnownOrigin, + KnownArmActionType, + KnownPrivateEndpointServiceConnectionStatus, + KnownPrivateEndpointConnectionProvisioningState, +} from "./models/index.js"; +export type { + Alert, + AlertProperties, + AlertSeverity, + Intent, + ResourceIdentifier, + ResourceIdentifierUnion, + ResourceIdentifierType, + AzureResourceIdentifier, + LogAnalyticsIdentifier, + AlertStatus, + AlertEntity, + AlertPropertiesSupportingEvidence, + AlertSimulatorRequestBody, + AlertSimulatorRequestProperties, + AlertSimulatorRequestPropertiesUnion, + Kind, + AlertSimulatorBundlesRequestProperties, + BundleType, +} from "./models/alertsAPI/index.js"; +export { + KnownAlertSeverity, + KnownIntent, + KnownResourceIdentifierType, + KnownAlertStatus, + KnownKind, + KnownBundleType, +} from "./models/alertsAPI/index.js"; +export type { + AlertsSuppressionRule, + AlertsSuppressionRuleProperties, + RuleState, + SuppressionAlertsScope, + ScopeElement, +} from "./models/alertsSuppressionRulesAPI/index.js"; +export type { ApiCollection, ApiCollectionProperties } from "./models/apiCollectionsAPI/index.js"; +export type { + Application, + ApplicationProperties, + ApplicationSourceResourceType, +} from "./models/applicationsAPI/index.js"; +export { KnownApplicationSourceResourceType } from "./models/applicationsAPI/index.js"; +export type { + SecurityAssessmentMetadataResponse, + SecurityAssessmentMetadataPropertiesResponse, + SecurityAssessmentMetadataPropertiesResponsePublishDates, + Tactics, + Techniques, + SecurityAssessmentMetadataProperties, + Categories, + UserImpact, + ImplementationEffort, + Threats, + AssessmentType, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentResponse, + SecurityAssessmentPropertiesResponse, + AssessmentStatusResponse, + AssessmentStatus, + AssessmentStatusCode, + SecurityAssessmentPropertiesBase, + SecurityAssessmentPropertiesBaseRisk, + RiskLevel, + SecurityAssessmentPropertiesBaseRiskPathsItem, + SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem, + SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem, + AzureResourceDetails, + OnPremiseResourceDetails, + OnPremiseResourceDetailsUnion, + OnPremiseSqlResourceDetails, + AssessmentLinks, + SecurityAssessmentPartnerData, + SecurityAssessment, + SecurityAssessmentProperties, + ExpandEnum, +} from "./models/assessmentAPI/index.js"; +export { + KnownTactics, + KnownTechniques, + KnownCategories, + KnownUserImpact, + KnownImplementationEffort, + KnownThreats, + KnownAssessmentType, + KnownAssessmentStatusCode, + KnownRiskLevel, + KnownExpandEnum, +} from "./models/assessmentAPI/index.js"; +export type { + AdvancedThreatProtectionSetting, + AdvancedThreatProtectionProperties, +} from "./models/atpSettingsAPI/index.js"; +export type { + Automation, + AutomationProperties, + AutomationScope, + AutomationSource, + EventSource, + AutomationRuleSet, + AutomationTriggeringRule, + PropertyType, + Operator, + AutomationAction, + AutomationActionUnion, + AutomationActionLogicApp, + AutomationActionEventHub, + AutomationActionWorkspace, + AutomationUpdateModel, + AutomationValidationStatus, + SecurityContact, + SecurityContactProperties, + NotificationsSource, + NotificationsSourceUnion, + SourceType, + NotificationsSourceAlert, + MinimalSeverity, + NotificationsSourceAttackPath, + MinimalRiskLevel, + SecurityContactPropertiesNotificationsByRole, + SecurityContactRole, + SecurityContactName, +} from "./models/automationsAPI/index.js"; +export { + KnownEventSource, + KnownPropertyType, + KnownOperator, + KnownSourceType, + KnownMinimalSeverity, + KnownMinimalRiskLevel, + KnownSecurityContactRole, + KnownSecurityContactName, +} from "./models/automationsAPI/index.js"; +export type { + CloudError, + CloudErrorBody, + Severity, + ActionType, + Tags, + State, + Source, + OperationStatus, + ProvisioningState, + AssignedStandardItem, + SettingName, + ResourceDetails, + ResourceDetailsUnion, +} from "./models/common/index.js"; +export { + KnownSeverity, + KnownActionType, + KnownState, + KnownSource, + KnownProvisioningState, + KnownSettingName, +} from "./models/common/index.js"; +export type { + ComplianceResult, + ComplianceResultProperties, + ResourceStatus, +} from "./models/complianceResultsAPI/index.js"; +export { KnownResourceStatus } from "./models/complianceResultsAPI/index.js"; +export type { + DefenderForStorageSetting, + DefenderForStorageSettingProperties, + MalwareScanningProperties, + OnUploadProperties, + OnUploadFilters, + BlobScanResultsOptions, + AutomatedResponseType, + SensitiveDataDiscoveryProperties, + MalwareScan, + MalwareScanProperties, + ScanSummary, + BlobsScanSummary, + FilesScanSummary, +} from "./models/defenderForStorageAPI/index.js"; +export { + KnownBlobScanResultsOptions, + KnownAutomatedResponseType, +} from "./models/defenderForStorageAPI/index.js"; +export type { + GovernanceAssignment, + GovernanceAssignmentProperties, + RemediationEta, + GovernanceEmailNotification, + GovernanceAssignmentAdditionalData, + GovernanceRule, + GovernanceRuleProperties, + GovernanceRuleType, + GovernanceRuleSourceResourceType, + GovernanceRuleOwnerSource, + GovernanceRuleOwnerSourceType, + GovernanceRuleEmailNotification, + GovernanceRuleMetadata, + ExecuteGovernanceRuleParams, + OperationResult, + OperationResultStatus, +} from "./models/governanceAPI/index.js"; +export { + KnownGovernanceRuleType, + KnownGovernanceRuleSourceResourceType, + KnownGovernanceRuleOwnerSourceType, + KnownOperationResultStatus, +} from "./models/governanceAPI/index.js"; +export type { + HealthReport, + HealthReportProperties, + ResourceDetails as SecurityCenterResourceDetails, + EnvironmentDetails, + HealthDataClassification, + Status, + StatusName, + Issue, +} from "./models/healthReportsAPI/index.js"; +export { KnownStatusName } from "./models/healthReportsAPI/index.js"; +export type { + DeviceSecurityGroup, + DeviceSecurityGroupProperties, + ThresholdCustomAlertRule, + ThresholdCustomAlertRuleUnion, + TimeWindowCustomAlertRule, + AllowlistCustomAlertRule, + DenylistCustomAlertRule, + CustomAlertRule, + CustomAlertRuleUnion, + ListCustomAlertRule, + ListCustomAlertRuleUnion, + ValueType, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelProperties, + IoTSeverityMetrics, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + ReportedSeverity, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModelList, + IoTSecuritySolutionModel, + IoTSecuritySolutionProperties, + SecuritySolutionStatus, + ExportData, + DataSource, + UserDefinedResourcesProperties, + RecommendationConfigurationProperties, + RecommendationType, + RecommendationConfigStatus, + UnmaskedIpLoggingStatus, + AdditionalWorkspacesProperties, + AdditionalWorkspaceType, + AdditionalWorkspaceDataType, + UpdateIotSecuritySolutionData, + UpdateIoTSecuritySolutionProperties, + TagsResource, + IoTSecurityAggregatedAlert, + IoTSecurityAggregatedAlertProperties, + IoTSecurityAggregatedAlertPropertiesTopDevicesListItem, + IoTSecurityAggregatedRecommendation, + IoTSecurityAggregatedRecommendationProperties, +} from "./models/ioTSecurityAPI/index.js"; +export { + KnownValueType, + KnownReportedSeverity, + KnownSecuritySolutionStatus, + KnownExportData, + KnownDataSource, + KnownRecommendationType, + KnownRecommendationConfigStatus, + KnownUnmaskedIpLoggingStatus, + KnownAdditionalWorkspaceType, + KnownAdditionalWorkspaceDataType, +} from "./models/ioTSecurityAPI/index.js"; +export type { + AutoProvisioningSetting, + AutoProvisioningSettingProperties, + AutoProvision, + Compliance, + ComplianceProperties, + ComplianceSegment, + InformationProtectionPolicy, + InformationProtectionPolicyProperties, + SensitivityLabel, + Rank, + InformationType, + InformationProtectionKeyword, + InformationProtectionPolicyName, + WorkspaceSetting, + WorkspaceSettingProperties, +} from "./models/legacySettingsAPI/index.js"; +export { + KnownAutoProvision, + KnownInformationProtectionPolicyName, +} from "./models/legacySettingsAPI/index.js"; +export type { AscLocation } from "./models/locationsAPI/index.js"; +export type { + MdeOnboardingData, + MdeOnboardingDataProperties, + MdeOnboardingDataList, +} from "./models/mdeOnboardingAPI/index.js"; +export type { + Pricing, + PricingProperties, + PricingTier, + Enforce, + Inherited, + ResourcesCoverageStatus, + Extension, + IsEnabled, + PricingList, +} from "./models/pricingsAPI/index.js"; +export { + KnownPricingTier, + KnownEnforce, + KnownInherited, + KnownResourcesCoverageStatus, + KnownIsEnabled, +} from "./models/pricingsAPI/index.js"; +export type { + PrivateLinkGroupResource, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkProperties, + PublicNetworkAccess, + PrivateLinkUpdate, +} from "./models/privateLinksAPI/index.js"; +export { KnownPublicNetworkAccess } from "./models/privateLinksAPI/index.js"; +export type { + RegulatoryComplianceStandard, + RegulatoryComplianceStandardProperties, + RegulatoryComplianceControl, + RegulatoryComplianceControlProperties, + RegulatoryComplianceAssessment, + RegulatoryComplianceAssessmentProperties, +} from "./models/regulatoryComplianceAPI/index.js"; +export type { + SecureScoreItem, + SecureScoreItemProperties, + ScoreDetails, + SecureScoreControlDetails, + SecureScoreControlScoreDetails, + SecureScoreControlDefinitionItem, + SecureScoreControlDefinitionItemProperties, + SecureScoreControlDefinitionSource, + ControlType, + AzureResourceLink, + ExpandControlsEnum, +} from "./models/secureScoreAPI/index.js"; +export { KnownControlType, KnownExpandControlsEnum } from "./models/secureScoreAPI/index.js"; +export type { + SecurityConnector, + SecurityConnectorProperties, + CloudName, + CloudOffering, + CloudOfferingUnion, + OfferingType, + CspmMonitorAwsOffering, + CspmMonitorAwsOfferingNativeCloudConnection, + DefenderForContainersAwsOffering, + DefenderForContainersAwsOfferingKubernetesService, + DefenderForContainersAwsOfferingKubernetesDataCollection, + DefenderForContainersAwsOfferingCloudWatchToKinesis, + DefenderForContainersAwsOfferingKinesisToS3, + DefenderForContainersAwsOfferingMdcContainersImageAssessment, + DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderForContainersAwsOfferingVmScanners, + DefenderForServersAwsOffering, + DefenderForServersAwsOfferingDefenderForServers, + DefenderForServersAwsOfferingArcAutoProvisioning, + DefenderForServersAwsOfferingVaAutoProvisioning, + DefenderForServersAwsOfferingVaAutoProvisioningConfiguration, + Type, + DefenderForServersAwsOfferingMdeAutoProvisioning, + DefenderForServersAwsOfferingSubPlan, + SubPlan, + DefenderForServersAwsOfferingVmScanners, + DefenderFoDatabasesAwsOffering, + DefenderFoDatabasesAwsOfferingArcAutoProvisioning, + DefenderFoDatabasesAwsOfferingRds, + DefenderFoDatabasesAwsOfferingDatabasesDspm, + CspmMonitorGcpOffering, + CspmMonitorGcpOfferingNativeCloudConnection, + DefenderForServersGcpOffering, + DefenderForServersGcpOfferingDefenderForServers, + DefenderForServersGcpOfferingArcAutoProvisioning, + DefenderForServersGcpOfferingVaAutoProvisioning, + DefenderForServersGcpOfferingVaAutoProvisioningConfiguration, + DefenderForServersGcpOfferingMdeAutoProvisioning, + DefenderForServersGcpOfferingSubPlan, + DefenderForServersGcpOfferingVmScanners, + DefenderForDatabasesGcpOffering, + DefenderForDatabasesGcpOfferingArcAutoProvisioning, + DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning, + DefenderForContainersGcpOffering, + DefenderForContainersGcpOfferingNativeCloudConnection, + DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection, + DefenderForContainersGcpOfferingMdcContainersImageAssessment, + DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderForContainersGcpOfferingVmScanners, + CspmMonitorGithubOffering, + CspmMonitorAzureDevOpsOffering, + DefenderCspmAwsOffering, + DefenderCspmAwsOfferingVmScanners, + DefenderCspmAwsOfferingDataSensitivityDiscovery, + DefenderCspmAwsOfferingDatabasesDspm, + DefenderCspmAwsOfferingCiem, + DefenderCspmAwsOfferingCiemDiscovery, + DefenderCspmAwsOfferingCiemOidc, + DefenderCspmAwsOfferingMdcContainersImageAssessment, + DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderCspmGcpOffering, + DefenderCspmGcpOfferingCiemDiscovery, + DefenderCspmGcpOfferingVmScanners, + DefenderCspmGcpOfferingDataSensitivityDiscovery, + DefenderCspmGcpOfferingMdcContainersImageAssessment, + DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S, + CspmMonitorGitLabOffering, + CspmMonitorDockerHubOffering, + DefenderForContainersDockerHubOffering, + DefenderCspmDockerHubOffering, + CspmMonitorJFrogOffering, + DefenderForContainersJFrogOffering, + DefenderCspmJFrogOffering, + DefenderCspmJFrogOfferingMdcContainersImageAssessment, + EnvironmentData, + EnvironmentDataUnion, + EnvironmentType, + AwsEnvironmentData, + AwsOrganizationalData, + AwsOrganizationalDataUnion, + OrganizationMembershipType, + AwsOrganizationalDataMaster, + AwsOrganizationalDataMember, + GcpProjectEnvironmentData, + GcpOrganizationalData, + GcpOrganizationalDataUnion, + GcpOrganizationalDataOrganization, + GcpOrganizationalDataMember, + GcpProjectDetails, + GithubScopeEnvironmentData, + AzureDevOpsScopeEnvironmentData, + GitlabScopeEnvironmentData, + DockerHubEnvironmentData, + Authentication, + AuthenticationUnion, + AuthenticationType, + AccessTokenAuthentication, + JFrogEnvironmentData, + VmScannersAws, + VmScannersBase, + VmScannersBaseConfiguration, + ScanningMode, + ArcAutoProvisioningAws, + ArcAutoProvisioning, + ArcAutoProvisioningConfiguration, + ArcAutoProvisioningGcp, + VmScannersGcp, +} from "./models/securityConnectorsAPI/index.js"; +export { + KnownCloudName, + KnownOfferingType, + KnownType, + KnownSubPlan, + KnownEnvironmentType, + KnownOrganizationMembershipType, + KnownAuthenticationType, + KnownScanningMode, +} from "./models/securityConnectorsAPI/index.js"; +export type { + AzureDevOpsOrg, + AzureDevOpsOrgProperties, + DevOpsProvisioningState, + OnboardingState, + ActionableRemediation, + ActionableRemediationState, + CategoryConfiguration, + RuleCategory, + TargetBranchConfiguration, + AnnotateDefaultBranchState, + InheritFromParentState, + AzureDevOpsOrgListResponse, + GitHubOwner, + GitHubOwnerProperties, + GitHubOwnerListResponse, + GitLabGroup, + GitLabGroupProperties, + GitLabGroupListResponse, + DevOpsConfiguration, + DevOpsConfigurationProperties, + Authorization, + AutoDiscovery, + DevOpsCapability, + AgentlessConfiguration, + AgentlessEnablement, + InventoryListKind, + InventoryList, + InventoryKind, + AzureDevOpsProject, + AzureDevOpsProjectProperties, + GitLabProject, + GitLabProjectProperties, + AzureDevOpsRepository, + AzureDevOpsRepositoryProperties, + GitHubRepository, + GitHubRepositoryProperties, + IssueCreationRequest, +} from "./models/securityConnectorsDevOpsAPI/index.js"; +export { + KnownDevOpsProvisioningState, + KnownOnboardingState, + KnownActionableRemediationState, + KnownRuleCategory, + KnownAnnotateDefaultBranchState, + KnownInheritFromParentState, + KnownAutoDiscovery, + KnownAgentlessEnablement, + KnownInventoryListKind, + KnownInventoryKind, +} from "./models/securityConnectorsDevOpsAPI/index.js"; +export type { PrivateLinkParameters } from "./models/securityManagementClient/index.js"; +export type { SecurityOperator } from "./models/securityOperatorsAPI/index.js"; +export type { + DiscoveredSecuritySolution, + DiscoveredSecuritySolutionProperties, + SecurityFamily, + ExternalSecuritySolution, + ExternalSecuritySolutionUnion, + ExternalSecuritySolutionKind, + CefExternalSecuritySolution, + CefSolutionProperties, + AtaExternalSecuritySolution, + AtaSolutionProperties, + AadExternalSecuritySolution, + AadSolutionProperties, + AadConnectivityState, + ExternalSecuritySolutionProperties, + ConnectedWorkspace, + JitNetworkAccessPolicy, + JitNetworkAccessPolicyProperties, + JitNetworkAccessPolicyVirtualMachine, + JitNetworkAccessPortRule, + Protocol, + JitNetworkAccessRequest, + JitNetworkAccessRequestVirtualMachine, + JitNetworkAccessRequestPort, + Status as SecurityCenterStatus, + StatusReason, + JitNetworkAccessPolicyInitiateRequest, + JitNetworkAccessPolicyInitiateVirtualMachine, + JitNetworkAccessPolicyInitiatePort, + SecuritySolution, + SecuritySolutionProperties, + AllowedConnectionsResource, + AllowedConnectionsResourceProperties, + ConnectableResource, + ConnectedResource, + ConnectionType, + ServerVulnerabilityAssessment, + ServerVulnerabilityAssessmentProperties, + ServerVulnerabilityAssessmentPropertiesProvisioningState, + ServerVulnerabilityAssessmentsList, + TopologyResource, + TopologyResourceProperties, + TopologySingleResource, + TopologySingleResourceParent, + TopologySingleResourceChild, + SecuritySolutionsReferenceDataList, + SecuritySolutionsReferenceData, + SecuritySolutionsReferenceDataProperties, +} from "./models/securitySolutionsAPI/index.js"; +export { + KnownSecurityFamily, + KnownExternalSecuritySolutionKind, + KnownAadConnectivityState, + KnownProtocol, + KnownStatus, + KnownStatusReason, + KnownConnectionType, + KnownServerVulnerabilityAssessmentPropertiesProvisioningState, +} from "./models/securitySolutionsAPI/index.js"; +export type { + SecurityStandard, + SecurityStandardProperties, + StandardType, + PartialAssessmentProperties, + StandardSupportedCloud, + StandardMetadata, + StandardAssignment, + StandardAssignmentProperties, + Effect, + StandardAssignmentPropertiesExemptionData, + ExemptionCategory, + AssignedAssessmentItem, + StandardAssignmentPropertiesAttestationData, + AttestationComplianceState, + AttestationEvidence, + StandardAssignmentMetadata, + CustomRecommendation, + CustomRecommendationProperties, + RecommendationSupportedClouds, + SeverityEnum, + SecurityIssue, +} from "./models/securityStandardsAPI/index.js"; +export { + KnownStandardType, + KnownStandardSupportedCloud, + KnownEffect, + KnownExemptionCategory, + KnownAttestationComplianceState, + KnownRecommendationSupportedClouds, + KnownSeverityEnum, + KnownSecurityIssue, +} from "./models/securityStandardsAPI/index.js"; +export type { + GetSensitivitySettingsResponse, + GetSensitivitySettingsResponseProperties, + GetSensitivitySettingsResponsePropertiesMipInformation, + MipIntegrationStatus, + Label, + InfoType, + BuiltInInfoType, + UpdateSensitivitySettingsRequest, + GetSensitivitySettingsListResponse, +} from "./models/sensitivitySettingsAPI/index.js"; +export { KnownMipIntegrationStatus } from "./models/sensitivitySettingsAPI/index.js"; +export type { + ServerVulnerabilityAssessmentsSetting, + ServerVulnerabilityAssessmentsSettingUnion, + ServerVulnerabilityAssessmentsSettingKindName, + ServerVulnerabilityAssessmentsSettingKind, + AzureServersSetting, + ServerVulnerabilityAssessmentsAzureSettingProperties, + ServerVulnerabilityAssessmentsAzureSettingSelectedProvider, +} from "./models/serverVulnerabilityAssessmentsSettingsAPI/index.js"; +export { + KnownServerVulnerabilityAssessmentsSettingKindName, + KnownServerVulnerabilityAssessmentsSettingKind, + KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider, +} from "./models/serverVulnerabilityAssessmentsSettingsAPI/index.js"; +export type { + Setting, + SettingUnion, + SettingKind, + DataExportSettings, + DataExportSettingProperties, + AlertSyncSettings, + AlertSyncSettingProperties, +} from "./models/settingsAPI/index.js"; +export { KnownSettingKind } from "./models/settingsAPI/index.js"; +export type { + RuleResults, + RuleResultsProperties, + RuleResultsInput, + RulesResults, + RulesResultsInput, + ScanResult, + ScanResultProperties, + RuleStatus, + Remediation, + BaselineAdjustedResult, + Baseline, + VaRule, + RuleSeverity, + RuleType, + QueryCheck, + BenchmarkReference, + SqlVulnerabilityAssessmentSettings, + SqlVulnerabilityAssessmentSettingsProperties, + SqlVulnerabilityAssessmentState, + SqlVulnerabilityAssessmentScanOperationResult, + SqlVulnerabilityAssessmentScanOperationResultProperties, + ScanOperationStatus, + ScanV2, + ScanPropertiesV2, + ScanTriggerType, + ScanState, +} from "./models/sqlVulnerabilityAssessmentsAPI/index.js"; +export { + KnownRuleStatus, + KnownRuleSeverity, + KnownRuleType, + KnownSqlVulnerabilityAssessmentState, + KnownScanOperationStatus, + KnownScanTriggerType, + KnownScanState, +} from "./models/sqlVulnerabilityAssessmentsAPI/index.js"; +export type { + Standard, + StandardProperties, + StandardComponentProperties, + StandardSupportedClouds, + Assignment, + AssignmentProperties, + AssignedComponentItem, + AssignmentPropertiesAdditionalData, +} from "./models/standardsAPI/index.js"; +export type { + SecuritySubAssessment, + SecuritySubAssessmentProperties, + SubAssessmentStatus, + SubAssessmentStatusCode, + AdditionalData, + AdditionalDataUnion, + AssessedResourceType, + SqlServerVulnerabilityProperties, + ContainerRegistryVulnerabilityProperties, + Cvss, + Cve, + VendorReference, + ServerVulnerabilityProperties, +} from "./models/subAssessmentsAPI/index.js"; +export { + KnownSubAssessmentStatusCode, + KnownAssessedResourceType, +} from "./models/subAssessmentsAPI/index.js"; +export type { + SecurityTask, + SecurityTaskProperties, + SecurityTaskParameters, + TaskUpdateActionType, +} from "./models/tasksAPI/index.js"; +export { KnownTaskUpdateActionType } from "./models/tasksAPI/index.js"; +export type { SecurityCenterOptionalParams } from "./api/index.js"; +export type { + AdvancedThreatProtectionCreateOptionalParams, + AdvancedThreatProtectionGetOptionalParams, +} from "./api/advancedThreatProtection/index.js"; +export type { + AlertsSimulateOptionalParams, + AlertsListByResourceGroupOptionalParams, + AlertsListOptionalParams, + AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams, + AlertsUpdateResourceGroupLevelStateToActivateOptionalParams, + AlertsUpdateResourceGroupLevelStateToDismissOptionalParams, + AlertsUpdateResourceGroupLevelStateToResolveOptionalParams, + AlertsListResourceGroupLevelByRegionOptionalParams, + AlertsGetResourceGroupLevelOptionalParams, + AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams, + AlertsUpdateSubscriptionLevelStateToActivateOptionalParams, + AlertsUpdateSubscriptionLevelStateToResolveOptionalParams, + AlertsUpdateSubscriptionLevelStateToDismissOptionalParams, + AlertsListSubscriptionLevelByRegionOptionalParams, + AlertsGetSubscriptionLevelOptionalParams, +} from "./api/alerts/index.js"; +export type { + AlertsSuppressionRulesListOptionalParams, + AlertsSuppressionRulesDeleteOptionalParams, + AlertsSuppressionRulesUpdateOptionalParams, + AlertsSuppressionRulesGetOptionalParams, +} from "./api/alertsSuppressionRules/index.js"; +export type { + AllowedConnectionsListOptionalParams, + AllowedConnectionsListByHomeRegionOptionalParams, + AllowedConnectionsGetOptionalParams, +} from "./api/allowedConnections/index.js"; +export type { + APICollectionsListByResourceGroupOptionalParams, + APICollectionsListBySubscriptionOptionalParams, + APICollectionsListByAzureApiManagementServiceOptionalParams, + APICollectionsOffboardAzureApiManagementApiOptionalParams, + APICollectionsOnboardAzureApiManagementApiOptionalParams, + APICollectionsGetByAzureApiManagementServiceOptionalParams, +} from "./api/apiCollections/index.js"; +export type { + ApplicationDeleteOptionalParams, + ApplicationCreateOrUpdateOptionalParams, + ApplicationGetOptionalParams, +} from "./api/application/index.js"; +export type { ApplicationsListOptionalParams } from "./api/applications/index.js"; +export type { + AssessmentsListOptionalParams, + AssessmentsDeleteOptionalParams, + AssessmentsCreateOrUpdateOptionalParams, + AssessmentsGetOptionalParams, +} from "./api/assessments/index.js"; +export type { + AssessmentsMetadataListOptionalParams, + AssessmentsMetadataGetOptionalParams, + AssessmentsMetadataListBySubscriptionOptionalParams, + AssessmentsMetadataDeleteInSubscriptionOptionalParams, + AssessmentsMetadataCreateInSubscriptionOptionalParams, + AssessmentsMetadataGetInSubscriptionOptionalParams, +} from "./api/assessmentsMetadata/index.js"; +export type { + AssignmentsListBySubscriptionOptionalParams, + AssignmentsListOptionalParams, + AssignmentsDeleteOptionalParams, + AssignmentsCreateOrUpdateOptionalParams, + AssignmentsGetOptionalParams, +} from "./api/assignments/index.js"; +export type { + AutomationsValidateOptionalParams, + AutomationsListOptionalParams, + AutomationsListByResourceGroupOptionalParams, + AutomationsDeleteOptionalParams, + AutomationsUpdateOptionalParams, + AutomationsCreateOrUpdateOptionalParams, + AutomationsGetOptionalParams, +} from "./api/automations/index.js"; +export type { + AutoProvisioningSettingsListOptionalParams, + AutoProvisioningSettingsCreateOptionalParams, + AutoProvisioningSettingsGetOptionalParams, +} from "./api/autoProvisioningSettings/index.js"; +export type { + AzureDevOpsOrgsListAvailableOptionalParams, + AzureDevOpsOrgsListOptionalParams, + AzureDevOpsOrgsUpdateOptionalParams, + AzureDevOpsOrgsCreateOrUpdateOptionalParams, + AzureDevOpsOrgsGetOptionalParams, +} from "./api/azureDevOpsOrgs/index.js"; +export type { + AzureDevOpsProjectsListOptionalParams, + AzureDevOpsProjectsUpdateOptionalParams, + AzureDevOpsProjectsCreateOrUpdateOptionalParams, + AzureDevOpsProjectsGetOptionalParams, +} from "./api/azureDevOpsProjects/index.js"; +export type { + AzureDevOpsReposListOptionalParams, + AzureDevOpsReposUpdateOptionalParams, + AzureDevOpsReposCreateOrUpdateOptionalParams, + AzureDevOpsReposGetOptionalParams, +} from "./api/azureDevOpsRepos/index.js"; +export type { + ComplianceResultsListOptionalParams, + ComplianceResultsGetOptionalParams, +} from "./api/complianceResults/index.js"; +export type { + CompliancesListOptionalParams, + CompliancesGetOptionalParams, +} from "./api/compliances/index.js"; +export type { + CustomRecommendationsListOptionalParams, + CustomRecommendationsDeleteOptionalParams, + CustomRecommendationsCreateOrUpdateOptionalParams, + CustomRecommendationsGetOptionalParams, +} from "./api/customRecommendations/index.js"; +export type { + DefenderForStorageGetMalwareScanOptionalParams, + DefenderForStorageCancelMalwareScanOptionalParams, + DefenderForStorageStartMalwareScanOptionalParams, + DefenderForStorageListOptionalParams, + DefenderForStorageCreateOptionalParams, + DefenderForStorageGetOptionalParams, +} from "./api/defenderForStorage/index.js"; +export type { + DeviceSecurityGroupsListOptionalParams, + DeviceSecurityGroupsDeleteOptionalParams, + DeviceSecurityGroupsCreateOrUpdateOptionalParams, + DeviceSecurityGroupsGetOptionalParams, +} from "./api/deviceSecurityGroups/index.js"; +export type { + DevOpsConfigurationsListOptionalParams, + DevOpsConfigurationsDeleteOptionalParams, + DevOpsConfigurationsUpdateOptionalParams, + DevOpsConfigurationsCreateOrUpdateOptionalParams, + DevOpsConfigurationsGetOptionalParams, +} from "./api/devOpsConfigurations/index.js"; +export type { DevOpsOperationResultsGetOptionalParams } from "./api/devOpsOperationResults/index.js"; +export type { + DiscoveredSecuritySolutionsListOptionalParams, + DiscoveredSecuritySolutionsListByHomeRegionOptionalParams, + DiscoveredSecuritySolutionsGetOptionalParams, +} from "./api/discoveredSecuritySolutions/index.js"; +export type { + ExternalSecuritySolutionsListOptionalParams, + ExternalSecuritySolutionsListByHomeRegionOptionalParams, + ExternalSecuritySolutionsGetOptionalParams, +} from "./api/externalSecuritySolutions/index.js"; +export type { GitHubIssuesCreateOptionalParams } from "./api/gitHubIssues/index.js"; +export type { + GitHubOwnersListAvailableOptionalParams, + GitHubOwnersListOptionalParams, + GitHubOwnersGetOptionalParams, +} from "./api/gitHubOwners/index.js"; +export type { + GitHubReposListOptionalParams, + GitHubReposGetOptionalParams, +} from "./api/gitHubRepos/index.js"; +export type { + GitLabGroupsListAvailableOptionalParams, + GitLabGroupsListOptionalParams, + GitLabGroupsGetOptionalParams, +} from "./api/gitLabGroups/index.js"; +export type { + GitLabProjectsListOptionalParams, + GitLabProjectsGetOptionalParams, +} from "./api/gitLabProjects/index.js"; +export type { GitLabSubgroupsListOptionalParams } from "./api/gitLabSubgroups/index.js"; +export type { + GovernanceAssignmentsListOptionalParams, + GovernanceAssignmentsDeleteOptionalParams, + GovernanceAssignmentsCreateOrUpdateOptionalParams, + GovernanceAssignmentsGetOptionalParams, +} from "./api/governanceAssignments/index.js"; +export type { + GovernanceRulesOperationResultsOptionalParams, + GovernanceRulesExecuteOptionalParams, + GovernanceRulesListOptionalParams, + GovernanceRulesDeleteOptionalParams, + GovernanceRulesCreateOrUpdateOptionalParams, + GovernanceRulesGetOptionalParams, +} from "./api/governanceRules/index.js"; +export type { + HealthReportsListOptionalParams, + HealthReportsGetOptionalParams, +} from "./api/healthReports/index.js"; +export type { + InformationProtectionPoliciesListOptionalParams, + InformationProtectionPoliciesCreateOrUpdateOptionalParams, + InformationProtectionPoliciesGetOptionalParams, +} from "./api/informationProtectionPolicies/index.js"; +export type { + IotSecuritySolutionListBySubscriptionOptionalParams, + IotSecuritySolutionListByResourceGroupOptionalParams, + IotSecuritySolutionDeleteOptionalParams, + IotSecuritySolutionUpdateOptionalParams, + IotSecuritySolutionCreateOrUpdateOptionalParams, + IotSecuritySolutionGetOptionalParams, +} from "./api/iotSecuritySolution/index.js"; +export type { + IotSecuritySolutionAnalyticsListOptionalParams, + IotSecuritySolutionAnalyticsGetOptionalParams, +} from "./api/iotSecuritySolutionAnalytics/index.js"; +export type { + IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams, + IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams, +} from "./api/iotSecuritySolutionsAnalyticsAggregatedAlert/index.js"; +export type { + IotSecuritySolutionsAnalyticsRecommendationListOptionalParams, + IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams, +} from "./api/iotSecuritySolutionsAnalyticsRecommendation/index.js"; +export type { + JitNetworkAccessPoliciesListByResourceGroupOptionalParams, + JitNetworkAccessPoliciesListOptionalParams, + JitNetworkAccessPoliciesInitiateOptionalParams, + JitNetworkAccessPoliciesListByRegionOptionalParams, + JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams, + JitNetworkAccessPoliciesDeleteOptionalParams, + JitNetworkAccessPoliciesCreateOrUpdateOptionalParams, + JitNetworkAccessPoliciesGetOptionalParams, +} from "./api/jitNetworkAccessPolicies/index.js"; +export type { + LocationsListOptionalParams, + LocationsGetOptionalParams, +} from "./api/locations/index.js"; +export type { + MdeOnboardingsListOptionalParams, + MdeOnboardingsGetOptionalParams, +} from "./api/mdeOnboardings/index.js"; +export type { OperationResultsGetOptionalParams } from "./api/operationResults/index.js"; +export type { OperationsListOptionalParams } from "./api/operations/index.js"; +export type { OperationStatusesGetOptionalParams } from "./api/operationStatuses/index.js"; +export type { + PricingsListOptionalParams, + PricingsDeleteOptionalParams, + PricingsUpdateOptionalParams, + PricingsGetOptionalParams, +} from "./api/pricings/index.js"; +export type { + PrivateEndpointConnectionsListOptionalParams, + PrivateEndpointConnectionsDeleteOptionalParams, + PrivateEndpointConnectionsCreateOrUpdateOptionalParams, + PrivateEndpointConnectionsGetOptionalParams, +} from "./api/privateEndpointConnections/index.js"; +export type { + PrivateLinkResourcesListOptionalParams, + PrivateLinkResourcesGetOptionalParams, +} from "./api/privateLinkResources/index.js"; +export type { + PrivateLinksListBySubscriptionOptionalParams, + PrivateLinksListOptionalParams, + PrivateLinksDeleteOptionalParams, + PrivateLinksUpdateOptionalParams, + PrivateLinksCreateOptionalParams, + PrivateLinksHeadOptionalParams, + PrivateLinksGetOptionalParams, +} from "./api/privateLinks/index.js"; +export type { + RegulatoryComplianceAssessmentsListOptionalParams, + RegulatoryComplianceAssessmentsGetOptionalParams, +} from "./api/regulatoryComplianceAssessments/index.js"; +export type { + RegulatoryComplianceControlsListOptionalParams, + RegulatoryComplianceControlsGetOptionalParams, +} from "./api/regulatoryComplianceControls/index.js"; +export type { + RegulatoryComplianceStandardsListOptionalParams, + RegulatoryComplianceStandardsGetOptionalParams, +} from "./api/regulatoryComplianceStandards/index.js"; +export type { + SecureScoreControlDefinitionsListBySubscriptionOptionalParams, + SecureScoreControlDefinitionsListOptionalParams, +} from "./api/secureScoreControlDefinitions/index.js"; +export type { + SecureScoreControlsListOptionalParams, + SecureScoreControlsListBySecureScoreOptionalParams, +} from "./api/secureScoreControls/index.js"; +export type { + SecureScoresListOptionalParams, + SecureScoresGetOptionalParams, +} from "./api/secureScores/index.js"; +export type { + SecurityConnectorApplicationDeleteOptionalParams, + SecurityConnectorApplicationCreateOrUpdateOptionalParams, + SecurityConnectorApplicationGetOptionalParams, +} from "./api/securityConnectorApplication/index.js"; +export type { SecurityConnectorApplicationsListOptionalParams } from "./api/securityConnectorApplications/index.js"; +export type { + SecurityConnectorsListOptionalParams, + SecurityConnectorsListByResourceGroupOptionalParams, + SecurityConnectorsDeleteOptionalParams, + SecurityConnectorsUpdateOptionalParams, + SecurityConnectorsCreateOrUpdateOptionalParams, + SecurityConnectorsGetOptionalParams, +} from "./api/securityConnectors/index.js"; +export type { + SecurityContactsListOptionalParams, + SecurityContactsDeleteOptionalParams, + SecurityContactsCreateOptionalParams, + SecurityContactsGetOptionalParams, +} from "./api/securityContacts/index.js"; +export type { + SecurityOperatorsListOptionalParams, + SecurityOperatorsDeleteOptionalParams, + SecurityOperatorsCreateOrUpdateOptionalParams, + SecurityOperatorsGetOptionalParams, +} from "./api/securityOperators/index.js"; +export type { + SecuritySolutionsListOptionalParams, + SecuritySolutionsGetOptionalParams, +} from "./api/securitySolutions/index.js"; +export type { + SecuritySolutionsReferenceDataListByHomeRegionOptionalParams, + SecuritySolutionsReferenceDataListOptionalParams, +} from "./api/securitySolutionsReferenceData/index.js"; +export type { + SecurityStandardsListOptionalParams, + SecurityStandardsDeleteOptionalParams, + SecurityStandardsCreateOrUpdateOptionalParams, + SecurityStandardsGetOptionalParams, +} from "./api/securityStandards/index.js"; +export type { + SensitivitySettingsListOptionalParams, + SensitivitySettingsCreateOrUpdateOptionalParams, + SensitivitySettingsGetOptionalParams, +} from "./api/sensitivitySettings/index.js"; +export type { + ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams, + ServerVulnerabilityAssessmentDeleteOptionalParams, + ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentGetOptionalParams, +} from "./api/serverVulnerabilityAssessment/index.js"; +export type { + ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams, + ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams, + ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams, + ServerVulnerabilityAssessmentsSettingsGetOptionalParams, +} from "./api/serverVulnerabilityAssessmentsSettings/index.js"; +export type { + SettingsListOptionalParams, + SettingsUpdateOptionalParams, + SettingsGetOptionalParams, +} from "./api/settings/index.js"; +export type { + SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesListOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams, +} from "./api/sqlVulnerabilityAssessmentBaselineRules/index.js"; +export type { + SqlVulnerabilityAssessmentScanResultsListOptionalParams, + SqlVulnerabilityAssessmentScanResultsGetOptionalParams, +} from "./api/sqlVulnerabilityAssessmentScanResults/index.js"; +export type { + SqlVulnerabilityAssessmentScansListOptionalParams, + SqlVulnerabilityAssessmentScansGetOptionalParams, + SqlVulnerabilityAssessmentScansGetScanOperationResultOptionalParams, + SqlVulnerabilityAssessmentScansInitiateScanOptionalParams, +} from "./api/sqlVulnerabilityAssessmentScans/index.js"; +export type { + SqlVulnerabilityAssessmentSettingsDeleteOptionalParams, + SqlVulnerabilityAssessmentSettingsCreateOrUpdateOptionalParams, + SqlVulnerabilityAssessmentSettingsGetOptionalParams, +} from "./api/sqlVulnerabilityAssessmentSettings/index.js"; +export type { + StandardAssignmentsListOptionalParams, + StandardAssignmentsDeleteOptionalParams, + StandardAssignmentsCreateOptionalParams, + StandardAssignmentsGetOptionalParams, +} from "./api/standardAssignments/index.js"; +export type { + StandardsListBySubscriptionOptionalParams, + StandardsListOptionalParams, + StandardsDeleteOptionalParams, + StandardsCreateOrUpdateOptionalParams, + StandardsGetOptionalParams, +} from "./api/standards/index.js"; +export type { + SubAssessmentsListAllOptionalParams, + SubAssessmentsListOptionalParams, + SubAssessmentsGetOptionalParams, +} from "./api/subAssessments/index.js"; +export type { + TasksListOptionalParams, + TasksUpdateSubscriptionLevelTaskStateOptionalParams, + TasksListByHomeRegionOptionalParams, + TasksGetSubscriptionLevelTaskOptionalParams, + TasksUpdateResourceGroupLevelTaskStateOptionalParams, + TasksListByResourceGroupOptionalParams, + TasksGetResourceGroupLevelTaskOptionalParams, +} from "./api/tasks/index.js"; +export type { + TopologyListOptionalParams, + TopologyListByHomeRegionOptionalParams, + TopologyGetOptionalParams, +} from "./api/topology/index.js"; +export type { + WorkspaceSettingsListOptionalParams, + WorkspaceSettingsDeleteOptionalParams, + WorkspaceSettingsUpdateOptionalParams, + WorkspaceSettingsCreateOptionalParams, + WorkspaceSettingsGetOptionalParams, +} from "./api/workspaceSettings/index.js"; +export type { + AdvancedThreatProtectionOperations, + AlertsOperations, + AlertsSuppressionRulesOperations, + AllowedConnectionsOperations, + APICollectionsOperations, + ApplicationOperations, + ApplicationsOperations, + AssessmentsOperations, + AssessmentsMetadataOperations, + AssignmentsOperations, + AutomationsOperations, + AutoProvisioningSettingsOperations, + AzureDevOpsOrgsOperations, + AzureDevOpsProjectsOperations, + AzureDevOpsReposOperations, + ComplianceResultsOperations, + CompliancesOperations, + CustomRecommendationsOperations, + DefenderForStorageOperations, + DeviceSecurityGroupsOperations, + DevOpsConfigurationsOperations, + DevOpsOperationResultsOperations, + DiscoveredSecuritySolutionsOperations, + ExternalSecuritySolutionsOperations, + GitHubIssuesOperations, + GitHubOwnersOperations, + GitHubReposOperations, + GitLabGroupsOperations, + GitLabProjectsOperations, + GitLabSubgroupsOperations, + GovernanceAssignmentsOperations, + GovernanceRulesOperations, + HealthReportsOperations, + InformationProtectionPoliciesOperations, + IotSecuritySolutionOperations, + IotSecuritySolutionAnalyticsOperations, + IotSecuritySolutionsAnalyticsAggregatedAlertOperations, + IotSecuritySolutionsAnalyticsRecommendationOperations, + JitNetworkAccessPoliciesOperations, + LocationsOperations, + MdeOnboardingsOperations, + OperationResultsOperations, + OperationsOperations, + OperationStatusesOperations, + PricingsOperations, + PrivateEndpointConnectionsOperations, + PrivateLinkResourcesOperations, + PrivateLinksOperations, + RegulatoryComplianceAssessmentsOperations, + RegulatoryComplianceControlsOperations, + RegulatoryComplianceStandardsOperations, + SecureScoreControlDefinitionsOperations, + SecureScoreControlsOperations, + SecureScoresOperations, + SecurityConnectorApplicationOperations, + SecurityConnectorApplicationsOperations, + SecurityConnectorsOperations, + SecurityContactsOperations, + SecurityOperatorsOperations, + SecuritySolutionsOperations, + SecuritySolutionsReferenceDataOperations, + SecurityStandardsOperations, + SensitivitySettingsOperations, + ServerVulnerabilityAssessmentOperations, + ServerVulnerabilityAssessmentsSettingsOperations, + SettingsOperations, + SqlVulnerabilityAssessmentBaselineRulesOperations, + SqlVulnerabilityAssessmentScanResultsOperations, + SqlVulnerabilityAssessmentScansOperations, + SqlVulnerabilityAssessmentSettingsOperations, + StandardAssignmentsOperations, + StandardsOperations, + SubAssessmentsOperations, + TasksOperations, + TopologyOperations, + WorkspaceSettingsOperations, +} from "./classic/index.js"; +export type { PageSettings, ContinuablePage, PagedAsyncIterableIterator }; +export { AzureClouds }; +export type { AzureSupportedClouds }; diff --git a/sdk/security/arm-security/src/logger.ts b/sdk/security/arm-security/src/logger.ts new file mode 100644 index 000000000000..c3deec9da74e --- /dev/null +++ b/sdk/security/arm-security/src/logger.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { createClientLogger } from "@azure/logger"; +export const logger = createClientLogger("arm-security"); diff --git a/sdk/security/arm-security/src/lroImpl.ts b/sdk/security/arm-security/src/lroImpl.ts deleted file mode 100644 index d8bc98987053..000000000000 --- a/sdk/security/arm-security/src/lroImpl.ts +++ /dev/null @@ -1,38 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ -import { AbortSignalLike } from "@azure/abort-controller"; -import { LongRunningOperation, LroResponse } from "@azure/core-lro"; - -export function createLroSpec(inputs: { - sendOperationFn: (args: any, spec: any) => Promise>; - args: Record; - spec: { - readonly requestBody?: unknown; - readonly path?: string; - readonly httpMethod: string; - } & Record; -}): LongRunningOperation { - const { args, spec, sendOperationFn } = inputs; - return { - requestMethod: spec.httpMethod, - requestPath: spec.path!, - sendInitialRequest: () => sendOperationFn(args, spec), - sendPollRequest: ( - path: string, - options?: { abortSignal?: AbortSignalLike }, - ) => { - const { requestBody, ...restSpec } = spec; - return sendOperationFn(args, { - ...restSpec, - httpMethod: "GET", - path, - abortSignal: options?.abortSignal, - }); - }, - }; -} diff --git a/sdk/security/arm-security/src/models/alertsAPI/index.ts b/sdk/security/arm-security/src/models/alertsAPI/index.ts new file mode 100644 index 000000000000..352d16cc386d --- /dev/null +++ b/sdk/security/arm-security/src/models/alertsAPI/index.ts @@ -0,0 +1,31 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + Alert, + AlertProperties, + AlertSeverity, + Intent, + ResourceIdentifier, + ResourceIdentifierUnion, + ResourceIdentifierType, + AzureResourceIdentifier, + LogAnalyticsIdentifier, + AlertStatus, + AlertEntity, + AlertPropertiesSupportingEvidence, + AlertSimulatorRequestBody, + AlertSimulatorRequestProperties, + AlertSimulatorRequestPropertiesUnion, + Kind, + AlertSimulatorBundlesRequestProperties, + BundleType, +} from "./models.js"; +export { + KnownAlertSeverity, + KnownIntent, + KnownResourceIdentifierType, + KnownAlertStatus, + KnownKind, + KnownBundleType, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/alertsAPI/models.ts b/sdk/security/arm-security/src/models/alertsAPI/models.ts new file mode 100644 index 000000000000..04dbd943cf2b --- /dev/null +++ b/sdk/security/arm-security/src/models/alertsAPI/models.ts @@ -0,0 +1,649 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { serializeRecord } from "../../static-helpers/serialization/serialize-record.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Security alert */ +export interface Alert extends ProxyResource { + /** Schema version. */ + readonly version?: string; + /** Unique identifier for the detection logic (all alert instances from the same detection logic will have the same alertType). */ + readonly alertType?: string; + /** Unique identifier for the alert. */ + readonly systemAlertId?: string; + /** The name of Azure Security Center pricing tier which powering this alert. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing */ + readonly productComponentName?: string; + /** The display name of the alert. */ + readonly alertDisplayName?: string; + /** Description of the suspicious activity that was detected. */ + readonly description?: string; + /** The risk level of the threat that was detected. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. */ + readonly severity?: AlertSeverity; + /** The kill chain related intent behind the alert. For list of supported values, and explanations of Azure Security Center's supported kill chain intents. */ + readonly intent?: Intent; + /** The UTC time of the first event or activity included in the alert in ISO8601 format. */ + readonly startTimeUtc?: Date; + /** The UTC time of the last event or activity included in the alert in ISO8601 format. */ + readonly endTimeUtc?: Date; + /** The resource identifiers that can be used to direct the alert to the right product exposure group (tenant, workspace, subscription etc.). There can be multiple identifiers of different type per alert. */ + readonly resourceIdentifiers?: ResourceIdentifierUnion[]; + /** Manual action items to take to remediate the alert. */ + readonly remediationSteps?: string[]; + /** The name of the vendor that raises the alert. */ + readonly vendorName?: string; + /** The life cycle status of the alert. */ + readonly status?: AlertStatus; + /** Links related to the alert */ + readonly extendedLinks?: Record[]; + /** A direct link to the alert page in Azure Portal. */ + readonly alertUri?: string; + /** The UTC time the alert was generated in ISO8601 format. */ + readonly timeGeneratedUtc?: Date; + /** The name of the product which published this alert (Microsoft Sentinel, Microsoft Defender for Identity, Microsoft Defender for Endpoint, Microsoft Defender for Office, Microsoft Defender for Cloud Apps, and so on). */ + readonly productName?: string; + /** The UTC processing end time of the alert in ISO8601 format. */ + readonly processingEndTimeUtc?: Date; + /** A list of entities related to the alert. */ + readonly entities?: AlertEntity[]; + /** This field determines whether the alert is an incident (a compound grouping of several alerts) or a single alert. */ + readonly isIncident?: boolean; + /** Key for corelating related alerts. Alerts with the same correlation key considered to be related. */ + readonly correlationKey?: string; + /** Custom properties for the alert. */ + extendedProperties?: Record; + /** The display name of the resource most related to this alert. */ + readonly compromisedEntity?: string; + /** kill chain related techniques behind the alert. */ + readonly techniques?: string[]; + /** Kill chain related sub-techniques behind the alert. */ + readonly subTechniques?: string[]; + /** Changing set of properties depending on the supportingEvidence type. */ + supportingEvidence?: AlertPropertiesSupportingEvidence; +} + +export function alertDeserializer(item: any): Alert { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _alertPropertiesDeserializer(item["properties"])), + }; +} + +/** describes security alert properties. */ +export interface AlertProperties { + /** Schema version. */ + readonly version?: string; + /** Unique identifier for the detection logic (all alert instances from the same detection logic will have the same alertType). */ + readonly alertType?: string; + /** Unique identifier for the alert. */ + readonly systemAlertId?: string; + /** The name of Azure Security Center pricing tier which powering this alert. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing */ + readonly productComponentName?: string; + /** The display name of the alert. */ + readonly alertDisplayName?: string; + /** Description of the suspicious activity that was detected. */ + readonly description?: string; + /** The risk level of the threat that was detected. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. */ + readonly severity?: AlertSeverity; + /** The kill chain related intent behind the alert. For list of supported values, and explanations of Azure Security Center's supported kill chain intents. */ + readonly intent?: Intent; + /** The UTC time of the first event or activity included in the alert in ISO8601 format. */ + readonly startTimeUtc?: Date; + /** The UTC time of the last event or activity included in the alert in ISO8601 format. */ + readonly endTimeUtc?: Date; + /** The resource identifiers that can be used to direct the alert to the right product exposure group (tenant, workspace, subscription etc.). There can be multiple identifiers of different type per alert. */ + readonly resourceIdentifiers?: ResourceIdentifierUnion[]; + /** Manual action items to take to remediate the alert. */ + readonly remediationSteps?: string[]; + /** The name of the vendor that raises the alert. */ + readonly vendorName?: string; + /** The life cycle status of the alert. */ + readonly status?: AlertStatus; + /** Links related to the alert */ + readonly extendedLinks?: Record[]; + /** A direct link to the alert page in Azure Portal. */ + readonly alertUri?: string; + /** The UTC time the alert was generated in ISO8601 format. */ + readonly timeGeneratedUtc?: Date; + /** The name of the product which published this alert (Microsoft Sentinel, Microsoft Defender for Identity, Microsoft Defender for Endpoint, Microsoft Defender for Office, Microsoft Defender for Cloud Apps, and so on). */ + readonly productName?: string; + /** The UTC processing end time of the alert in ISO8601 format. */ + readonly processingEndTimeUtc?: Date; + /** A list of entities related to the alert. */ + readonly entities?: AlertEntity[]; + /** This field determines whether the alert is an incident (a compound grouping of several alerts) or a single alert. */ + readonly isIncident?: boolean; + /** Key for corelating related alerts. Alerts with the same correlation key considered to be related. */ + readonly correlationKey?: string; + /** Custom properties for the alert. */ + extendedProperties?: Record; + /** The display name of the resource most related to this alert. */ + readonly compromisedEntity?: string; + /** kill chain related techniques behind the alert. */ + readonly techniques?: string[]; + /** Kill chain related sub-techniques behind the alert. */ + readonly subTechniques?: string[]; + /** Changing set of properties depending on the supportingEvidence type. */ + supportingEvidence?: AlertPropertiesSupportingEvidence; +} + +export function alertPropertiesDeserializer(item: any): AlertProperties { + return { + version: item["version"], + alertType: item["alertType"], + systemAlertId: item["systemAlertId"], + productComponentName: item["productComponentName"], + alertDisplayName: item["alertDisplayName"], + description: item["description"], + severity: item["severity"], + intent: item["intent"], + startTimeUtc: !item["startTimeUtc"] ? item["startTimeUtc"] : new Date(item["startTimeUtc"]), + endTimeUtc: !item["endTimeUtc"] ? item["endTimeUtc"] : new Date(item["endTimeUtc"]), + resourceIdentifiers: !item["resourceIdentifiers"] + ? item["resourceIdentifiers"] + : resourceIdentifierUnionArrayDeserializer(item["resourceIdentifiers"]), + remediationSteps: !item["remediationSteps"] + ? item["remediationSteps"] + : item["remediationSteps"].map((p: any) => { + return p; + }), + vendorName: item["vendorName"], + status: item["status"], + extendedLinks: !item["extendedLinks"] + ? item["extendedLinks"] + : item["extendedLinks"].map((p: any) => { + return Object.fromEntries(Object.entries(p).map(([k1, p1]: [string, any]) => [k1, p1])); + }), + alertUri: item["alertUri"], + timeGeneratedUtc: !item["timeGeneratedUtc"] + ? item["timeGeneratedUtc"] + : new Date(item["timeGeneratedUtc"]), + productName: item["productName"], + processingEndTimeUtc: !item["processingEndTimeUtc"] + ? item["processingEndTimeUtc"] + : new Date(item["processingEndTimeUtc"]), + entities: !item["entities"] ? item["entities"] : alertEntityArrayDeserializer(item["entities"]), + isIncident: item["isIncident"], + correlationKey: item["correlationKey"], + extendedProperties: !item["extendedProperties"] + ? item["extendedProperties"] + : Object.fromEntries( + Object.entries(item["extendedProperties"]).map(([k, p]: [string, any]) => [k, p]), + ), + compromisedEntity: item["compromisedEntity"], + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + subTechniques: !item["subTechniques"] + ? item["subTechniques"] + : item["subTechniques"].map((p: any) => { + return p; + }), + supportingEvidence: !item["supportingEvidence"] + ? item["supportingEvidence"] + : alertPropertiesSupportingEvidenceDeserializer(item["supportingEvidence"]), + }; +} + +/** The risk level of the threat that was detected. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. */ +export enum KnownAlertSeverity { + /** Informational */ + Informational = "Informational", + /** Low */ + Low = "Low", + /** Medium */ + Medium = "Medium", + /** High */ + High = "High", +} + +/** + * The risk level of the threat that was detected. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. \ + * {@link KnownAlertSeverity} can be used interchangeably with AlertSeverity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Informational**: Informational \ + * **Low**: Low \ + * **Medium**: Medium \ + * **High**: High + */ +export type AlertSeverity = string; + +/** The kill chain related intent behind the alert. For list of supported values, and explanations of Azure Security Center's supported kill chain intents. */ +export enum KnownIntent { + /** Unknown */ + Unknown = "Unknown", + /** PreAttack could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt, originating from outside the network, to scan the target system and find a way in. Further details on the PreAttack stage can be read in [MITRE Pre-Att&ck matrix](https://attack.mitre.org/matrices/pre/). */ + PreAttack = "PreAttack", + /** InitialAccess is the stage where an attacker manages to get foothold on the attacked resource. */ + InitialAccess = "InitialAccess", + /** Persistence is any access, action, or configuration change to a system that gives a threat actor a persistent presence on that system. */ + Persistence = "Persistence", + /** Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. */ + PrivilegeEscalation = "PrivilegeEscalation", + /** Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. */ + DefenseEvasion = "DefenseEvasion", + /** Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. */ + CredentialAccess = "CredentialAccess", + /** Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. */ + Discovery = "Discovery", + /** Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. */ + LateralMovement = "LateralMovement", + /** The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. */ + Execution = "Execution", + /** Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. */ + Collection = "Collection", + /** Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. */ + Exfiltration = "Exfiltration", + /** The command and control tactic represents how adversaries communicate with systems under their control within a target network. */ + CommandAndControl = "CommandAndControl", + /** Impact events primarily try to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. */ + Impact = "Impact", + /** Probing could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. */ + Probing = "Probing", + /** Exploitation is the stage where an attacker manages to get a foothold on the attacked resource. This stage is relevant for compute hosts and resources such as user accounts, certificates etc. */ + Exploitation = "Exploitation", +} + +/** + * The kill chain related intent behind the alert. For list of supported values, and explanations of Azure Security Center's supported kill chain intents. \ + * {@link KnownIntent} can be used interchangeably with Intent, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown**: Unknown \ + * **PreAttack**: PreAttack could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt, originating from outside the network, to scan the target system and find a way in. Further details on the PreAttack stage can be read in [MITRE Pre-Att&ck matrix](https:\//attack.mitre.org\/matrices\/pre\/). \ + * **InitialAccess**: InitialAccess is the stage where an attacker manages to get foothold on the attacked resource. \ + * **Persistence**: Persistence is any access, action, or configuration change to a system that gives a threat actor a persistent presence on that system. \ + * **PrivilegeEscalation**: Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. \ + * **DefenseEvasion**: Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. \ + * **CredentialAccess**: Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. \ + * **Discovery**: Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. \ + * **LateralMovement**: Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. \ + * **Execution**: The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. \ + * **Collection**: Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. \ + * **Exfiltration**: Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. \ + * **CommandAndControl**: The command and control tactic represents how adversaries communicate with systems under their control within a target network. \ + * **Impact**: Impact events primarily try to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. \ + * **Probing**: Probing could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. \ + * **Exploitation**: Exploitation is the stage where an attacker manages to get a foothold on the attacked resource. This stage is relevant for compute hosts and resources such as user accounts, certificates etc. + */ +export type Intent = string; + +export function resourceIdentifierUnionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return resourceIdentifierUnionDeserializer(item); + }); +} + +/** A resource identifier for an alert which can be used to direct the alert to the right product exposure group (tenant, workspace, subscription etc.). */ +export interface ResourceIdentifier { + /** There can be multiple identifiers of different type per alert, this field specify the identifier type. */ + /** The discriminator possible values: AzureResource, LogAnalytics */ + type: ResourceIdentifierType; +} + +export function resourceIdentifierDeserializer(item: any): ResourceIdentifier { + return { + type: item["type"], + }; +} + +/** Alias for ResourceIdentifierUnion */ +export type ResourceIdentifierUnion = + | AzureResourceIdentifier + | LogAnalyticsIdentifier + | ResourceIdentifier; + +export function resourceIdentifierUnionDeserializer(item: any): ResourceIdentifierUnion { + switch (item["type"]) { + case "AzureResource": + return azureResourceIdentifierDeserializer(item as AzureResourceIdentifier); + + case "LogAnalytics": + return logAnalyticsIdentifierDeserializer(item as LogAnalyticsIdentifier); + + default: + return resourceIdentifierDeserializer(item); + } +} + +/** There can be multiple identifiers of different type per alert, this field specify the identifier type. */ +export enum KnownResourceIdentifierType { + /** AzureResource */ + AzureResource = "AzureResource", + /** LogAnalytics */ + LogAnalytics = "LogAnalytics", +} + +/** + * There can be multiple identifiers of different type per alert, this field specify the identifier type. \ + * {@link KnownResourceIdentifierType} can be used interchangeably with ResourceIdentifierType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AzureResource**: AzureResource \ + * **LogAnalytics**: LogAnalytics + */ +export type ResourceIdentifierType = string; + +/** Azure resource identifier. */ +export interface AzureResourceIdentifier extends ResourceIdentifier { + /** ARM resource identifier for the cloud resource being alerted on */ + readonly azureResourceId?: string; + /** There can be multiple identifiers of different type per alert, this field specify the identifier type. */ + type: "AzureResource"; +} + +export function azureResourceIdentifierDeserializer(item: any): AzureResourceIdentifier { + return { + type: item["type"], + azureResourceId: item["azureResourceId"], + }; +} + +/** Represents a Log Analytics workspace scope identifier. */ +export interface LogAnalyticsIdentifier extends ResourceIdentifier { + /** The LogAnalytics workspace id that stores this alert. */ + readonly workspaceId?: string; + /** The azure subscription id for the LogAnalytics workspace storing this alert. */ + readonly workspaceSubscriptionId?: string; + /** The azure resource group for the LogAnalytics workspace storing this alert */ + readonly workspaceResourceGroup?: string; + /** (optional) The LogAnalytics agent id reporting the event that this alert is based on. */ + readonly agentId?: string; + /** There can be multiple identifiers of different type per alert, this field specify the identifier type. */ + type: "LogAnalytics"; +} + +export function logAnalyticsIdentifierDeserializer(item: any): LogAnalyticsIdentifier { + return { + type: item["type"], + workspaceId: item["workspaceId"], + workspaceSubscriptionId: item["workspaceSubscriptionId"], + workspaceResourceGroup: item["workspaceResourceGroup"], + agentId: item["agentId"], + }; +} + +/** The life cycle status of the alert. */ +export enum KnownAlertStatus { + /** An alert which doesn't specify a value is assigned the status 'Active' */ + Active = "Active", + /** An alert which is in handling state */ + InProgress = "InProgress", + /** Alert closed after handling */ + Resolved = "Resolved", + /** Alert dismissed as false positive */ + Dismissed = "Dismissed", +} + +/** + * The life cycle status of the alert. \ + * {@link KnownAlertStatus} can be used interchangeably with AlertStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Active**: An alert which doesn't specify a value is assigned the status 'Active' \ + * **InProgress**: An alert which is in handling state \ + * **Resolved**: Alert closed after handling \ + * **Dismissed**: Alert dismissed as false positive + */ +export type AlertStatus = string; + +export function alertEntityArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return alertEntityDeserializer(item); + }); +} + +/** Changing set of properties depending on the entity type. */ +export interface AlertEntity { + /** Type of entity */ + readonly type?: string; + /** Additional properties */ + additionalProperties?: Record; +} + +export function alertEntityDeserializer(item: any): AlertEntity { + return { + additionalProperties: serializeRecord(item, ["type"]), + type: item["type"], + }; +} + +/** Changing set of properties depending on the supportingEvidence type. */ +export interface AlertPropertiesSupportingEvidence { + /** Type of the supportingEvidence */ + readonly type?: string; + /** Additional properties */ + additionalProperties?: Record; +} + +export function alertPropertiesSupportingEvidenceDeserializer( + item: any, +): AlertPropertiesSupportingEvidence { + return { + additionalProperties: serializeRecord(item, ["type"]), + type: item["type"], + }; +} + +/** List of security alerts */ +export interface _AlertList { + /** The Alert items on this page */ + value?: Alert[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _alertListDeserializer(item: any): _AlertList { + return { + value: !item["value"] ? item["value"] : alertArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function alertArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return alertDeserializer(item); + }); +} + +/** Alert Simulator request body. */ +export interface AlertSimulatorRequestBody { + /** Alert Simulator request body data. */ + properties?: AlertSimulatorRequestPropertiesUnion; +} + +export function alertSimulatorRequestBodySerializer(item: AlertSimulatorRequestBody): any { + return { + properties: !item["properties"] + ? item["properties"] + : alertSimulatorRequestPropertiesUnionSerializer(item["properties"]), + }; +} + +/** Describes properties of an alert simulation request */ +export interface AlertSimulatorRequestProperties { + /** The kind of alert simulation. */ + /** The discriminator possible values: Bundles */ + kind: Kind; + /** Additional properties */ + additionalProperties?: Record; +} + +export function alertSimulatorRequestPropertiesSerializer( + item: AlertSimulatorRequestProperties, +): any { + return { ...serializeRecord(item.additionalProperties ?? {}), kind: item["kind"] }; +} + +/** Alias for AlertSimulatorRequestPropertiesUnion */ +export type AlertSimulatorRequestPropertiesUnion = + | AlertSimulatorBundlesRequestProperties + | AlertSimulatorRequestProperties; + +export function alertSimulatorRequestPropertiesUnionSerializer( + item: AlertSimulatorRequestPropertiesUnion, +): any { + switch (item.kind) { + case "Bundles": + return alertSimulatorBundlesRequestPropertiesSerializer( + item as AlertSimulatorBundlesRequestProperties, + ); + + default: + return alertSimulatorRequestPropertiesSerializer(item); + } +} + +/** The kind of alert simulation. */ +export enum KnownKind { + /** Simulate alerts according to bundles */ + Bundles = "Bundles", +} + +/** + * The kind of alert simulation. \ + * {@link KnownKind} can be used interchangeably with Kind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Bundles**: Simulate alerts according to bundles + */ +export type Kind = string; + +/** Simulate alerts according to this bundles. */ +export interface AlertSimulatorBundlesRequestProperties extends AlertSimulatorRequestProperties { + /** Bundles list. */ + bundles?: BundleType[]; + /** The kind of alert simulation. */ + kind: "Bundles"; +} + +export function alertSimulatorBundlesRequestPropertiesSerializer( + item: AlertSimulatorBundlesRequestProperties, +): any { + return { + ...serializeRecord(item.additionalProperties ?? {}), + kind: item["kind"], + bundles: !item["bundles"] + ? item["bundles"] + : item["bundles"].map((p: any) => { + return p; + }), + }; +} + +/** Alert Simulator supported bundles. */ +export enum KnownBundleType { + /** AppServices */ + AppServices = "AppServices", + /** DNS */ + DNS = "DNS", + /** KeyVaults */ + KeyVaults = "KeyVaults", + /** KubernetesService */ + KubernetesService = "KubernetesService", + /** ResourceManager */ + ResourceManager = "ResourceManager", + /** SqlServers */ + SqlServers = "SqlServers", + /** StorageAccounts */ + StorageAccounts = "StorageAccounts", + /** VirtualMachines */ + VirtualMachines = "VirtualMachines", + /** CosmosDbs */ + CosmosDbs = "CosmosDbs", +} + +/** + * Alert Simulator supported bundles. \ + * {@link KnownBundleType} can be used interchangeably with BundleType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AppServices**: AppServices \ + * **DNS**: DNS \ + * **KeyVaults**: KeyVaults \ + * **KubernetesService**: KubernetesService \ + * **ResourceManager**: ResourceManager \ + * **SqlServers**: SqlServers \ + * **StorageAccounts**: StorageAccounts \ + * **VirtualMachines**: VirtualMachines \ + * **CosmosDbs**: CosmosDbs + */ +export type BundleType = string; + +export function _alertPropertiesDeserializer(item: any) { + return { + version: item["version"], + alertType: item["alertType"], + systemAlertId: item["systemAlertId"], + productComponentName: item["productComponentName"], + alertDisplayName: item["alertDisplayName"], + description: item["description"], + severity: item["severity"], + intent: item["intent"], + startTimeUtc: !item["startTimeUtc"] ? item["startTimeUtc"] : new Date(item["startTimeUtc"]), + endTimeUtc: !item["endTimeUtc"] ? item["endTimeUtc"] : new Date(item["endTimeUtc"]), + resourceIdentifiers: !item["resourceIdentifiers"] + ? item["resourceIdentifiers"] + : resourceIdentifierUnionArrayDeserializer(item["resourceIdentifiers"]), + remediationSteps: !item["remediationSteps"] + ? item["remediationSteps"] + : item["remediationSteps"].map((p: any) => { + return p; + }), + vendorName: item["vendorName"], + status: item["status"], + extendedLinks: !item["extendedLinks"] + ? item["extendedLinks"] + : item["extendedLinks"].map((p: any) => { + return Object.fromEntries(Object.entries(p).map(([k1, p1]: [string, any]) => [k1, p1])); + }), + alertUri: item["alertUri"], + timeGeneratedUtc: !item["timeGeneratedUtc"] + ? item["timeGeneratedUtc"] + : new Date(item["timeGeneratedUtc"]), + productName: item["productName"], + processingEndTimeUtc: !item["processingEndTimeUtc"] + ? item["processingEndTimeUtc"] + : new Date(item["processingEndTimeUtc"]), + entities: !item["entities"] ? item["entities"] : alertEntityArrayDeserializer(item["entities"]), + isIncident: item["isIncident"], + correlationKey: item["correlationKey"], + extendedProperties: !item["extendedProperties"] + ? item["extendedProperties"] + : Object.fromEntries( + Object.entries(item["extendedProperties"]).map(([k, p]: [string, any]) => [k, p]), + ), + compromisedEntity: item["compromisedEntity"], + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + subTechniques: !item["subTechniques"] + ? item["subTechniques"] + : item["subTechniques"].map((p: any) => { + return p; + }), + supportingEvidence: !item["supportingEvidence"] + ? item["supportingEvidence"] + : alertPropertiesSupportingEvidenceDeserializer(item["supportingEvidence"]), + }; +} diff --git a/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/index.ts b/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/index.ts new file mode 100644 index 000000000000..09f25b096939 --- /dev/null +++ b/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/index.ts @@ -0,0 +1,10 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + AlertsSuppressionRule, + AlertsSuppressionRuleProperties, + RuleState, + SuppressionAlertsScope, + ScopeElement, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/models.ts b/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/models.ts new file mode 100644 index 000000000000..01e020800ab5 --- /dev/null +++ b/sdk/security/arm-security/src/models/alertsSuppressionRulesAPI/models.ts @@ -0,0 +1,226 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { serializeRecord } from "../../static-helpers/serialization/serialize-record.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Describes the suppression rule */ +export interface AlertsSuppressionRule extends ProxyResource { + /** Type of the alert to automatically suppress. For all alert types, use '*' */ + alertType?: string; + /** The last time this rule was modified */ + readonly lastModifiedUtc?: Date; + /** Expiration date of the rule, if value is not provided or provided as null there will no expiration at all */ + expirationDateUtc?: Date; + /** The reason for dismissing the alert */ + reason?: string; + /** Possible states of the rule */ + state?: RuleState; + /** Any comment regarding the rule */ + comment?: string; + /** The suppression conditions */ + suppressionAlertsScope?: SuppressionAlertsScope; +} + +export function alertsSuppressionRuleSerializer(item: AlertsSuppressionRule): any { + return { + properties: areAllPropsUndefined(item, [ + "alertType", + "expirationDateUtc", + "reason", + "state", + "comment", + "suppressionAlertsScope", + ]) + ? undefined + : _alertsSuppressionRulePropertiesSerializer(item), + }; +} + +export function alertsSuppressionRuleDeserializer(item: any): AlertsSuppressionRule { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _alertsSuppressionRulePropertiesDeserializer(item["properties"])), + }; +} + +/** describes AlertsSuppressionRule properties */ +export interface AlertsSuppressionRuleProperties { + /** Type of the alert to automatically suppress. For all alert types, use '*' */ + alertType: string; + /** The last time this rule was modified */ + readonly lastModifiedUtc?: Date; + /** Expiration date of the rule, if value is not provided or provided as null there will no expiration at all */ + expirationDateUtc?: Date; + /** The reason for dismissing the alert */ + reason: string; + /** Possible states of the rule */ + state: RuleState; + /** Any comment regarding the rule */ + comment?: string; + /** The suppression conditions */ + suppressionAlertsScope?: SuppressionAlertsScope; +} + +export function alertsSuppressionRulePropertiesSerializer( + item: AlertsSuppressionRuleProperties, +): any { + return { + alertType: item["alertType"], + expirationDateUtc: !item["expirationDateUtc"] + ? item["expirationDateUtc"] + : item["expirationDateUtc"].toISOString(), + reason: item["reason"], + state: item["state"], + comment: item["comment"], + suppressionAlertsScope: !item["suppressionAlertsScope"] + ? item["suppressionAlertsScope"] + : suppressionAlertsScopeSerializer(item["suppressionAlertsScope"]), + }; +} + +export function alertsSuppressionRulePropertiesDeserializer( + item: any, +): AlertsSuppressionRuleProperties { + return { + alertType: item["alertType"], + lastModifiedUtc: !item["lastModifiedUtc"] + ? item["lastModifiedUtc"] + : new Date(item["lastModifiedUtc"]), + expirationDateUtc: !item["expirationDateUtc"] + ? item["expirationDateUtc"] + : new Date(item["expirationDateUtc"]), + reason: item["reason"], + state: item["state"], + comment: item["comment"], + suppressionAlertsScope: !item["suppressionAlertsScope"] + ? item["suppressionAlertsScope"] + : suppressionAlertsScopeDeserializer(item["suppressionAlertsScope"]), + }; +} + +/** Possible states of the rule */ +export type RuleState = "Enabled" | "Disabled" | "Expired"; + +/** model interface SuppressionAlertsScope */ +export interface SuppressionAlertsScope { + /** All the conditions inside need to be true in order to suppress the alert */ + allOf: ScopeElement[]; +} + +export function suppressionAlertsScopeSerializer(item: SuppressionAlertsScope): any { + return { allOf: scopeElementArraySerializer(item["allOf"]) }; +} + +export function suppressionAlertsScopeDeserializer(item: any): SuppressionAlertsScope { + return { + allOf: scopeElementArrayDeserializer(item["allOf"]), + }; +} + +export function scopeElementArraySerializer(result: Array): any[] { + return result.map((item) => { + return scopeElementSerializer(item); + }); +} + +export function scopeElementArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return scopeElementDeserializer(item); + }); +} + +/** A more specific scope used to identify the alerts to suppress. */ +export interface ScopeElement { + /** The alert entity type to suppress by. */ + field?: string; + /** Additional properties */ + additionalProperties?: Record; +} + +export function scopeElementSerializer(item: ScopeElement): any { + return { ...serializeRecord(item.additionalProperties ?? {}), field: item["field"] }; +} + +export function scopeElementDeserializer(item: any): ScopeElement { + return { + additionalProperties: serializeRecord(item, ["field"]), + field: item["field"], + }; +} + +/** Suppression rules list for subscription. */ +export interface _AlertsSuppressionRulesList { + /** The AlertsSuppressionRule items on this page */ + value: AlertsSuppressionRule[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _alertsSuppressionRulesListDeserializer(item: any): _AlertsSuppressionRulesList { + return { + value: alertsSuppressionRuleArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function alertsSuppressionRuleArraySerializer(result: Array): any[] { + return result.map((item) => { + return alertsSuppressionRuleSerializer(item); + }); +} + +export function alertsSuppressionRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return alertsSuppressionRuleDeserializer(item); + }); +} + +export function _alertsSuppressionRulePropertiesSerializer(item: AlertsSuppressionRule): any { + return { + alertType: item["alertType"], + expirationDateUtc: !item["expirationDateUtc"] + ? item["expirationDateUtc"] + : item["expirationDateUtc"].toISOString(), + reason: item["reason"], + state: item["state"], + comment: item["comment"], + suppressionAlertsScope: !item["suppressionAlertsScope"] + ? item["suppressionAlertsScope"] + : suppressionAlertsScopeSerializer(item["suppressionAlertsScope"]), + }; +} + +export function _alertsSuppressionRulePropertiesDeserializer(item: any) { + return { + alertType: item["alertType"], + lastModifiedUtc: !item["lastModifiedUtc"] + ? item["lastModifiedUtc"] + : new Date(item["lastModifiedUtc"]), + expirationDateUtc: !item["expirationDateUtc"] + ? item["expirationDateUtc"] + : new Date(item["expirationDateUtc"]), + reason: item["reason"], + state: item["state"], + comment: item["comment"], + suppressionAlertsScope: !item["suppressionAlertsScope"] + ? item["suppressionAlertsScope"] + : suppressionAlertsScopeDeserializer(item["suppressionAlertsScope"]), + }; +} diff --git a/sdk/security/arm-security/src/models/apiCollectionsAPI/index.ts b/sdk/security/arm-security/src/models/apiCollectionsAPI/index.ts new file mode 100644 index 000000000000..07ed53114e1c --- /dev/null +++ b/sdk/security/arm-security/src/models/apiCollectionsAPI/index.ts @@ -0,0 +1,4 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { ApiCollection, ApiCollectionProperties } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/apiCollectionsAPI/models.ts b/sdk/security/arm-security/src/models/apiCollectionsAPI/models.ts new file mode 100644 index 000000000000..9a6406ec9103 --- /dev/null +++ b/sdk/security/arm-security/src/models/apiCollectionsAPI/models.ts @@ -0,0 +1,126 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProvisioningState } from "../common/models.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** An API collection as represented by Microsoft Defender for APIs. */ +export interface ApiCollection extends ExtensionResource { + /** Gets the provisioning state of the API collection. */ + readonly provisioningState?: ProvisioningState; + /** The display name of the API collection. */ + readonly displayName?: string; + /** The resource Id of the resource from where this API collection was discovered. */ + readonly discoveredVia?: string; + /** The base URI for this API collection. All endpoints of this API collection extend this base URI. */ + readonly baseUrl?: string; + /** The number of API endpoints discovered in this API collection. */ + readonly numberOfApiEndpoints?: number; + /** The number of API endpoints in this API collection that have not received any API traffic in the last 30 days. */ + readonly numberOfInactiveApiEndpoints?: number; + /** The number of API endpoints in this API collection that are unauthenticated. */ + readonly numberOfUnauthenticatedApiEndpoints?: number; + /** The number of API endpoints in this API collection for which API traffic from the internet was observed. */ + readonly numberOfExternalApiEndpoints?: number; + /** The number of API endpoints in this API collection which are exposing sensitive data in their requests and/or responses. */ + readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; + /** The highest priority sensitivity label from Microsoft Purview in this API collection. */ + readonly sensitivityLabel?: string; +} + +export function apiCollectionDeserializer(item: any): ApiCollection { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _apiCollectionPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes the properties of an API collection. */ +export interface ApiCollectionProperties { + /** Gets the provisioning state of the API collection. */ + readonly provisioningState?: ProvisioningState; + /** The display name of the API collection. */ + readonly displayName?: string; + /** The resource Id of the resource from where this API collection was discovered. */ + readonly discoveredVia?: string; + /** The base URI for this API collection. All endpoints of this API collection extend this base URI. */ + readonly baseUrl?: string; + /** The number of API endpoints discovered in this API collection. */ + readonly numberOfApiEndpoints?: number; + /** The number of API endpoints in this API collection that have not received any API traffic in the last 30 days. */ + readonly numberOfInactiveApiEndpoints?: number; + /** The number of API endpoints in this API collection that are unauthenticated. */ + readonly numberOfUnauthenticatedApiEndpoints?: number; + /** The number of API endpoints in this API collection for which API traffic from the internet was observed. */ + readonly numberOfExternalApiEndpoints?: number; + /** The number of API endpoints in this API collection which are exposing sensitive data in their requests and/or responses. */ + readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; + /** The highest priority sensitivity label from Microsoft Purview in this API collection. */ + readonly sensitivityLabel?: string; +} + +export function apiCollectionPropertiesDeserializer(item: any): ApiCollectionProperties { + return { + provisioningState: item["provisioningState"], + displayName: item["displayName"], + discoveredVia: item["discoveredVia"], + baseUrl: item["baseUrl"], + numberOfApiEndpoints: item["numberOfApiEndpoints"], + numberOfInactiveApiEndpoints: item["numberOfInactiveApiEndpoints"], + numberOfUnauthenticatedApiEndpoints: item["numberOfUnauthenticatedApiEndpoints"], + numberOfExternalApiEndpoints: item["numberOfExternalApiEndpoints"], + numberOfApiEndpointsWithSensitiveDataExposed: + item["numberOfApiEndpointsWithSensitiveDataExposed"], + sensitivityLabel: item["sensitivityLabel"], + }; +} + +/** Page of a list of API collections as represented by Microsoft Defender for APIs. */ +export interface _ApiCollectionList { + /** API collections in this page. */ + readonly value?: ApiCollection[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _apiCollectionListDeserializer(item: any): _ApiCollectionList { + return { + value: !item["value"] ? item["value"] : apiCollectionArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function apiCollectionArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return apiCollectionDeserializer(item); + }); +} + +export function _apiCollectionPropertiesDeserializer(item: any) { + return { + provisioningState: item["provisioningState"], + displayName: item["displayName"], + discoveredVia: item["discoveredVia"], + baseUrl: item["baseUrl"], + numberOfApiEndpoints: item["numberOfApiEndpoints"], + numberOfInactiveApiEndpoints: item["numberOfInactiveApiEndpoints"], + numberOfUnauthenticatedApiEndpoints: item["numberOfUnauthenticatedApiEndpoints"], + numberOfExternalApiEndpoints: item["numberOfExternalApiEndpoints"], + numberOfApiEndpointsWithSensitiveDataExposed: + item["numberOfApiEndpointsWithSensitiveDataExposed"], + sensitivityLabel: item["sensitivityLabel"], + }; +} diff --git a/sdk/security/arm-security/src/models/applicationsAPI/index.ts b/sdk/security/arm-security/src/models/applicationsAPI/index.ts new file mode 100644 index 000000000000..4d1d59d1b696 --- /dev/null +++ b/sdk/security/arm-security/src/models/applicationsAPI/index.ts @@ -0,0 +1,9 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + Application, + ApplicationProperties, + ApplicationSourceResourceType, +} from "./models.js"; +export { KnownApplicationSourceResourceType } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/applicationsAPI/models.ts b/sdk/security/arm-security/src/models/applicationsAPI/models.ts new file mode 100644 index 000000000000..eece4e31d041 --- /dev/null +++ b/sdk/security/arm-security/src/models/applicationsAPI/models.ts @@ -0,0 +1,152 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Page of a security applications list */ +export interface _ApplicationsList { + /** Collection of applications in this page */ + readonly value?: Application[]; + /** The URI to fetch the next page */ + readonly nextLink?: string; +} + +export function _applicationsListDeserializer(item: any): _ApplicationsList { + return { + value: !item["value"] ? item["value"] : applicationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function applicationArraySerializer(result: Array): any[] { + return result.map((item) => { + return applicationSerializer(item); + }); +} + +export function applicationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return applicationDeserializer(item); + }); +} + +/** Security Application over a given scope */ +export interface Application extends ProxyResource { + /** display name of the application */ + displayName?: string; + /** description of the application */ + description?: string; + /** The application source, what it affects, e.g. Assessments */ + sourceResourceType?: ApplicationSourceResourceType; + /** The application conditionSets - see examples */ + conditionSets?: any[]; +} + +export function applicationSerializer(item: Application): any { + return { + properties: areAllPropsUndefined(item, [ + "displayName", + "description", + "sourceResourceType", + "conditionSets", + ]) + ? undefined + : _applicationPropertiesSerializer(item), + }; +} + +export function applicationDeserializer(item: any): Application { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _applicationPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of an application */ +export interface ApplicationProperties { + /** display name of the application */ + displayName?: string; + /** description of the application */ + description?: string; + /** The application source, what it affects, e.g. Assessments */ + sourceResourceType: ApplicationSourceResourceType; + /** The application conditionSets - see examples */ + conditionSets: any[]; +} + +export function applicationPropertiesSerializer(item: ApplicationProperties): any { + return { + displayName: item["displayName"], + description: item["description"], + sourceResourceType: item["sourceResourceType"], + conditionSets: item["conditionSets"].map((p: any) => { + return p; + }), + }; +} + +export function applicationPropertiesDeserializer(item: any): ApplicationProperties { + return { + displayName: item["displayName"], + description: item["description"], + sourceResourceType: item["sourceResourceType"], + conditionSets: item["conditionSets"].map((p: any) => { + return p; + }), + }; +} + +/** The application source, what it affects, e.g. Assessments */ +export enum KnownApplicationSourceResourceType { + /** The source of the application is assessments */ + Assessments = "Assessments", +} + +/** + * The application source, what it affects, e.g. Assessments \ + * {@link KnownApplicationSourceResourceType} can be used interchangeably with ApplicationSourceResourceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Assessments**: The source of the application is assessments + */ +export type ApplicationSourceResourceType = string; + +export function _applicationPropertiesSerializer(item: Application): any { + return { + displayName: item["displayName"], + description: item["description"], + sourceResourceType: item["sourceResourceType"], + conditionSets: !item["conditionSets"] + ? item["conditionSets"] + : item["conditionSets"].map((p: any) => { + return p; + }), + }; +} + +export function _applicationPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + description: item["description"], + sourceResourceType: item["sourceResourceType"], + conditionSets: !item["conditionSets"] + ? item["conditionSets"] + : item["conditionSets"].map((p: any) => { + return p; + }), + }; +} diff --git a/sdk/security/arm-security/src/models/assessmentAPI/index.ts b/sdk/security/arm-security/src/models/assessmentAPI/index.ts new file mode 100644 index 000000000000..ca918b1095fb --- /dev/null +++ b/sdk/security/arm-security/src/models/assessmentAPI/index.ts @@ -0,0 +1,49 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + SecurityAssessmentMetadataResponse, + SecurityAssessmentMetadataPropertiesResponse, + SecurityAssessmentMetadataPropertiesResponsePublishDates, + Tactics, + Techniques, + SecurityAssessmentMetadataProperties, + Categories, + UserImpact, + ImplementationEffort, + Threats, + AssessmentType, + SecurityAssessmentMetadataPartnerData, + SecurityAssessmentResponse, + SecurityAssessmentPropertiesResponse, + AssessmentStatusResponse, + AssessmentStatus, + AssessmentStatusCode, + SecurityAssessmentPropertiesBase, + SecurityAssessmentPropertiesBaseRisk, + RiskLevel, + SecurityAssessmentPropertiesBaseRiskPathsItem, + SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem, + SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem, + AzureResourceDetails, + OnPremiseResourceDetails, + OnPremiseResourceDetailsUnion, + OnPremiseSqlResourceDetails, + AssessmentLinks, + SecurityAssessmentPartnerData, + SecurityAssessment, + SecurityAssessmentProperties, + ExpandEnum, +} from "./models.js"; +export { + KnownTactics, + KnownTechniques, + KnownCategories, + KnownUserImpact, + KnownImplementationEffort, + KnownThreats, + KnownAssessmentType, + KnownAssessmentStatusCode, + KnownRiskLevel, + KnownExpandEnum, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/assessmentAPI/models.ts b/sdk/security/arm-security/src/models/assessmentAPI/models.ts new file mode 100644 index 000000000000..6c10d32b485f --- /dev/null +++ b/sdk/security/arm-security/src/models/assessmentAPI/models.ts @@ -0,0 +1,1669 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { + Severity, + ResourceDetails, + resourceDetailsUnionSerializer, + resourceDetailsUnionDeserializer, + ResourceDetailsUnion, +} from "../common/models.js"; +import { ProxyResource, Resource, systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Security assessment metadata response */ +export interface SecurityAssessmentMetadataResponse extends ProxyResource { + /** User friendly display name of the assessment */ + displayName?: string; + /** Azure resource ID of the policy definition that turns this assessment calculation on */ + 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; + categories?: Categories[]; + /** The severity level of the assessment */ + severity?: Severity; + /** The user impact of the assessment */ + userImpact?: UserImpact; + /** The implementation effort required to remediate this assessment */ + 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 */ + assessmentType?: AssessmentType; + /** Describes the partner that created the assessment */ + partnerData?: SecurityAssessmentMetadataPartnerData; + publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; + plannedDeprecationDate?: string; + tactics?: Tactics[]; + techniques?: Techniques[]; +} + +export function securityAssessmentMetadataResponseSerializer( + item: SecurityAssessmentMetadataResponse, +): any { + return { + properties: areAllPropsUndefined(item, [ + "displayName", + "description", + "remediationDescription", + "categories", + "severity", + "userImpact", + "implementationEffort", + "threats", + "preview", + "assessmentType", + "partnerData", + "publishDates", + "plannedDeprecationDate", + "tactics", + "techniques", + ]) + ? undefined + : _securityAssessmentMetadataResponsePropertiesSerializer(item), + }; +} + +export function securityAssessmentMetadataResponseDeserializer( + item: any, +): SecurityAssessmentMetadataResponse { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securityAssessmentMetadataResponsePropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of an assessment metadata response. */ +export interface SecurityAssessmentMetadataPropertiesResponse extends SecurityAssessmentMetadataProperties { + publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; + plannedDeprecationDate?: string; + tactics?: Tactics[]; + techniques?: Techniques[]; +} + +export function securityAssessmentMetadataPropertiesResponseSerializer( + item: SecurityAssessmentMetadataPropertiesResponse, +): any { + return { + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataSerializer(item["partnerData"]), + publishDates: !item["publishDates"] + ? item["publishDates"] + : securityAssessmentMetadataPropertiesResponsePublishDatesSerializer(item["publishDates"]), + plannedDeprecationDate: item["plannedDeprecationDate"], + tactics: !item["tactics"] + ? item["tactics"] + : item["tactics"].map((p: any) => { + return p; + }), + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + }; +} + +export function securityAssessmentMetadataPropertiesResponseDeserializer( + item: any, +): SecurityAssessmentMetadataPropertiesResponse { + return { + displayName: item["displayName"], + policyDefinitionId: item["policyDefinitionId"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataDeserializer(item["partnerData"]), + publishDates: !item["publishDates"] + ? item["publishDates"] + : securityAssessmentMetadataPropertiesResponsePublishDatesDeserializer(item["publishDates"]), + plannedDeprecationDate: item["plannedDeprecationDate"], + tactics: !item["tactics"] + ? item["tactics"] + : item["tactics"].map((p: any) => { + return p; + }), + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + }; +} + +/** model interface SecurityAssessmentMetadataPropertiesResponsePublishDates */ +export interface SecurityAssessmentMetadataPropertiesResponsePublishDates { + ga?: string; + public: string; +} + +export function securityAssessmentMetadataPropertiesResponsePublishDatesSerializer( + item: SecurityAssessmentMetadataPropertiesResponsePublishDates, +): any { + return { GA: item["ga"], public: item["public"] }; +} + +export function securityAssessmentMetadataPropertiesResponsePublishDatesDeserializer( + item: any, +): SecurityAssessmentMetadataPropertiesResponsePublishDates { + return { + ga: item["GA"], + public: item["public"], + }; +} + +/** Tactic of the assessment */ +export enum KnownTactics { + /** Reconnaissance */ + Reconnaissance = "Reconnaissance", + /** Resource Development */ + ResourceDevelopment = "Resource Development", + /** Initial Access */ + InitialAccess = "Initial Access", + /** Execution */ + Execution = "Execution", + /** Persistence */ + Persistence = "Persistence", + /** Privilege Escalation */ + PrivilegeEscalation = "Privilege Escalation", + /** Defense Evasion */ + DefenseEvasion = "Defense Evasion", + /** Credential Access */ + CredentialAccess = "Credential Access", + /** Discovery */ + Discovery = "Discovery", + /** Lateral Movement */ + LateralMovement = "Lateral Movement", + /** Collection */ + Collection = "Collection", + /** Command and Control */ + CommandAndControl = "Command and Control", + /** Exfiltration */ + Exfiltration = "Exfiltration", + /** Impact */ + Impact = "Impact", +} + +/** + * Tactic of the assessment \ + * {@link KnownTactics} can be used interchangeably with Tactics, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Reconnaissance**: Reconnaissance \ + * **Resource Development**: Resource Development \ + * **Initial Access**: Initial Access \ + * **Execution**: Execution \ + * **Persistence**: Persistence \ + * **Privilege Escalation**: Privilege Escalation \ + * **Defense Evasion**: Defense Evasion \ + * **Credential Access**: Credential Access \ + * **Discovery**: Discovery \ + * **Lateral Movement**: Lateral Movement \ + * **Collection**: Collection \ + * **Command and Control**: Command and Control \ + * **Exfiltration**: Exfiltration \ + * **Impact**: Impact + */ +export type Tactics = string; + +/** Techniques of the assessment */ +export enum KnownTechniques { + /** Abuse Elevation Control Mechanism */ + AbuseElevationControlMechanism = "Abuse Elevation Control Mechanism", + /** Access Token Manipulation */ + AccessTokenManipulation = "Access Token Manipulation", + /** Account Discovery */ + AccountDiscovery = "Account Discovery", + /** Account Manipulation */ + AccountManipulation = "Account Manipulation", + /** Active Scanning */ + ActiveScanning = "Active Scanning", + /** Application Layer Protocol */ + ApplicationLayerProtocol = "Application Layer Protocol", + /** Audio Capture */ + AudioCapture = "Audio Capture", + /** Boot or Logon Autostart Execution */ + BootOrLogonAutostartExecution = "Boot or Logon Autostart Execution", + /** Boot or Logon Initialization Scripts */ + BootOrLogonInitializationScripts = "Boot or Logon Initialization Scripts", + /** Brute Force */ + BruteForce = "Brute Force", + /** Cloud Infrastructure Discovery */ + CloudInfrastructureDiscovery = "Cloud Infrastructure Discovery", + /** Cloud Service Dashboard */ + CloudServiceDashboard = "Cloud Service Dashboard", + /** Cloud Service Discovery */ + CloudServiceDiscovery = "Cloud Service Discovery", + /** Command and Scripting Interpreter */ + CommandAndScriptingInterpreter = "Command and Scripting Interpreter", + /** Compromise Client Software Binary */ + CompromiseClientSoftwareBinary = "Compromise Client Software Binary", + /** Compromise Infrastructure */ + CompromiseInfrastructure = "Compromise Infrastructure", + /** Container and Resource Discovery */ + ContainerAndResourceDiscovery = "Container and Resource Discovery", + /** Create Account */ + CreateAccount = "Create Account", + /** Create or Modify System Process */ + CreateOrModifySystemProcess = "Create or Modify System Process", + /** Credentials from Password Stores */ + CredentialsFromPasswordStores = "Credentials from Password Stores", + /** Data Destruction */ + DataDestruction = "Data Destruction", + /** Data Encrypted for Impact */ + DataEncryptedForImpact = "Data Encrypted for Impact", + /** Data from Cloud Storage Object */ + DataFromCloudStorageObject = "Data from Cloud Storage Object", + /** Data from Configuration Repository */ + DataFromConfigurationRepository = "Data from Configuration Repository", + /** Data from Information Repositories */ + DataFromInformationRepositories = "Data from Information Repositories", + /** Data from Local System */ + DataFromLocalSystem = "Data from Local System", + /** Data Manipulation */ + DataManipulation = "Data Manipulation", + /** Data Staged */ + DataStaged = "Data Staged", + /** Defacement */ + Defacement = "Defacement", + /** Deobfuscate/Decode Files or Information */ + DeobfuscateDecodeFilesOrInformation = "Deobfuscate/Decode Files or Information", + /** Disk Wipe */ + DiskWipe = "Disk Wipe", + /** Domain Trust Discovery */ + DomainTrustDiscovery = "Domain Trust Discovery", + /** Drive-by Compromise */ + DriveByCompromise = "Drive-by Compromise", + /** Dynamic Resolution */ + DynamicResolution = "Dynamic Resolution", + /** Endpoint Denial of Service */ + EndpointDenialOfService = "Endpoint Denial of Service", + /** Event Triggered Execution */ + EventTriggeredExecution = "Event Triggered Execution", + /** Exfiltration Over Alternative Protocol */ + ExfiltrationOverAlternativeProtocol = "Exfiltration Over Alternative Protocol", + /** Exploit Public-Facing Application */ + ExploitPublicFacingApplication = "Exploit Public-Facing Application", + /** Exploitation for Client Execution */ + ExploitationForClientExecution = "Exploitation for Client Execution", + /** Exploitation for Credential Access */ + ExploitationForCredentialAccess = "Exploitation for Credential Access", + /** Exploitation for Defense Evasion */ + ExploitationForDefenseEvasion = "Exploitation for Defense Evasion", + /** Exploitation for Privilege Escalation */ + ExploitationForPrivilegeEscalation = "Exploitation for Privilege Escalation", + /** Exploitation of Remote Services */ + ExploitationOfRemoteServices = "Exploitation of Remote Services", + /** External Remote Services */ + ExternalRemoteServices = "External Remote Services", + /** Fallback Channels */ + FallbackChannels = "Fallback Channels", + /** File and Directory Discovery */ + FileAndDirectoryDiscovery = "File and Directory Discovery", + /** Gather Victim Network Information */ + GatherVictimNetworkInformation = "Gather Victim Network Information", + /** Hide Artifacts */ + HideArtifacts = "Hide Artifacts", + /** Hijack Execution Flow */ + HijackExecutionFlow = "Hijack Execution Flow", + /** Impair Defenses */ + ImpairDefenses = "Impair Defenses", + /** Implant Container Image */ + ImplantContainerImage = "Implant Container Image", + /** Indicator Removal on Host */ + IndicatorRemovalOnHost = "Indicator Removal on Host", + /** Indirect Command Execution */ + IndirectCommandExecution = "Indirect Command Execution", + /** Ingress Tool Transfer */ + IngressToolTransfer = "Ingress Tool Transfer", + /** Input Capture */ + InputCapture = "Input Capture", + /** Inter-Process Communication */ + InterProcessCommunication = "Inter-Process Communication", + /** Lateral Tool Transfer */ + LateralToolTransfer = "Lateral Tool Transfer", + /** Man-in-the-Middle */ + ManInTheMiddle = "Man-in-the-Middle", + /** Masquerading */ + Masquerading = "Masquerading", + /** Modify Authentication Process */ + ModifyAuthenticationProcess = "Modify Authentication Process", + /** Modify Registry */ + ModifyRegistry = "Modify Registry", + /** Network Denial of Service */ + NetworkDenialOfService = "Network Denial of Service", + /** Network Service Scanning */ + NetworkServiceScanning = "Network Service Scanning", + /** Network Sniffing */ + NetworkSniffing = "Network Sniffing", + /** Non-Application Layer Protocol */ + NonApplicationLayerProtocol = "Non-Application Layer Protocol", + /** Non-Standard Port */ + NonStandardPort = "Non-Standard Port", + /** Obtain Capabilities */ + ObtainCapabilities = "Obtain Capabilities", + /** Obfuscated Files or Information */ + ObfuscatedFilesOrInformation = "Obfuscated Files or Information", + /** Office Application Startup */ + OfficeApplicationStartup = "Office Application Startup", + /** OS Credential Dumping */ + OSCredentialDumping = "OS Credential Dumping", + /** Permission Groups Discovery */ + PermissionGroupsDiscovery = "Permission Groups Discovery", + /** Phishing */ + Phishing = "Phishing", + /** Pre-OS Boot */ + PreOSBoot = "Pre-OS Boot", + /** Process Discovery */ + ProcessDiscovery = "Process Discovery", + /** Process Injection */ + ProcessInjection = "Process Injection", + /** Protocol Tunneling */ + ProtocolTunneling = "Protocol Tunneling", + /** Proxy */ + Proxy = "Proxy", + /** Query Registry */ + QueryRegistry = "Query Registry", + /** Remote Access Software */ + RemoteAccessSoftware = "Remote Access Software", + /** Remote Service Session Hijacking */ + RemoteServiceSessionHijacking = "Remote Service Session Hijacking", + /** Remote Services */ + RemoteServices = "Remote Services", + /** Remote System Discovery */ + RemoteSystemDiscovery = "Remote System Discovery", + /** Resource Hijacking */ + ResourceHijacking = "Resource Hijacking", + /** Scheduled Task/Job */ + ScheduledTaskJob = "Scheduled Task/Job", + /** Screen Capture */ + ScreenCapture = "Screen Capture", + /** Search Victim-Owned Websites */ + SearchVictimOwnedWebsites = "Search Victim-Owned Websites", + /** Server Software Component */ + ServerSoftwareComponent = "Server Software Component", + /** Service Stop */ + ServiceStop = "Service Stop", + /** Signed Binary Proxy Execution */ + SignedBinaryProxyExecution = "Signed Binary Proxy Execution", + /** Software Deployment Tools */ + SoftwareDeploymentTools = "Software Deployment Tools", + /** SQL Stored Procedures */ + SQLStoredProcedures = "SQL Stored Procedures", + /** Steal or Forge Kerberos Tickets */ + StealOrForgeKerberosTickets = "Steal or Forge Kerberos Tickets", + /** Subvert Trust Controls */ + SubvertTrustControls = "Subvert Trust Controls", + /** Supply Chain Compromise */ + SupplyChainCompromise = "Supply Chain Compromise", + /** System Information Discovery */ + SystemInformationDiscovery = "System Information Discovery", + /** Taint Shared Content */ + TaintSharedContent = "Taint Shared Content", + /** Traffic Signaling */ + TrafficSignaling = "Traffic Signaling", + /** Transfer Data to Cloud Account */ + TransferDataToCloudAccount = "Transfer Data to Cloud Account", + /** Trusted Relationship */ + TrustedRelationship = "Trusted Relationship", + /** Unsecured Credentials */ + UnsecuredCredentials = "Unsecured Credentials", + /** User Execution */ + UserExecution = "User Execution", + /** Valid Accounts */ + ValidAccounts = "Valid Accounts", + /** Windows Management Instrumentation */ + WindowsManagementInstrumentation = "Windows Management Instrumentation", + /** File and Directory Permissions Modification */ + FileAndDirectoryPermissionsModification = "File and Directory Permissions Modification", +} + +/** + * Techniques of the assessment \ + * {@link KnownTechniques} can be used interchangeably with Techniques, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Abuse Elevation Control Mechanism**: Abuse Elevation Control Mechanism \ + * **Access Token Manipulation**: Access Token Manipulation \ + * **Account Discovery**: Account Discovery \ + * **Account Manipulation**: Account Manipulation \ + * **Active Scanning**: Active Scanning \ + * **Application Layer Protocol**: Application Layer Protocol \ + * **Audio Capture**: Audio Capture \ + * **Boot or Logon Autostart Execution**: Boot or Logon Autostart Execution \ + * **Boot or Logon Initialization Scripts**: Boot or Logon Initialization Scripts \ + * **Brute Force**: Brute Force \ + * **Cloud Infrastructure Discovery**: Cloud Infrastructure Discovery \ + * **Cloud Service Dashboard**: Cloud Service Dashboard \ + * **Cloud Service Discovery**: Cloud Service Discovery \ + * **Command and Scripting Interpreter**: Command and Scripting Interpreter \ + * **Compromise Client Software Binary**: Compromise Client Software Binary \ + * **Compromise Infrastructure**: Compromise Infrastructure \ + * **Container and Resource Discovery**: Container and Resource Discovery \ + * **Create Account**: Create Account \ + * **Create or Modify System Process**: Create or Modify System Process \ + * **Credentials from Password Stores**: Credentials from Password Stores \ + * **Data Destruction**: Data Destruction \ + * **Data Encrypted for Impact**: Data Encrypted for Impact \ + * **Data from Cloud Storage Object**: Data from Cloud Storage Object \ + * **Data from Configuration Repository**: Data from Configuration Repository \ + * **Data from Information Repositories**: Data from Information Repositories \ + * **Data from Local System**: Data from Local System \ + * **Data Manipulation**: Data Manipulation \ + * **Data Staged**: Data Staged \ + * **Defacement**: Defacement \ + * **Deobfuscate\/Decode Files or Information**: Deobfuscate\/Decode Files or Information \ + * **Disk Wipe**: Disk Wipe \ + * **Domain Trust Discovery**: Domain Trust Discovery \ + * **Drive-by Compromise**: Drive-by Compromise \ + * **Dynamic Resolution**: Dynamic Resolution \ + * **Endpoint Denial of Service**: Endpoint Denial of Service \ + * **Event Triggered Execution**: Event Triggered Execution \ + * **Exfiltration Over Alternative Protocol**: Exfiltration Over Alternative Protocol \ + * **Exploit Public-Facing Application**: Exploit Public-Facing Application \ + * **Exploitation for Client Execution**: Exploitation for Client Execution \ + * **Exploitation for Credential Access**: Exploitation for Credential Access \ + * **Exploitation for Defense Evasion**: Exploitation for Defense Evasion \ + * **Exploitation for Privilege Escalation**: Exploitation for Privilege Escalation \ + * **Exploitation of Remote Services**: Exploitation of Remote Services \ + * **External Remote Services**: External Remote Services \ + * **Fallback Channels**: Fallback Channels \ + * **File and Directory Discovery**: File and Directory Discovery \ + * **Gather Victim Network Information**: Gather Victim Network Information \ + * **Hide Artifacts**: Hide Artifacts \ + * **Hijack Execution Flow**: Hijack Execution Flow \ + * **Impair Defenses**: Impair Defenses \ + * **Implant Container Image**: Implant Container Image \ + * **Indicator Removal on Host**: Indicator Removal on Host \ + * **Indirect Command Execution**: Indirect Command Execution \ + * **Ingress Tool Transfer**: Ingress Tool Transfer \ + * **Input Capture**: Input Capture \ + * **Inter-Process Communication**: Inter-Process Communication \ + * **Lateral Tool Transfer**: Lateral Tool Transfer \ + * **Man-in-the-Middle**: Man-in-the-Middle \ + * **Masquerading**: Masquerading \ + * **Modify Authentication Process**: Modify Authentication Process \ + * **Modify Registry**: Modify Registry \ + * **Network Denial of Service**: Network Denial of Service \ + * **Network Service Scanning**: Network Service Scanning \ + * **Network Sniffing**: Network Sniffing \ + * **Non-Application Layer Protocol**: Non-Application Layer Protocol \ + * **Non-Standard Port**: Non-Standard Port \ + * **Obtain Capabilities**: Obtain Capabilities \ + * **Obfuscated Files or Information**: Obfuscated Files or Information \ + * **Office Application Startup**: Office Application Startup \ + * **OS Credential Dumping**: OS Credential Dumping \ + * **Permission Groups Discovery**: Permission Groups Discovery \ + * **Phishing**: Phishing \ + * **Pre-OS Boot**: Pre-OS Boot \ + * **Process Discovery**: Process Discovery \ + * **Process Injection**: Process Injection \ + * **Protocol Tunneling**: Protocol Tunneling \ + * **Proxy**: Proxy \ + * **Query Registry**: Query Registry \ + * **Remote Access Software**: Remote Access Software \ + * **Remote Service Session Hijacking**: Remote Service Session Hijacking \ + * **Remote Services**: Remote Services \ + * **Remote System Discovery**: Remote System Discovery \ + * **Resource Hijacking**: Resource Hijacking \ + * **Scheduled Task\/Job**: Scheduled Task\/Job \ + * **Screen Capture**: Screen Capture \ + * **Search Victim-Owned Websites**: Search Victim-Owned Websites \ + * **Server Software Component**: Server Software Component \ + * **Service Stop**: Service Stop \ + * **Signed Binary Proxy Execution**: Signed Binary Proxy Execution \ + * **Software Deployment Tools**: Software Deployment Tools \ + * **SQL Stored Procedures**: SQL Stored Procedures \ + * **Steal or Forge Kerberos Tickets**: Steal or Forge Kerberos Tickets \ + * **Subvert Trust Controls**: Subvert Trust Controls \ + * **Supply Chain Compromise**: Supply Chain Compromise \ + * **System Information Discovery**: System Information Discovery \ + * **Taint Shared Content**: Taint Shared Content \ + * **Traffic Signaling**: Traffic Signaling \ + * **Transfer Data to Cloud Account**: Transfer Data to Cloud Account \ + * **Trusted Relationship**: Trusted Relationship \ + * **Unsecured Credentials**: Unsecured Credentials \ + * **User Execution**: User Execution \ + * **Valid Accounts**: Valid Accounts \ + * **Windows Management Instrumentation**: Windows Management Instrumentation \ + * **File and Directory Permissions Modification**: File and Directory Permissions Modification + */ +export type Techniques = 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 */ + 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; + categories?: Categories[]; + /** The severity level of the assessment */ + severity: Severity; + /** The user impact of the assessment */ + userImpact?: UserImpact; + /** The implementation effort required to remediate this assessment */ + 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 */ + assessmentType: AssessmentType; + /** Describes the partner that created the assessment */ + partnerData?: SecurityAssessmentMetadataPartnerData; +} + +export function securityAssessmentMetadataPropertiesSerializer( + item: SecurityAssessmentMetadataProperties, +): any { + return { + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataSerializer(item["partnerData"]), + }; +} + +export function securityAssessmentMetadataPropertiesDeserializer( + item: any, +): SecurityAssessmentMetadataProperties { + return { + displayName: item["displayName"], + policyDefinitionId: item["policyDefinitionId"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataDeserializer(item["partnerData"]), + }; +} + +/** The categories of resource that is at risk when the assessment is unhealthy */ +export enum KnownCategories { + /** Compute */ + Compute = "Compute", + /** Networking */ + Networking = "Networking", + /** Data */ + Data = "Data", + /** IdentityAndAccess */ + IdentityAndAccess = "IdentityAndAccess", + /** IoT */ + IoT = "IoT", + /** Container */ + Container = "Container", + /** AppServices */ + AppServices = "AppServices", +} + +/** + * The categories of resource that is at risk when the assessment is unhealthy \ + * {@link KnownCategories} can be used interchangeably with Categories, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Compute**: Compute \ + * **Networking**: Networking \ + * **Data**: Data \ + * **IdentityAndAccess**: IdentityAndAccess \ + * **IoT**: IoT \ + * **Container**: Container \ + * **AppServices**: AppServices + */ +export type Categories = string; + +/** The user impact of the assessment */ +export enum KnownUserImpact { + /** Low */ + Low = "Low", + /** Moderate */ + Moderate = "Moderate", + /** High */ + High = "High", +} + +/** + * The user impact of the assessment \ + * {@link KnownUserImpact} can be used interchangeably with UserImpact, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Low**: Low \ + * **Moderate**: Moderate \ + * **High**: High + */ +export type UserImpact = string; + +/** The implementation effort required to remediate this assessment */ +export enum KnownImplementationEffort { + /** Low */ + Low = "Low", + /** Moderate */ + Moderate = "Moderate", + /** High */ + High = "High", +} + +/** + * The implementation effort required to remediate this assessment \ + * {@link KnownImplementationEffort} can be used interchangeably with ImplementationEffort, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Low**: Low \ + * **Moderate**: Moderate \ + * **High**: High + */ +export type ImplementationEffort = string; + +/** Threats impact of the assessment */ +export enum KnownThreats { + /** accountBreach */ + AccountBreach = "accountBreach", + /** dataExfiltration */ + DataExfiltration = "dataExfiltration", + /** dataSpillage */ + DataSpillage = "dataSpillage", + /** maliciousInsider */ + MaliciousInsider = "maliciousInsider", + /** elevationOfPrivilege */ + ElevationOfPrivilege = "elevationOfPrivilege", + /** threatResistance */ + ThreatResistance = "threatResistance", + /** missingCoverage */ + MissingCoverage = "missingCoverage", + /** denialOfService */ + DenialOfService = "denialOfService", +} + +/** + * Threats impact of the assessment \ + * {@link KnownThreats} can be used interchangeably with Threats, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **accountBreach**: accountBreach \ + * **dataExfiltration**: dataExfiltration \ + * **dataSpillage**: dataSpillage \ + * **maliciousInsider**: maliciousInsider \ + * **elevationOfPrivilege**: elevationOfPrivilege \ + * **threatResistance**: threatResistance \ + * **missingCoverage**: missingCoverage \ + * **denialOfService**: denialOfService + */ +export type Threats = string; + +/** BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition */ +export enum KnownAssessmentType { + /** Unknown assessment type */ + Unknown = "Unknown", + /** Microsoft Defender for Cloud managed assessments */ + BuiltIn = "BuiltIn", + /** User defined custom assessments */ + Custom = "Custom", + /** User defined policies that are automatically ingested from Azure Policy to Microsoft Defender for Cloud */ + CustomPolicy = "CustomPolicy", + /** User assessments pushed directly by the user or other third party to Microsoft Defender for Cloud */ + CustomerManaged = "CustomerManaged", + /** Microsoft Defender for Cloud managed policies */ + BuiltInPolicy = "BuiltInPolicy", + /** Third party assessments that are verified by Microsoft Defender for Cloud */ + VerifiedPartner = "VerifiedPartner", + /** Microsoft Defender for Cloud managed policies that are manually created by the user */ + ManualBuiltInPolicy = "ManualBuiltInPolicy", + /** Microsoft Defender for Cloud managed assessments that are manually created by the user */ + ManualBuiltIn = "ManualBuiltIn", + /** User defined policies that are manually created by the user */ + ManualCustomPolicy = "ManualCustomPolicy", + /** Microsoft Defender for Cloud managed assessments that are dynamically created by the system */ + DynamicBuiltIn = "DynamicBuiltIn", +} + +/** + * BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition \ + * {@link KnownAssessmentType} can be used interchangeably with AssessmentType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Unknown**: Unknown assessment type \ + * **BuiltIn**: Microsoft Defender for Cloud managed assessments \ + * **Custom**: User defined custom assessments \ + * **CustomPolicy**: User defined policies that are automatically ingested from Azure Policy to Microsoft Defender for Cloud \ + * **CustomerManaged**: User assessments pushed directly by the user or other third party to Microsoft Defender for Cloud \ + * **BuiltInPolicy**: Microsoft Defender for Cloud managed policies \ + * **VerifiedPartner**: Third party assessments that are verified by Microsoft Defender for Cloud \ + * **ManualBuiltInPolicy**: Microsoft Defender for Cloud managed policies that are manually created by the user \ + * **ManualBuiltIn**: Microsoft Defender for Cloud managed assessments that are manually created by the user \ + * **ManualCustomPolicy**: User defined policies that are manually created by the user \ + * **DynamicBuiltIn**: Microsoft Defender for Cloud managed assessments that are dynamically created by the system + */ +export type AssessmentType = 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; +} + +export function securityAssessmentMetadataPartnerDataSerializer( + item: SecurityAssessmentMetadataPartnerData, +): any { + return { + partnerName: item["partnerName"], + productName: item["productName"], + secret: item["secret"], + }; +} + +export function securityAssessmentMetadataPartnerDataDeserializer( + item: any, +): SecurityAssessmentMetadataPartnerData { + return { + partnerName: item["partnerName"], + productName: item["productName"], + secret: item["secret"], + }; +} + +/** List of security assessment metadata */ +export interface _SecurityAssessmentMetadataResponseList { + readonly value?: SecurityAssessmentMetadataResponse[]; + /** The URI to fetch the next page. */ + nextLink?: string; +} + +export function _securityAssessmentMetadataResponseListDeserializer( + item: any, +): _SecurityAssessmentMetadataResponseList { + return { + value: !item["value"] + ? item["value"] + : securityAssessmentMetadataResponseArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securityAssessmentMetadataResponseArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentMetadataResponseSerializer(item); + }); +} + +export function securityAssessmentMetadataResponseArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentMetadataResponseDeserializer(item); + }); +} + +/** Security assessment on a resource - response format */ +export interface SecurityAssessmentResponse extends ExtensionResource { + /** External model of risk result */ + risk?: SecurityAssessmentPropertiesBaseRisk; + /** Details of the resource that was assessed */ + resourceDetails?: ResourceDetailsUnion; + /** User friendly display name of the assessment */ + readonly displayName?: string; + /** Additional data regarding the assessment */ + additionalData?: Record; + /** Links relevant to the assessment */ + readonly links?: AssessmentLinks; + /** Describes properties of an assessment metadata. */ + metadata?: SecurityAssessmentMetadataProperties; + /** Data regarding 3rd party partner integration */ + partnersData?: SecurityAssessmentPartnerData; + /** The result of the assessment */ + status?: AssessmentStatusResponse; +} + +export function securityAssessmentResponseDeserializer(item: any): SecurityAssessmentResponse { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securityAssessmentResponsePropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of an assessment. */ +export interface SecurityAssessmentPropertiesResponse extends SecurityAssessmentPropertiesBase { + /** The result of the assessment */ + status: AssessmentStatusResponse; +} + +export function securityAssessmentPropertiesResponseDeserializer( + item: any, +): SecurityAssessmentPropertiesResponse { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskDeserializer(item["risk"]), + resourceDetails: resourceDetailsUnionDeserializer(item["resourceDetails"]), + displayName: item["displayName"], + additionalData: !item["additionalData"] + ? item["additionalData"] + : Object.fromEntries( + Object.entries(item["additionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + links: !item["links"] ? item["links"] : assessmentLinksDeserializer(item["links"]), + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesDeserializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataDeserializer(item["partnersData"]), + status: assessmentStatusResponseDeserializer(item["status"]), + }; +} + +/** The result of the assessment */ +export interface AssessmentStatusResponse extends AssessmentStatus { + /** The time that the assessment was created and first evaluated. Returned as UTC time in ISO 8601 format */ + readonly firstEvaluationDate?: Date; + /** The time that the status of the assessment last changed. Returned as UTC time in ISO 8601 format */ + readonly statusChangeDate?: Date; +} + +export function assessmentStatusResponseDeserializer(item: any): AssessmentStatusResponse { + return { + code: item["code"], + cause: item["cause"], + description: item["description"], + firstEvaluationDate: !item["firstEvaluationDate"] + ? item["firstEvaluationDate"] + : new Date(item["firstEvaluationDate"]), + statusChangeDate: !item["statusChangeDate"] + ? item["statusChangeDate"] + : new Date(item["statusChangeDate"]), + }; +} + +/** The result of the assessment */ +export interface AssessmentStatus { + /** Programmatic code for the status of the assessment */ + code: AssessmentStatusCode; + /** Programmatic code for the cause of the assessment status */ + cause?: string; + /** Human readable description of the assessment status */ + description?: string; +} + +export function assessmentStatusSerializer(item: AssessmentStatus): any { + return { code: item["code"], cause: item["cause"], description: item["description"] }; +} + +export function assessmentStatusDeserializer(item: any): AssessmentStatus { + return { + code: item["code"], + cause: item["cause"], + description: item["description"], + }; +} + +/** Programmatic code for the status of the assessment */ +export enum KnownAssessmentStatusCode { + /** The resource is healthy */ + Healthy = "Healthy", + /** The resource has a security issue that needs to be addressed */ + Unhealthy = "Unhealthy", + /** Assessment for this resource did not happen */ + NotApplicable = "NotApplicable", +} + +/** + * Programmatic code for the status of the assessment \ + * {@link KnownAssessmentStatusCode} can be used interchangeably with AssessmentStatusCode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Healthy**: The resource is healthy \ + * **Unhealthy**: The resource has a security issue that needs to be addressed \ + * **NotApplicable**: Assessment for this resource did not happen + */ +export type AssessmentStatusCode = string; + +/** Describes properties of an assessment. */ +export interface SecurityAssessmentPropertiesBase { + /** External model of risk result */ + risk?: SecurityAssessmentPropertiesBaseRisk; + /** Details of the resource that was assessed */ + resourceDetails: ResourceDetailsUnion; + /** User friendly display name of the assessment */ + readonly displayName?: string; + /** Additional data regarding the assessment */ + additionalData?: Record; + /** Links relevant to the assessment */ + readonly links?: AssessmentLinks; + /** Describes properties of an assessment metadata. */ + metadata?: SecurityAssessmentMetadataProperties; + /** Data regarding 3rd party partner integration */ + partnersData?: SecurityAssessmentPartnerData; +} + +export function securityAssessmentPropertiesBaseSerializer( + item: SecurityAssessmentPropertiesBase, +): any { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskSerializer(item["risk"]), + resourceDetails: resourceDetailsUnionSerializer(item["resourceDetails"]), + additionalData: item["additionalData"], + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesSerializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataSerializer(item["partnersData"]), + }; +} + +export function securityAssessmentPropertiesBaseDeserializer( + item: any, +): SecurityAssessmentPropertiesBase { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskDeserializer(item["risk"]), + resourceDetails: resourceDetailsUnionDeserializer(item["resourceDetails"]), + displayName: item["displayName"], + additionalData: !item["additionalData"] + ? item["additionalData"] + : Object.fromEntries( + Object.entries(item["additionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + links: !item["links"] ? item["links"] : assessmentLinksDeserializer(item["links"]), + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesDeserializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataDeserializer(item["partnersData"]), + }; +} + +/** External model of risk result */ +export interface SecurityAssessmentPropertiesBaseRisk { + /** The factors of the risk adding base factor */ + riskFactors?: string[]; + /** The risk level */ + level?: RiskLevel; + /** The attack paths references of the risk */ + attackPathsReferences?: string[]; + paths?: SecurityAssessmentPropertiesBaseRiskPathsItem[]; + /** Indicates if the risk is contextual or static */ + isContextualRisk?: boolean; +} + +export function securityAssessmentPropertiesBaseRiskSerializer( + item: SecurityAssessmentPropertiesBaseRisk, +): any { + return { + riskFactors: !item["riskFactors"] + ? item["riskFactors"] + : item["riskFactors"].map((p: any) => { + return p; + }), + level: item["level"], + attackPathsReferences: !item["attackPathsReferences"] + ? item["attackPathsReferences"] + : item["attackPathsReferences"].map((p: any) => { + return p; + }), + paths: !item["paths"] + ? item["paths"] + : securityAssessmentPropertiesBaseRiskPathsItemArraySerializer(item["paths"]), + isContextualRisk: item["isContextualRisk"], + }; +} + +export function securityAssessmentPropertiesBaseRiskDeserializer( + item: any, +): SecurityAssessmentPropertiesBaseRisk { + return { + riskFactors: !item["riskFactors"] + ? item["riskFactors"] + : item["riskFactors"].map((p: any) => { + return p; + }), + level: item["level"], + attackPathsReferences: !item["attackPathsReferences"] + ? item["attackPathsReferences"] + : item["attackPathsReferences"].map((p: any) => { + return p; + }), + paths: !item["paths"] + ? item["paths"] + : securityAssessmentPropertiesBaseRiskPathsItemArrayDeserializer(item["paths"]), + isContextualRisk: item["isContextualRisk"], + }; +} + +/** The risk level */ +export enum KnownRiskLevel { + /** None */ + None = "None", + /** Low */ + Low = "Low", + /** Medium */ + Medium = "Medium", + /** High */ + High = "High", + /** Critical */ + Critical = "Critical", +} + +/** + * The risk level \ + * {@link KnownRiskLevel} can be used interchangeably with RiskLevel, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: None \ + * **Low**: Low \ + * **Medium**: Medium \ + * **High**: High \ + * **Critical**: Critical + */ +export type RiskLevel = string; + +export function securityAssessmentPropertiesBaseRiskPathsItemArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemSerializer(item); + }); +} + +export function securityAssessmentPropertiesBaseRiskPathsItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemDeserializer(item); + }); +} + +/** model interface SecurityAssessmentPropertiesBaseRiskPathsItem */ +export interface SecurityAssessmentPropertiesBaseRiskPathsItem { + /** Unique identifier for the path */ + id?: string; + nodes?: SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem[]; + /** Connections between nodes */ + edges?: SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem[]; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemSerializer( + item: SecurityAssessmentPropertiesBaseRiskPathsItem, +): any { + return { + id: item["id"], + nodes: !item["nodes"] + ? item["nodes"] + : securityAssessmentPropertiesBaseRiskPathsItemNodesItemArraySerializer(item["nodes"]), + edges: !item["edges"] + ? item["edges"] + : securityAssessmentPropertiesBaseRiskPathsItemEdgeItemArraySerializer(item["edges"]), + }; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemDeserializer( + item: any, +): SecurityAssessmentPropertiesBaseRiskPathsItem { + return { + id: item["id"], + nodes: !item["nodes"] + ? item["nodes"] + : securityAssessmentPropertiesBaseRiskPathsItemNodesItemArrayDeserializer(item["nodes"]), + edges: !item["edges"] + ? item["edges"] + : securityAssessmentPropertiesBaseRiskPathsItemEdgeItemArrayDeserializer(item["edges"]), + }; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemNodesItemArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemNodesItemSerializer(item); + }); +} + +export function securityAssessmentPropertiesBaseRiskPathsItemNodesItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemNodesItemDeserializer(item); + }); +} + +/** model interface SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem */ +export interface SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem { + /** Node identifier */ + id?: string; + /** Properties associated with the node */ + nodePropertiesLabel?: string[]; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemNodesItemSerializer( + item: SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem, +): any { + return { + id: item["id"], + nodePropertiesLabel: !item["nodePropertiesLabel"] + ? item["nodePropertiesLabel"] + : item["nodePropertiesLabel"].map((p: any) => { + return p; + }), + }; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemNodesItemDeserializer( + item: any, +): SecurityAssessmentPropertiesBaseRiskPathsItemNodesItem { + return { + id: item["id"], + nodePropertiesLabel: !item["nodePropertiesLabel"] + ? item["nodePropertiesLabel"] + : item["nodePropertiesLabel"].map((p: any) => { + return p; + }), + }; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemEdgeItemArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemEdgeItemSerializer(item); + }); +} + +export function securityAssessmentPropertiesBaseRiskPathsItemEdgeItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentPropertiesBaseRiskPathsItemEdgeItemDeserializer(item); + }); +} + +/** model interface SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem */ +export interface SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem { + /** Edge identifier */ + id: string; + /** Target node identifier */ + targetId: string; + /** Source node identifier */ + sourceId: string; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemEdgeItemSerializer( + item: SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem, +): any { + return { id: item["id"], targetId: item["targetId"], sourceId: item["sourceId"] }; +} + +export function securityAssessmentPropertiesBaseRiskPathsItemEdgeItemDeserializer( + item: any, +): SecurityAssessmentPropertiesBaseRiskPathsItemEdgeItem { + return { + id: item["id"], + targetId: item["targetId"], + sourceId: item["sourceId"], + }; +} + +/** Details of the Azure resource that was assessed */ +export interface AzureResourceDetails extends ResourceDetails { + /** Azure resource Id of the assessed resource */ + readonly id?: string; + /** The platform where the assessed resource resides */ + source: "Azure"; +} + +export function azureResourceDetailsSerializer(item: AzureResourceDetails): any { + return { source: item["source"] }; +} + +export function azureResourceDetailsDeserializer(item: any): AzureResourceDetails { + return { + source: item["source"], + id: item["id"], + }; +} + +/** Details of the On Premise resource that was assessed */ +export interface OnPremiseResourceDetails extends ResourceDetails { + /** 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; + source: "OnPremiseResourceDetails" | "OnPremiseSql"; +} + +export function onPremiseResourceDetailsSerializer(item: OnPremiseResourceDetails): any { + return { + source: item["source"], + workspaceId: item["workspaceId"], + vmuuid: item["vmuuid"], + sourceComputerId: item["sourceComputerId"], + machineName: item["machineName"], + }; +} + +export function onPremiseResourceDetailsDeserializer(item: any): OnPremiseResourceDetails { + return { + source: item["source"], + workspaceId: item["workspaceId"], + vmuuid: item["vmuuid"], + sourceComputerId: item["sourceComputerId"], + machineName: item["machineName"], + }; +} + +/** Alias for OnPremiseResourceDetailsUnion */ +export type OnPremiseResourceDetailsUnion = OnPremiseSqlResourceDetails | OnPremiseResourceDetails; + +export function onPremiseResourceDetailsUnionSerializer(item: OnPremiseResourceDetailsUnion): any { + switch (item.source) { + case "OnPremiseSql": + return onPremiseSqlResourceDetailsSerializer(item as OnPremiseSqlResourceDetails); + + default: + return onPremiseResourceDetailsSerializer(item); + } +} + +export function onPremiseResourceDetailsUnionDeserializer( + item: any, +): OnPremiseResourceDetailsUnion { + switch (item["source"]) { + case "OnPremiseSql": + return onPremiseSqlResourceDetailsDeserializer(item as OnPremiseSqlResourceDetails); + + default: + return onPremiseResourceDetailsDeserializer(item); + } +} + +/** Details of the On Premise Sql resource that was assessed */ +export interface OnPremiseSqlResourceDetails extends OnPremiseResourceDetails { + /** The Sql server name installed on the machine */ + serverName: string; + /** The Sql database name installed on the machine */ + databaseName: string; + /** The platform where the assessed resource resides */ + source: "OnPremiseSql"; +} + +export function onPremiseSqlResourceDetailsSerializer(item: OnPremiseSqlResourceDetails): any { + return { + workspaceId: item["workspaceId"], + vmuuid: item["vmuuid"], + sourceComputerId: item["sourceComputerId"], + machineName: item["machineName"], + source: item["source"], + serverName: item["serverName"], + databaseName: item["databaseName"], + }; +} + +export function onPremiseSqlResourceDetailsDeserializer(item: any): OnPremiseSqlResourceDetails { + return { + workspaceId: item["workspaceId"], + vmuuid: item["vmuuid"], + sourceComputerId: item["sourceComputerId"], + machineName: item["machineName"], + source: item["source"], + serverName: item["serverName"], + databaseName: item["databaseName"], + }; +} + +/** Links relevant to the assessment */ +export interface AssessmentLinks { + /** Link to assessment in Azure Portal */ + readonly azurePortalUri?: string; +} + +export function assessmentLinksDeserializer(item: any): AssessmentLinks { + return { + azurePortalUri: item["azurePortalUri"], + }; +} + +/** 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; +} + +export function securityAssessmentPartnerDataSerializer(item: SecurityAssessmentPartnerData): any { + return { partnerName: item["partnerName"], secret: item["secret"] }; +} + +export function securityAssessmentPartnerDataDeserializer( + item: any, +): SecurityAssessmentPartnerData { + return { + partnerName: item["partnerName"], + secret: item["secret"], + }; +} + +/** Security assessment on a resource */ +export interface SecurityAssessment extends Resource { + /** External model of risk result */ + risk?: SecurityAssessmentPropertiesBaseRisk; + /** Details of the resource that was assessed */ + resourceDetails?: ResourceDetailsUnion; + /** User friendly display name of the assessment */ + readonly displayName?: string; + /** Additional data regarding the assessment */ + additionalData?: Record; + /** Links relevant to the assessment */ + readonly links?: AssessmentLinks; + /** Describes properties of an assessment metadata. */ + metadata?: SecurityAssessmentMetadataProperties; + /** Data regarding 3rd party partner integration */ + partnersData?: SecurityAssessmentPartnerData; + /** The result of the assessment */ + status?: AssessmentStatus; +} + +export function securityAssessmentSerializer(item: SecurityAssessment): any { + return { + properties: areAllPropsUndefined(item, [ + "risk", + "resourceDetails", + "additionalData", + "metadata", + "partnersData", + "status", + ]) + ? undefined + : _securityAssessmentPropertiesSerializer(item), + }; +} + +/** Describes properties of an assessment. */ +export interface SecurityAssessmentProperties extends SecurityAssessmentPropertiesBase { + /** The result of the assessment */ + status: AssessmentStatus; +} + +export function securityAssessmentPropertiesSerializer(item: SecurityAssessmentProperties): any { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskSerializer(item["risk"]), + resourceDetails: resourceDetailsUnionSerializer(item["resourceDetails"]), + additionalData: item["additionalData"], + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesSerializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataSerializer(item["partnersData"]), + status: assessmentStatusSerializer(item["status"]), + }; +} + +/** Page of a security assessments list */ +export interface _SecurityAssessmentList { + /** Collection of security assessments in this page */ + readonly value?: SecurityAssessmentResponse[]; + /** The URI to fetch the next page. */ + nextLink?: string; +} + +export function _securityAssessmentListDeserializer(item: any): _SecurityAssessmentList { + return { + value: !item["value"] + ? item["value"] + : securityAssessmentResponseArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securityAssessmentResponseArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securityAssessmentResponseDeserializer(item); + }); +} + +/** Known values of {@link ExpandEnum} that the service accepts. */ +export enum KnownExpandEnum { + /** All links associated with an assessment */ + Links = "links", + /** Assessment metadata */ + Metadata = "metadata", +} + +/** Type of ExpandEnum */ +export type ExpandEnum = string; + +export function _securityAssessmentMetadataResponsePropertiesSerializer( + item: SecurityAssessmentMetadataResponse, +): any { + return { + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataSerializer(item["partnerData"]), + publishDates: !item["publishDates"] + ? item["publishDates"] + : securityAssessmentMetadataPropertiesResponsePublishDatesSerializer(item["publishDates"]), + plannedDeprecationDate: item["plannedDeprecationDate"], + tactics: !item["tactics"] + ? item["tactics"] + : item["tactics"].map((p: any) => { + return p; + }), + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + }; +} + +export function _securityAssessmentMetadataResponsePropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + policyDefinitionId: item["policyDefinitionId"], + description: item["description"], + remediationDescription: item["remediationDescription"], + categories: !item["categories"] + ? item["categories"] + : item["categories"].map((p: any) => { + return p; + }), + severity: item["severity"], + userImpact: item["userImpact"], + implementationEffort: item["implementationEffort"], + threats: !item["threats"] + ? item["threats"] + : item["threats"].map((p: any) => { + return p; + }), + preview: item["preview"], + assessmentType: item["assessmentType"], + partnerData: !item["partnerData"] + ? item["partnerData"] + : securityAssessmentMetadataPartnerDataDeserializer(item["partnerData"]), + publishDates: !item["publishDates"] + ? item["publishDates"] + : securityAssessmentMetadataPropertiesResponsePublishDatesDeserializer(item["publishDates"]), + plannedDeprecationDate: item["plannedDeprecationDate"], + tactics: !item["tactics"] + ? item["tactics"] + : item["tactics"].map((p: any) => { + return p; + }), + techniques: !item["techniques"] + ? item["techniques"] + : item["techniques"].map((p: any) => { + return p; + }), + }; +} + +export function _securityAssessmentResponsePropertiesDeserializer(item: any) { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskDeserializer(item["risk"]), + resourceDetails: !item["resourceDetails"] + ? item["resourceDetails"] + : resourceDetailsUnionDeserializer(item["resourceDetails"]), + displayName: item["displayName"], + additionalData: !item["additionalData"] + ? item["additionalData"] + : Object.fromEntries( + Object.entries(item["additionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + links: !item["links"] ? item["links"] : assessmentLinksDeserializer(item["links"]), + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesDeserializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataDeserializer(item["partnersData"]), + status: !item["status"] ? item["status"] : assessmentStatusResponseDeserializer(item["status"]), + }; +} + +export function _securityAssessmentPropertiesSerializer(item: SecurityAssessment): any { + return { + risk: !item["risk"] + ? item["risk"] + : securityAssessmentPropertiesBaseRiskSerializer(item["risk"]), + resourceDetails: !item["resourceDetails"] + ? item["resourceDetails"] + : resourceDetailsUnionSerializer(item["resourceDetails"]), + additionalData: item["additionalData"], + metadata: !item["metadata"] + ? item["metadata"] + : securityAssessmentMetadataPropertiesSerializer(item["metadata"]), + partnersData: !item["partnersData"] + ? item["partnersData"] + : securityAssessmentPartnerDataSerializer(item["partnersData"]), + status: !item["status"] ? item["status"] : assessmentStatusSerializer(item["status"]), + }; +} diff --git a/sdk/security/arm-security/src/models/atpSettingsAPI/index.ts b/sdk/security/arm-security/src/models/atpSettingsAPI/index.ts new file mode 100644 index 000000000000..30344be8364d --- /dev/null +++ b/sdk/security/arm-security/src/models/atpSettingsAPI/index.ts @@ -0,0 +1,7 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + AdvancedThreatProtectionSetting, + AdvancedThreatProtectionProperties, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/atpSettingsAPI/models.ts b/sdk/security/arm-security/src/models/atpSettingsAPI/models.ts new file mode 100644 index 000000000000..2f8a47d225ee --- /dev/null +++ b/sdk/security/arm-security/src/models/atpSettingsAPI/models.ts @@ -0,0 +1,75 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The Advanced Threat Protection resource. */ +export interface AdvancedThreatProtectionSetting extends ExtensionResource { + /** Indicates whether Advanced Threat Protection is enabled. */ + isEnabled?: boolean; +} + +export function advancedThreatProtectionSettingSerializer( + item: AdvancedThreatProtectionSetting, +): any { + return { + properties: areAllPropsUndefined(item, ["isEnabled"]) + ? undefined + : _advancedThreatProtectionSettingPropertiesSerializer(item), + }; +} + +export function advancedThreatProtectionSettingDeserializer( + item: any, +): AdvancedThreatProtectionSetting { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _advancedThreatProtectionSettingPropertiesDeserializer(item["properties"])), + }; +} + +/** The Advanced Threat Protection settings. */ +export interface AdvancedThreatProtectionProperties { + /** Indicates whether Advanced Threat Protection is enabled. */ + isEnabled?: boolean; +} + +export function advancedThreatProtectionPropertiesSerializer( + item: AdvancedThreatProtectionProperties, +): any { + return { isEnabled: item["isEnabled"] }; +} + +export function advancedThreatProtectionPropertiesDeserializer( + item: any, +): AdvancedThreatProtectionProperties { + return { + isEnabled: item["isEnabled"], + }; +} + +export function _advancedThreatProtectionSettingPropertiesSerializer( + item: AdvancedThreatProtectionSetting, +): any { + return { isEnabled: item["isEnabled"] }; +} + +export function _advancedThreatProtectionSettingPropertiesDeserializer(item: any) { + return { + isEnabled: item["isEnabled"], + }; +} diff --git a/sdk/security/arm-security/src/models/automationsAPI/index.ts b/sdk/security/arm-security/src/models/automationsAPI/index.ts new file mode 100644 index 000000000000..b5dac794ed17 --- /dev/null +++ b/sdk/security/arm-security/src/models/automationsAPI/index.ts @@ -0,0 +1,43 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + Automation, + AutomationProperties, + AutomationScope, + AutomationSource, + EventSource, + AutomationRuleSet, + AutomationTriggeringRule, + PropertyType, + Operator, + AutomationAction, + AutomationActionUnion, + AutomationActionLogicApp, + AutomationActionEventHub, + AutomationActionWorkspace, + AutomationUpdateModel, + AutomationValidationStatus, + SecurityContact, + SecurityContactProperties, + NotificationsSource, + NotificationsSourceUnion, + SourceType, + NotificationsSourceAlert, + MinimalSeverity, + NotificationsSourceAttackPath, + MinimalRiskLevel, + SecurityContactPropertiesNotificationsByRole, + SecurityContactRole, + SecurityContactName, +} from "./models.js"; +export { + KnownEventSource, + KnownPropertyType, + KnownOperator, + KnownSourceType, + KnownMinimalSeverity, + KnownMinimalRiskLevel, + KnownSecurityContactRole, + KnownSecurityContactName, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/automationsAPI/models.ts b/sdk/security/arm-security/src/models/automationsAPI/models.ts new file mode 100644 index 000000000000..a4fb5f8106d7 --- /dev/null +++ b/sdk/security/arm-security/src/models/automationsAPI/models.ts @@ -0,0 +1,1017 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ActionType, Tags, State } from "../common/models.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The security automation resource. */ +export interface Automation extends ProxyResource { + /** Resource tags. */ + tags?: Record; + /** The geo-location where the resource lives */ + 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; + /** 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[]; +} + +export function automationSerializer(item: Automation): any { + return { + properties: areAllPropsUndefined(item, [ + "description", + "isEnabled", + "scopes", + "sources", + "actions", + ]) + ? undefined + : _automationPropertiesSerializer(item), + tags: item["tags"], + location: item["location"], + kind: item["kind"], + etag: item["etag"], + }; +} + +export function automationDeserializer(item: any): Automation { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _automationPropertiesDeserializer(item["properties"])), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + location: item["location"], + kind: item["kind"], + etag: item["etag"], + }; +} + +/** A set of properties that defines the behavior of the automation configuration. To learn more about the supported security events data models schemas - please visit https://aka.ms/ASCAutomationSchemas. */ +export interface AutomationProperties { + /** 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[]; +} + +export function automationPropertiesSerializer(item: AutomationProperties): any { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArraySerializer(item["scopes"]), + sources: !item["sources"] ? item["sources"] : automationSourceArraySerializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArraySerializer(item["actions"]), + }; +} + +export function automationPropertiesDeserializer(item: any): AutomationProperties { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArrayDeserializer(item["scopes"]), + sources: !item["sources"] + ? item["sources"] + : automationSourceArrayDeserializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArrayDeserializer(item["actions"]), + }; +} + +export function automationScopeArraySerializer(result: Array): any[] { + return result.map((item) => { + return automationScopeSerializer(item); + }); +} + +export function automationScopeArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return automationScopeDeserializer(item); + }); +} + +/** 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; +} + +export function automationScopeSerializer(item: AutomationScope): any { + return { description: item["description"], scopePath: item["scopePath"] }; +} + +export function automationScopeDeserializer(item: any): AutomationScope { + return { + description: item["description"], + scopePath: item["scopePath"], + }; +} + +export function automationSourceArraySerializer(result: Array): any[] { + return result.map((item) => { + return automationSourceSerializer(item); + }); +} + +export function automationSourceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return automationSourceDeserializer(item); + }); +} + +/** 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. */ + eventSource?: EventSource; + /** A set of rules which evaluate upon event interception. A logical disjunction is applied between defined rule sets (logical 'or'). */ + ruleSets?: AutomationRuleSet[]; +} + +export function automationSourceSerializer(item: AutomationSource): any { + return { + eventSource: item["eventSource"], + ruleSets: !item["ruleSets"] + ? item["ruleSets"] + : automationRuleSetArraySerializer(item["ruleSets"]), + }; +} + +export function automationSourceDeserializer(item: any): AutomationSource { + return { + eventSource: item["eventSource"], + ruleSets: !item["ruleSets"] + ? item["ruleSets"] + : automationRuleSetArrayDeserializer(item["ruleSets"]), + }; +} + +/** A valid event source type. */ +export enum KnownEventSource { + /** Assessments */ + Assessments = "Assessments", + /** AssessmentsSnapshot */ + AssessmentsSnapshot = "AssessmentsSnapshot", + /** SubAssessments */ + SubAssessments = "SubAssessments", + /** SubAssessmentsSnapshot */ + SubAssessmentsSnapshot = "SubAssessmentsSnapshot", + /** Alerts */ + Alerts = "Alerts", + /** SecureScores */ + SecureScores = "SecureScores", + /** SecureScoresSnapshot */ + SecureScoresSnapshot = "SecureScoresSnapshot", + /** SecureScoreControls */ + SecureScoreControls = "SecureScoreControls", + /** SecureScoreControlsSnapshot */ + SecureScoreControlsSnapshot = "SecureScoreControlsSnapshot", + /** RegulatoryComplianceAssessment */ + RegulatoryComplianceAssessment = "RegulatoryComplianceAssessment", + /** RegulatoryComplianceAssessmentSnapshot */ + RegulatoryComplianceAssessmentSnapshot = "RegulatoryComplianceAssessmentSnapshot", + /** AttackPaths */ + AttackPaths = "AttackPaths", + /** AttackPathsSnapshot */ + AttackPathsSnapshot = "AttackPathsSnapshot", +} + +/** + * A valid event source type. \ + * {@link KnownEventSource} can be used interchangeably with EventSource, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Assessments**: Assessments \ + * **AssessmentsSnapshot**: AssessmentsSnapshot \ + * **SubAssessments**: SubAssessments \ + * **SubAssessmentsSnapshot**: SubAssessmentsSnapshot \ + * **Alerts**: Alerts \ + * **SecureScores**: SecureScores \ + * **SecureScoresSnapshot**: SecureScoresSnapshot \ + * **SecureScoreControls**: SecureScoreControls \ + * **SecureScoreControlsSnapshot**: SecureScoreControlsSnapshot \ + * **RegulatoryComplianceAssessment**: RegulatoryComplianceAssessment \ + * **RegulatoryComplianceAssessmentSnapshot**: RegulatoryComplianceAssessmentSnapshot \ + * **AttackPaths**: AttackPaths \ + * **AttackPathsSnapshot**: AttackPathsSnapshot + */ +export type EventSource = string; + +export function automationRuleSetArraySerializer(result: Array): any[] { + return result.map((item) => { + return automationRuleSetSerializer(item); + }); +} + +export function automationRuleSetArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return automationRuleSetDeserializer(item); + }); +} + +/** 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[]; +} + +export function automationRuleSetSerializer(item: AutomationRuleSet): any { + return { + rules: !item["rules"] ? item["rules"] : automationTriggeringRuleArraySerializer(item["rules"]), + }; +} + +export function automationRuleSetDeserializer(item: any): AutomationRuleSet { + return { + rules: !item["rules"] + ? item["rules"] + : automationTriggeringRuleArrayDeserializer(item["rules"]), + }; +} + +export function automationTriggeringRuleArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return automationTriggeringRuleSerializer(item); + }); +} + +export function automationTriggeringRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return automationTriggeringRuleDeserializer(item); + }); +} + +/** 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]] */ + propertyType?: PropertyType; + /** The expected value. */ + expectedValue?: string; + /** A valid comparer operator to use. A case-insensitive comparison will be applied for String PropertyType. */ + operator?: Operator; +} + +export function automationTriggeringRuleSerializer(item: AutomationTriggeringRule): any { + return { + propertyJPath: item["propertyJPath"], + propertyType: item["propertyType"], + expectedValue: item["expectedValue"], + operator: item["operator"], + }; +} + +export function automationTriggeringRuleDeserializer(item: any): AutomationTriggeringRule { + return { + propertyJPath: item["propertyJPath"], + propertyType: item["propertyType"], + expectedValue: item["expectedValue"], + operator: item["operator"], + }; +} + +/** The data type of the compared operands (string, integer, floating point number or a boolean [true/false]] */ +export enum KnownPropertyType { + /** String */ + String = "String", + /** Integer */ + Integer = "Integer", + /** Number */ + Number = "Number", + /** Boolean */ + Boolean = "Boolean", +} + +/** + * The data type of the compared operands (string, integer, floating point number or a boolean [true/false]] \ + * {@link KnownPropertyType} can be used interchangeably with PropertyType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **String**: String \ + * **Integer**: Integer \ + * **Number**: Number \ + * **Boolean**: Boolean + */ +export type PropertyType = string; + +/** A valid comparer operator to use. A case-insensitive comparison will be applied for String PropertyType. */ +export enum KnownOperator { + /** Applies for decimal and non-decimal operands */ + Equals = "Equals", + /** Applies only for decimal operands */ + GreaterThan = "GreaterThan", + /** Applies only for decimal operands */ + GreaterThanOrEqualTo = "GreaterThanOrEqualTo", + /** Applies only for decimal operands */ + LesserThan = "LesserThan", + /** Applies only for decimal operands */ + LesserThanOrEqualTo = "LesserThanOrEqualTo", + /** Applies for decimal and non-decimal operands */ + NotEquals = "NotEquals", + /** Applies only for non-decimal operands */ + Contains = "Contains", + /** Applies only for non-decimal operands */ + StartsWith = "StartsWith", + /** Applies only for non-decimal operands */ + EndsWith = "EndsWith", +} + +/** + * A valid comparer operator to use. A case-insensitive comparison will be applied for String PropertyType. \ + * {@link KnownOperator} can be used interchangeably with Operator, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Equals**: Applies for decimal and non-decimal operands \ + * **GreaterThan**: Applies only for decimal operands \ + * **GreaterThanOrEqualTo**: Applies only for decimal operands \ + * **LesserThan**: Applies only for decimal operands \ + * **LesserThanOrEqualTo**: Applies only for decimal operands \ + * **NotEquals**: Applies for decimal and non-decimal operands \ + * **Contains**: Applies only for non-decimal operands \ + * **StartsWith**: Applies only for non-decimal operands \ + * **EndsWith**: Applies only for non-decimal operands + */ +export type Operator = string; + +export function automationActionUnionArraySerializer(result: Array): any[] { + return result.map((item) => { + return automationActionUnionSerializer(item); + }); +} + +export function automationActionUnionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return automationActionUnionDeserializer(item); + }); +} + +/** The action that should be triggered. */ +export interface AutomationAction { + /** The type of the action that will be triggered by the Automation */ + /** The discriminator possible values: LogicApp, EventHub, Workspace */ + actionType: ActionType; +} + +export function automationActionSerializer(item: AutomationAction): any { + return { actionType: item["actionType"] }; +} + +export function automationActionDeserializer(item: any): AutomationAction { + return { + actionType: item["actionType"], + }; +} + +/** Alias for AutomationActionUnion */ +export type AutomationActionUnion = + | AutomationActionLogicApp + | AutomationActionEventHub + | AutomationActionWorkspace + | AutomationAction; + +export function automationActionUnionSerializer(item: AutomationActionUnion): any { + switch (item.actionType) { + case "LogicApp": + return automationActionLogicAppSerializer(item as AutomationActionLogicApp); + + case "EventHub": + return automationActionEventHubSerializer(item as AutomationActionEventHub); + + case "Workspace": + return automationActionWorkspaceSerializer(item as AutomationActionWorkspace); + + default: + return automationActionSerializer(item); + } +} + +export function automationActionUnionDeserializer(item: any): AutomationActionUnion { + switch (item["actionType"]) { + case "LogicApp": + return automationActionLogicAppDeserializer(item as AutomationActionLogicApp); + + case "EventHub": + return automationActionEventHubDeserializer(item as AutomationActionEventHub); + + case "Workspace": + return automationActionWorkspaceDeserializer(item as AutomationActionWorkspace); + + default: + return automationActionDeserializer(item); + } +} + +/** The logic app action that should be triggered. To learn more about Microsoft Defender for Cloud's Workflow Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore */ +export interface AutomationActionLogicApp extends AutomationAction { + /** 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 type of the action that will be triggered by the Automation */ + actionType: "LogicApp"; +} + +export function automationActionLogicAppSerializer(item: AutomationActionLogicApp): any { + return { + actionType: item["actionType"], + logicAppResourceId: item["logicAppResourceId"], + uri: item["uri"], + }; +} + +export function automationActionLogicAppDeserializer(item: any): AutomationActionLogicApp { + return { + actionType: item["actionType"], + logicAppResourceId: item["logicAppResourceId"], + uri: item["uri"], + }; +} + +/** The target Event Hub to which event data will be exported. To learn more about Microsoft Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore */ +export interface AutomationActionEventHub extends AutomationAction { + /** The target Event Hub Azure Resource ID. */ + eventHubResourceId?: string; + /** The target Event Hub SAS policy name. */ + readonly sasPolicyName?: string; + /** The target Event Hub connection string (it will not be included in any response). */ + connectionString?: string; + /** Indicates whether the trusted service is enabled or not. */ + isTrustedServiceEnabled?: boolean; + /** The type of the action that will be triggered by the Automation */ + actionType: "EventHub"; +} + +export function automationActionEventHubSerializer(item: AutomationActionEventHub): any { + return { + actionType: item["actionType"], + eventHubResourceId: item["eventHubResourceId"], + connectionString: item["connectionString"], + isTrustedServiceEnabled: item["isTrustedServiceEnabled"], + }; +} + +export function automationActionEventHubDeserializer(item: any): AutomationActionEventHub { + return { + actionType: item["actionType"], + eventHubResourceId: item["eventHubResourceId"], + sasPolicyName: item["sasPolicyName"], + connectionString: item["connectionString"], + isTrustedServiceEnabled: item["isTrustedServiceEnabled"], + }; +} + +/** The Log Analytics Workspace to which event data will be exported. Security alerts data will reside in the 'SecurityAlert' table and the assessments data will reside in the 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that in order to view the data in the workspace, the Security Center Log Analytics free/standard solution needs to be enabled on that workspace. To learn more about Microsoft Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore */ +export interface AutomationActionWorkspace extends AutomationAction { + /** The fully qualified Log Analytics Workspace Azure Resource ID. */ + workspaceResourceId?: string; + /** The type of the action that will be triggered by the Automation */ + actionType: "Workspace"; +} + +export function automationActionWorkspaceSerializer(item: AutomationActionWorkspace): any { + return { actionType: item["actionType"], workspaceResourceId: item["workspaceResourceId"] }; +} + +export function automationActionWorkspaceDeserializer(item: any): AutomationActionWorkspace { + return { + actionType: item["actionType"], + workspaceResourceId: item["workspaceResourceId"], + }; +} + +/** The update model of security automation resource. */ +export interface AutomationUpdateModel extends Tags { + /** 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[]; +} + +export function automationUpdateModelSerializer(item: AutomationUpdateModel): any { + return { + tags: item["tags"], + properties: areAllPropsUndefined(item, [ + "description", + "isEnabled", + "scopes", + "sources", + "actions", + ]) + ? undefined + : _automationUpdateModelPropertiesSerializer(item), + }; +} + +/** List of security automations response. */ +export interface _AutomationList { + /** The Automation items on this page */ + value: Automation[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _automationListDeserializer(item: any): _AutomationList { + return { + value: automationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function automationArraySerializer(result: Array): any[] { + return result.map((item) => { + return automationSerializer(item); + }); +} + +export function automationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return automationDeserializer(item); + }); +} + +/** 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; +} + +export function automationValidationStatusDeserializer(item: any): AutomationValidationStatus { + return { + isValid: item["isValid"], + message: item["message"], + }; +} + +/** Contact details and configurations for notifications coming from Microsoft Defender for Cloud. */ +export interface SecurityContact extends ProxyResource { + /** List of email addresses which will get notifications from Microsoft Defender for Cloud by the configurations defined in this security contact. */ + emails?: string; + /** The security contact's phone number */ + phone?: string; + /** Indicates whether the security contact is enabled. */ + isEnabled?: boolean; + /** A collection of sources types which evaluate the email notification. */ + notificationsSources?: NotificationsSourceUnion[]; + /** Defines whether to send email notifications from Microsoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ + notificationsByRole?: SecurityContactPropertiesNotificationsByRole; +} + +export function securityContactSerializer(item: SecurityContact): any { + return { + properties: areAllPropsUndefined(item, [ + "emails", + "phone", + "isEnabled", + "notificationsSources", + "notificationsByRole", + ]) + ? undefined + : _securityContactPropertiesSerializer(item), + }; +} + +export function securityContactDeserializer(item: any): SecurityContact { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securityContactPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes security contact properties */ +export interface SecurityContactProperties { + /** List of email addresses which will get notifications from Microsoft Defender for Cloud by the configurations defined in this security contact. */ + emails?: string; + /** The security contact's phone number */ + phone?: string; + /** Indicates whether the security contact is enabled. */ + isEnabled?: boolean; + /** A collection of sources types which evaluate the email notification. */ + notificationsSources?: NotificationsSourceUnion[]; + /** Defines whether to send email notifications from Microsoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ + notificationsByRole?: SecurityContactPropertiesNotificationsByRole; +} + +export function securityContactPropertiesSerializer(item: SecurityContactProperties): any { + return { + emails: item["emails"], + phone: item["phone"], + isEnabled: item["isEnabled"], + notificationsSources: !item["notificationsSources"] + ? item["notificationsSources"] + : notificationsSourceUnionArraySerializer(item["notificationsSources"]), + notificationsByRole: !item["notificationsByRole"] + ? item["notificationsByRole"] + : securityContactPropertiesNotificationsByRoleSerializer(item["notificationsByRole"]), + }; +} + +export function securityContactPropertiesDeserializer(item: any): SecurityContactProperties { + return { + emails: item["emails"], + phone: item["phone"], + isEnabled: item["isEnabled"], + notificationsSources: !item["notificationsSources"] + ? item["notificationsSources"] + : notificationsSourceUnionArrayDeserializer(item["notificationsSources"]), + notificationsByRole: !item["notificationsByRole"] + ? item["notificationsByRole"] + : securityContactPropertiesNotificationsByRoleDeserializer(item["notificationsByRole"]), + }; +} + +export function notificationsSourceUnionArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return notificationsSourceUnionSerializer(item); + }); +} + +export function notificationsSourceUnionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return notificationsSourceUnionDeserializer(item); + }); +} + +/** A valid notification source type */ +export interface NotificationsSource { + /** The source type that will trigger the notification */ + /** The discriminator possible values: Alert, AttackPath */ + sourceType: SourceType; +} + +export function notificationsSourceSerializer(item: NotificationsSource): any { + return { sourceType: item["sourceType"] }; +} + +export function notificationsSourceDeserializer(item: any): NotificationsSource { + return { + sourceType: item["sourceType"], + }; +} + +/** Alias for NotificationsSourceUnion */ +export type NotificationsSourceUnion = + | NotificationsSourceAlert + | NotificationsSourceAttackPath + | NotificationsSource; + +export function notificationsSourceUnionSerializer(item: NotificationsSourceUnion): any { + switch (item.sourceType) { + case "Alert": + return notificationsSourceAlertSerializer(item as NotificationsSourceAlert); + + case "AttackPath": + return notificationsSourceAttackPathSerializer(item as NotificationsSourceAttackPath); + + default: + return notificationsSourceSerializer(item); + } +} + +export function notificationsSourceUnionDeserializer(item: any): NotificationsSourceUnion { + switch (item["sourceType"]) { + case "Alert": + return notificationsSourceAlertDeserializer(item as NotificationsSourceAlert); + + case "AttackPath": + return notificationsSourceAttackPathDeserializer(item as NotificationsSourceAttackPath); + + default: + return notificationsSourceDeserializer(item); + } +} + +/** The source type that will trigger the notification */ +export enum KnownSourceType { + /** Alert */ + Alert = "Alert", + /** AttackPath */ + AttackPath = "AttackPath", +} + +/** + * The source type that will trigger the notification \ + * {@link KnownSourceType} can be used interchangeably with SourceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Alert**: Alert \ + * **AttackPath**: AttackPath + */ +export type SourceType = string; + +/** Alert notification source */ +export interface NotificationsSourceAlert extends NotificationsSource { + /** Defines the minimal alert severity which will be sent as email notifications */ + minimalSeverity?: MinimalSeverity; + /** The source type that will trigger the notification */ + sourceType: "Alert"; +} + +export function notificationsSourceAlertSerializer(item: NotificationsSourceAlert): any { + return { sourceType: item["sourceType"], minimalSeverity: item["minimalSeverity"] }; +} + +export function notificationsSourceAlertDeserializer(item: any): NotificationsSourceAlert { + return { + sourceType: item["sourceType"], + minimalSeverity: item["minimalSeverity"], + }; +} + +/** Defines the minimal alert severity which will be sent as email notifications */ +export enum KnownMinimalSeverity { + /** Get notifications on new alerts with High severity */ + High = "High", + /** Get notifications on new alerts with Medium or High severity */ + Medium = "Medium", + /** Get notifications on new alerts with Low, Medium or High severity */ + Low = "Low", +} + +/** + * Defines the minimal alert severity which will be sent as email notifications \ + * {@link KnownMinimalSeverity} can be used interchangeably with MinimalSeverity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **High**: Get notifications on new alerts with High severity \ + * **Medium**: Get notifications on new alerts with Medium or High severity \ + * **Low**: Get notifications on new alerts with Low, Medium or High severity + */ +export type MinimalSeverity = string; + +/** Attack path notification source */ +export interface NotificationsSourceAttackPath extends NotificationsSource { + /** Defines the minimal attach path risk level which will be sent as email notifications */ + minimalRiskLevel?: MinimalRiskLevel; + /** The source type that will trigger the notification */ + sourceType: "AttackPath"; +} + +export function notificationsSourceAttackPathSerializer(item: NotificationsSourceAttackPath): any { + return { sourceType: item["sourceType"], minimalRiskLevel: item["minimalRiskLevel"] }; +} + +export function notificationsSourceAttackPathDeserializer( + item: any, +): NotificationsSourceAttackPath { + return { + sourceType: item["sourceType"], + minimalRiskLevel: item["minimalRiskLevel"], + }; +} + +/** Defines the minimal attack path risk level which will be sent as email notifications */ +export enum KnownMinimalRiskLevel { + /** Get notifications on new attack paths with Critical risk level */ + Critical = "Critical", + /** Get notifications on new attack paths with High or Critical risk level */ + High = "High", + /** Get notifications on new attach paths with Medium, High or Critical risk level */ + Medium = "Medium", + /** Get notifications on new attach paths with Low, Medium, High or Critical risk level */ + Low = "Low", +} + +/** + * Defines the minimal attack path risk level which will be sent as email notifications \ + * {@link KnownMinimalRiskLevel} can be used interchangeably with MinimalRiskLevel, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Critical**: Get notifications on new attack paths with Critical risk level \ + * **High**: Get notifications on new attack paths with High or Critical risk level \ + * **Medium**: Get notifications on new attach paths with Medium, High or Critical risk level \ + * **Low**: Get notifications on new attach paths with Low, Medium, High or Critical risk level + */ +export type MinimalRiskLevel = string; + +/** Defines whether to send email notifications from Microsoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ +export interface SecurityContactPropertiesNotificationsByRole { + /** Defines whether to send email notifications from AMicrosoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ + state?: State; + /** Defines which RBAC roles will get email notifications from Microsoft Defender for Cloud. List of allowed RBAC roles: */ + roles?: SecurityContactRole[]; +} + +export function securityContactPropertiesNotificationsByRoleSerializer( + item: SecurityContactPropertiesNotificationsByRole, +): any { + return { + state: item["state"], + roles: !item["roles"] + ? item["roles"] + : item["roles"].map((p: any) => { + return p; + }), + }; +} + +export function securityContactPropertiesNotificationsByRoleDeserializer( + item: any, +): SecurityContactPropertiesNotificationsByRole { + return { + state: item["state"], + roles: !item["roles"] + ? item["roles"] + : item["roles"].map((p: any) => { + return p; + }), + }; +} + +/** A possible role to configure sending security notification alerts to */ +export enum KnownSecurityContactRole { + /** If enabled, send notification on new alerts to the account admins */ + AccountAdmin = "AccountAdmin", + /** If enabled, send notification on new alerts to the service admins */ + ServiceAdmin = "ServiceAdmin", + /** If enabled, send notification on new alerts to the subscription owners */ + Owner = "Owner", + /** If enabled, send notification on new alerts to the subscription contributors */ + Contributor = "Contributor", +} + +/** + * A possible role to configure sending security notification alerts to \ + * {@link KnownSecurityContactRole} can be used interchangeably with SecurityContactRole, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AccountAdmin**: If enabled, send notification on new alerts to the account admins \ + * **ServiceAdmin**: If enabled, send notification on new alerts to the service admins \ + * **Owner**: If enabled, send notification on new alerts to the subscription owners \ + * **Contributor**: If enabled, send notification on new alerts to the subscription contributors + */ +export type SecurityContactRole = string; + +/** Known values of {@link SecurityContactName} that the service accepts. */ +export enum KnownSecurityContactName { + /** The single applicable name of the security contact object */ + Default = "default", +} + +/** Type of SecurityContactName */ +export type SecurityContactName = string; + +/** List of security contacts response */ +export interface _SecurityContactList { + /** The SecurityContact items on this page */ + value: SecurityContact[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _securityContactListDeserializer(item: any): _SecurityContactList { + return { + value: securityContactArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securityContactArraySerializer(result: Array): any[] { + return result.map((item) => { + return securityContactSerializer(item); + }); +} + +export function securityContactArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return securityContactDeserializer(item); + }); +} + +export function _automationPropertiesSerializer(item: Automation): any { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArraySerializer(item["scopes"]), + sources: !item["sources"] ? item["sources"] : automationSourceArraySerializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArraySerializer(item["actions"]), + }; +} + +export function _automationPropertiesDeserializer(item: any) { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArrayDeserializer(item["scopes"]), + sources: !item["sources"] + ? item["sources"] + : automationSourceArrayDeserializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArrayDeserializer(item["actions"]), + }; +} + +export function _automationUpdateModelPropertiesSerializer(item: AutomationUpdateModel): any { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArraySerializer(item["scopes"]), + sources: !item["sources"] ? item["sources"] : automationSourceArraySerializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArraySerializer(item["actions"]), + }; +} + +export function _automationUpdateModelPropertiesDeserializer(item: any) { + return { + description: item["description"], + isEnabled: item["isEnabled"], + scopes: !item["scopes"] ? item["scopes"] : automationScopeArrayDeserializer(item["scopes"]), + sources: !item["sources"] + ? item["sources"] + : automationSourceArrayDeserializer(item["sources"]), + actions: !item["actions"] + ? item["actions"] + : automationActionUnionArrayDeserializer(item["actions"]), + }; +} + +export function _securityContactPropertiesSerializer(item: SecurityContact): any { + return { + emails: item["emails"], + phone: item["phone"], + isEnabled: item["isEnabled"], + notificationsSources: !item["notificationsSources"] + ? item["notificationsSources"] + : notificationsSourceUnionArraySerializer(item["notificationsSources"]), + notificationsByRole: !item["notificationsByRole"] + ? item["notificationsByRole"] + : securityContactPropertiesNotificationsByRoleSerializer(item["notificationsByRole"]), + }; +} + +export function _securityContactPropertiesDeserializer(item: any) { + return { + emails: item["emails"], + phone: item["phone"], + isEnabled: item["isEnabled"], + notificationsSources: !item["notificationsSources"] + ? item["notificationsSources"] + : notificationsSourceUnionArrayDeserializer(item["notificationsSources"]), + notificationsByRole: !item["notificationsByRole"] + ? item["notificationsByRole"] + : securityContactPropertiesNotificationsByRoleDeserializer(item["notificationsByRole"]), + }; +} diff --git a/sdk/security/arm-security/src/models/common/index.ts b/sdk/security/arm-security/src/models/common/index.ts new file mode 100644 index 000000000000..08396bc05ba9 --- /dev/null +++ b/sdk/security/arm-security/src/models/common/index.ts @@ -0,0 +1,26 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + CloudError, + CloudErrorBody, + Severity, + ActionType, + Tags, + State, + Source, + OperationStatus, + ProvisioningState, + AssignedStandardItem, + SettingName, + ResourceDetails, + ResourceDetailsUnion, +} from "./models.js"; +export { + KnownSeverity, + KnownActionType, + KnownState, + KnownSource, + KnownProvisioningState, + KnownSettingName, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/common/models.ts b/sdk/security/arm-security/src/models/common/models.ts new file mode 100644 index 000000000000..7007a6eb2d08 --- /dev/null +++ b/sdk/security/arm-security/src/models/common/models.ts @@ -0,0 +1,334 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { + AzureResourceDetails, + azureResourceDetailsSerializer, + azureResourceDetailsDeserializer, + onPremiseResourceDetailsUnionSerializer, + onPremiseResourceDetailsUnionDeserializer, + OnPremiseResourceDetailsUnion, +} from "../assessmentAPI/models.js"; +import { errorAdditionalInfoArrayDeserializer, ErrorAdditionalInfo } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ +export interface CloudError { + /** The error code. */ + readonly code?: string; + /** The error message. */ + readonly message?: string; + /** The error target. */ + readonly target?: string; + /** The error details. */ + readonly details?: CloudErrorBody[]; + /** The error additional info. */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +export function cloudErrorDeserializer(item: any): CloudError { + return { + ...(!item["error"] ? item["error"] : _cloudErrorErrorDeserializer(item["error"])), + }; +} + +/** The error detail. */ +export interface CloudErrorBody { + /** The error code. */ + readonly code?: string; + /** The error message. */ + readonly message?: string; + /** The error target. */ + readonly target?: string; + /** The error details. */ + readonly details?: CloudErrorBody[]; + /** The error additional info. */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +export function cloudErrorBodyDeserializer(item: any): CloudErrorBody { + return { + code: item["code"], + message: item["message"], + target: item["target"], + details: !item["details"] ? item["details"] : cloudErrorBodyArrayDeserializer(item["details"]), + additionalInfo: !item["additionalInfo"] + ? item["additionalInfo"] + : errorAdditionalInfoArrayDeserializer(item["additionalInfo"]), + }; +} + +export function cloudErrorBodyArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return cloudErrorBodyDeserializer(item); + }); +} + +/** The severity level of the assessment */ +export enum KnownSeverity { + /** Low */ + Low = "Low", + /** Medium */ + Medium = "Medium", + /** High */ + High = "High", + /** Critical */ + Critical = "Critical", +} + +/** + * The severity level of the assessment \ + * {@link KnownSeverity} can be used interchangeably with Severity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Low**: Low \ + * **Medium**: Medium \ + * **High**: High \ + * **Critical**: Critical + */ +export type Severity = string; + +/** Enum. Indicates the action type. */ +export enum KnownActionType { + /** LogicApp */ + LogicApp = "LogicApp", + /** EventHub */ + EventHub = "EventHub", + /** Workspace */ + Workspace = "Workspace", + /** Internal */ + Internal = "Internal", +} + +/** + * Enum. Indicates the action type. \ + * {@link KnownActionType} can be used interchangeably with ActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **LogicApp**: LogicApp \ + * **EventHub**: EventHub \ + * **Workspace**: Workspace \ + * **Internal**: Internal + */ +export type ActionType = string; + +/** A list of key value pairs that describe the resource. */ +export interface Tags { + /** A list of key value pairs that describe the resource. */ + tags?: Record; +} + +export function tagsSerializer(item: Tags): any { + return { tags: item["tags"] }; +} + +/** Aggregative state based on the standard's supported controls states */ +export enum KnownState { + /** All supported regulatory compliance controls in the given standard have a passed state */ + Passed = "Passed", + /** At least one supported regulatory compliance control in the given standard has a state of failed */ + Failed = "Failed", + /** All supported regulatory compliance controls in the given standard have a state of skipped */ + Skipped = "Skipped", + /** No supported regulatory compliance data for the given standard */ + Unsupported = "Unsupported", + /** Send notification on new alerts to the subscription's admins */ + On = "On", + /** Don't send notification on new alerts to the subscription's admins */ + Off = "Off", +} + +/** + * Aggregative state based on the standard's supported controls states \ + * {@link KnownState} can be used interchangeably with State, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Passed**: All supported regulatory compliance controls in the given standard have a passed state \ + * **Failed**: At least one supported regulatory compliance control in the given standard has a state of failed \ + * **Skipped**: All supported regulatory compliance controls in the given standard have a state of skipped \ + * **Unsupported**: No supported regulatory compliance data for the given standard \ + * **On**: Send notification on new alerts to the subscription's admins \ + * **Off**: Don't send notification on new alerts to the subscription's admins + */ +export type State = string; + +/** The platform where the assessed resource resides */ +export enum KnownSource { + /** Resource is in Azure */ + Azure = "Azure", + /** Resource in an on premise machine connected to Azure cloud */ + OnPremise = "OnPremise", + /** SQL Resource in an on premise machine connected to Azure cloud */ + OnPremiseSql = "OnPremiseSql", + /** Aws */ + Aws = "Aws", + /** Gcp */ + Gcp = "Gcp", + /** On premise resource details */ + OnPremiseResourceDetails = "OnPremiseResourceDetails", +} + +/** + * The platform where the assessed resource resides \ + * {@link KnownSource} can be used interchangeably with Source, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Azure**: Resource is in Azure \ + * **OnPremise**: Resource in an on premise machine connected to Azure cloud \ + * **OnPremiseSql**: SQL Resource in an on premise machine connected to Azure cloud \ + * **Aws**: Aws \ + * **Gcp**: Gcp \ + * **OnPremiseResourceDetails**: On premise resource details + */ +export type Source = string; + +/** A status describing the success/failure of the enablement/disablement operation. */ +export interface OperationStatus { + /** The operation status code. */ + code?: string; + /** Additional information regarding the success/failure of the operation. */ + message?: string; +} + +export function operationStatusDeserializer(item: any): OperationStatus { + return { + code: item["code"], + message: item["message"], + }; +} + +/** The current provisioning state of the resource. Indicates the status of the last operation performed on the resource. */ +export enum KnownProvisioningState { + /** The resource has been successfully provisioned and is ready for use. */ + Succeeded = "Succeeded", + /** The resource is being created. This is a transitional state. */ + Creating = "Creating", + /** The resource is being updated. This is a transitional state. */ + Updating = "Updating", + /** The resource is being deleted. This is a transitional state. */ + Deleting = "Deleting", + /** The last operation on the resource failed. Check the error details for more information. */ + Failed = "Failed", + /** The operation was canceled before completion. */ + Canceled = "Canceled", + /** InProgress */ + InProgress = "InProgress", +} + +/** + * The current provisioning state of the resource. Indicates the status of the last operation performed on the resource. \ + * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: The resource has been successfully provisioned and is ready for use. \ + * **Creating**: The resource is being created. This is a transitional state. \ + * **Updating**: The resource is being updated. This is a transitional state. \ + * **Deleting**: The resource is being deleted. This is a transitional state. \ + * **Failed**: The last operation on the resource failed. Check the error details for more information. \ + * **Canceled**: The operation was canceled before completion. \ + * **InProgress**: InProgress + */ +export type ProvisioningState = string; + +/** Describe the properties of a of a standard assignments object reference */ +export interface AssignedStandardItem { + /** Full resourceId of the Microsoft.Security/standard object */ + id?: string; +} + +export function assignedStandardItemSerializer(item: AssignedStandardItem): any { + return { id: item["id"] }; +} + +export function assignedStandardItemDeserializer(item: any): AssignedStandardItem { + return { + id: item["id"], + }; +} + +/** Known values of {@link SettingName} that the service accepts. */ +export enum KnownSettingName { + /** MCAS */ + Mcas = "MCAS", + /** WDATP */ + Wdatp = "WDATP", + /** WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW */ + WdatpExcludeLinuxPublicPreview = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", + /** WDATP_UNIFIED_SOLUTION */ + WdatpUnifiedSolution = "WDATP_UNIFIED_SOLUTION", + /** Sentinel */ + Sentinel = "Sentinel", + /** Name of the Defender for Storage Settings name. */ + Current = "current", +} + +/** Type of SettingName */ +export type SettingName = string; + +/** Details of the resource that was assessed */ +export interface ResourceDetails { + /** The platform where the assessed resource resides */ + /** The discriminator possible values: Azure, OnPremiseResourceDetails, OnPremiseSql */ + source: Source; +} + +export function resourceDetailsSerializer(item: ResourceDetails): any { + return { source: item["source"] }; +} + +export function resourceDetailsDeserializer(item: any): ResourceDetails { + return { + source: item["source"], + }; +} + +/** Alias for ResourceDetailsUnion */ +export type ResourceDetailsUnion = + | AzureResourceDetails + | OnPremiseResourceDetailsUnion + | ResourceDetails; + +export function resourceDetailsUnionSerializer(item: ResourceDetailsUnion): any { + switch (item.source) { + case "Azure": + return azureResourceDetailsSerializer(item as AzureResourceDetails); + + case "OnPremiseResourceDetails": + case "OnPremiseSql": + return onPremiseResourceDetailsUnionSerializer(item as OnPremiseResourceDetailsUnion); + + default: + return resourceDetailsSerializer(item); + } +} + +export function resourceDetailsUnionDeserializer(item: any): ResourceDetailsUnion { + switch (item["source"]) { + case "Azure": + return azureResourceDetailsDeserializer(item as AzureResourceDetails); + + case "OnPremiseResourceDetails": + case "OnPremiseSql": + return onPremiseResourceDetailsUnionDeserializer(item as OnPremiseResourceDetailsUnion); + + default: + return resourceDetailsDeserializer(item); + } +} + +export function _cloudErrorErrorDeserializer(item: any) { + return { + code: item["code"], + message: item["message"], + target: item["target"], + details: !item["details"] ? item["details"] : cloudErrorBodyArrayDeserializer(item["details"]), + additionalInfo: !item["additionalInfo"] + ? item["additionalInfo"] + : errorAdditionalInfoArrayDeserializer(item["additionalInfo"]), + }; +} diff --git a/sdk/security/arm-security/src/models/complianceResultsAPI/index.ts b/sdk/security/arm-security/src/models/complianceResultsAPI/index.ts new file mode 100644 index 000000000000..8f3aef053ad1 --- /dev/null +++ b/sdk/security/arm-security/src/models/complianceResultsAPI/index.ts @@ -0,0 +1,5 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { ComplianceResult, ComplianceResultProperties, ResourceStatus } from "./models.js"; +export { KnownResourceStatus } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/complianceResultsAPI/models.ts b/sdk/security/arm-security/src/models/complianceResultsAPI/models.ts new file mode 100644 index 000000000000..f8e4df25cebc --- /dev/null +++ b/sdk/security/arm-security/src/models/complianceResultsAPI/models.ts @@ -0,0 +1,93 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** a compliance result */ +export interface ComplianceResult extends ExtensionResource { + /** The status of the resource regarding a single assessment */ + readonly resourceStatus?: ResourceStatus; +} + +export function complianceResultDeserializer(item: any): ComplianceResult { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _complianceResultPropertiesDeserializer(item["properties"])), + }; +} + +/** Compliance result data */ +export interface ComplianceResultProperties { + /** The status of the resource regarding a single assessment */ + readonly resourceStatus?: ResourceStatus; +} + +export function complianceResultPropertiesDeserializer(item: any): ComplianceResultProperties { + return { + resourceStatus: item["resourceStatus"], + }; +} + +/** The status of the resource regarding a single assessment */ +export enum KnownResourceStatus { + /** This assessment on the resource is healthy */ + Healthy = "Healthy", + /** This assessment is not applicable to this resource */ + NotApplicable = "NotApplicable", + /** This assessment is turned off by policy on this subscription */ + OffByPolicy = "OffByPolicy", + /** This assessment on the resource is not healthy */ + NotHealthy = "NotHealthy", +} + +/** + * The status of the resource regarding a single assessment \ + * {@link KnownResourceStatus} can be used interchangeably with ResourceStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Healthy**: This assessment on the resource is healthy \ + * **NotApplicable**: This assessment is not applicable to this resource \ + * **OffByPolicy**: This assessment is turned off by policy on this subscription \ + * **NotHealthy**: This assessment on the resource is not healthy + */ +export type ResourceStatus = string; + +/** List of compliance results response */ +export interface _ComplianceResultList { + /** The ComplianceResult items on this page */ + value: ComplianceResult[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _complianceResultListDeserializer(item: any): _ComplianceResultList { + return { + value: complianceResultArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function complianceResultArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return complianceResultDeserializer(item); + }); +} + +export function _complianceResultPropertiesDeserializer(item: any) { + return { + resourceStatus: item["resourceStatus"], + }; +} diff --git a/sdk/security/arm-security/src/models/defenderForStorageAPI/index.ts b/sdk/security/arm-security/src/models/defenderForStorageAPI/index.ts new file mode 100644 index 000000000000..543ff4e4532d --- /dev/null +++ b/sdk/security/arm-security/src/models/defenderForStorageAPI/index.ts @@ -0,0 +1,19 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + DefenderForStorageSetting, + DefenderForStorageSettingProperties, + MalwareScanningProperties, + OnUploadProperties, + OnUploadFilters, + BlobScanResultsOptions, + AutomatedResponseType, + SensitiveDataDiscoveryProperties, + MalwareScan, + MalwareScanProperties, + ScanSummary, + BlobsScanSummary, + FilesScanSummary, +} from "./models.js"; +export { KnownBlobScanResultsOptions, KnownAutomatedResponseType } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/defenderForStorageAPI/models.ts b/sdk/security/arm-security/src/models/defenderForStorageAPI/models.ts new file mode 100644 index 000000000000..81f39ec2f317 --- /dev/null +++ b/sdk/security/arm-security/src/models/defenderForStorageAPI/models.ts @@ -0,0 +1,395 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { OperationStatus, operationStatusDeserializer } from "../common/models.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The Defender for Storage resource. */ +export interface DefenderForStorageSetting extends ExtensionResource { + /** Defender for Storage resource properties. */ + properties?: DefenderForStorageSettingProperties; +} + +export function defenderForStorageSettingSerializer(item: DefenderForStorageSetting): any { + return { + properties: !item["properties"] + ? item["properties"] + : defenderForStorageSettingPropertiesSerializer(item["properties"]), + }; +} + +export function defenderForStorageSettingDeserializer(item: any): DefenderForStorageSetting { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : defenderForStorageSettingPropertiesDeserializer(item["properties"]), + }; +} + +/** Defender for Storage resource properties. */ +export interface DefenderForStorageSettingProperties { + /** Indicates whether Defender for Storage is enabled on this storage account. */ + isEnabled?: boolean; + /** Properties of Malware Scanning. */ + malwareScanning?: MalwareScanningProperties; + /** Properties of Sensitive Data Discovery. */ + sensitiveDataDiscovery?: SensitiveDataDiscoveryProperties; + /** Indicates whether the settings defined for this storage account should override the settings defined for the subscription. */ + overrideSubscriptionLevelSettings?: boolean; +} + +export function defenderForStorageSettingPropertiesSerializer( + item: DefenderForStorageSettingProperties, +): any { + return { + isEnabled: item["isEnabled"], + malwareScanning: !item["malwareScanning"] + ? item["malwareScanning"] + : malwareScanningPropertiesSerializer(item["malwareScanning"]), + sensitiveDataDiscovery: !item["sensitiveDataDiscovery"] + ? item["sensitiveDataDiscovery"] + : sensitiveDataDiscoveryPropertiesSerializer(item["sensitiveDataDiscovery"]), + overrideSubscriptionLevelSettings: item["overrideSubscriptionLevelSettings"], + }; +} + +export function defenderForStorageSettingPropertiesDeserializer( + item: any, +): DefenderForStorageSettingProperties { + return { + isEnabled: item["isEnabled"], + malwareScanning: !item["malwareScanning"] + ? item["malwareScanning"] + : malwareScanningPropertiesDeserializer(item["malwareScanning"]), + sensitiveDataDiscovery: !item["sensitiveDataDiscovery"] + ? item["sensitiveDataDiscovery"] + : sensitiveDataDiscoveryPropertiesDeserializer(item["sensitiveDataDiscovery"]), + overrideSubscriptionLevelSettings: item["overrideSubscriptionLevelSettings"], + }; +} + +/** Properties of Malware Scanning. */ +export interface MalwareScanningProperties { + /** Properties of On Upload malware scanning. */ + onUpload?: OnUploadProperties; + /** Optional. Resource id of an Event Grid Topic to send scan results to. */ + scanResultsEventGridTopicResourceId?: string; + /** Optional. Write scan result on BlobIndexTags by default. */ + blobScanResultsOptions?: BlobScanResultsOptions; + /** Optional. Specifies the automated response action to take when malware is detected. */ + automatedResponse?: AutomatedResponseType; + /** Upon failure or partial success. Additional data describing Malware Scanning enable/disable operation. */ + readonly operationStatus?: OperationStatus; +} + +export function malwareScanningPropertiesSerializer(item: MalwareScanningProperties): any { + return { + onUpload: !item["onUpload"] ? item["onUpload"] : onUploadPropertiesSerializer(item["onUpload"]), + scanResultsEventGridTopicResourceId: item["scanResultsEventGridTopicResourceId"], + blobScanResultsOptions: item["blobScanResultsOptions"], + automatedResponse: item["automatedResponse"], + }; +} + +export function malwareScanningPropertiesDeserializer(item: any): MalwareScanningProperties { + return { + onUpload: !item["onUpload"] + ? item["onUpload"] + : onUploadPropertiesDeserializer(item["onUpload"]), + scanResultsEventGridTopicResourceId: item["scanResultsEventGridTopicResourceId"], + blobScanResultsOptions: item["blobScanResultsOptions"], + automatedResponse: item["automatedResponse"], + operationStatus: !item["operationStatus"] + ? item["operationStatus"] + : operationStatusDeserializer(item["operationStatus"]), + }; +} + +/** Properties of On Upload malware scanning. */ +export interface OnUploadProperties { + /** Indicates whether On Upload malware scanning should be enabled. */ + isEnabled?: boolean; + /** Defines the max GB to be scanned per Month. Set to -1 if no capping is needed. If not specified, the default value is -1. */ + capGBPerMonth?: number; + /** Optional. Determine which blobs get scanned by On Upload malware scanning. An Or operation is performed between each filter type. */ + filters?: OnUploadFilters; +} + +export function onUploadPropertiesSerializer(item: OnUploadProperties): any { + return { + isEnabled: item["isEnabled"], + capGBPerMonth: item["capGBPerMonth"], + filters: !item["filters"] ? item["filters"] : onUploadFiltersSerializer(item["filters"]), + }; +} + +export function onUploadPropertiesDeserializer(item: any): OnUploadProperties { + return { + isEnabled: item["isEnabled"], + capGBPerMonth: item["capGBPerMonth"], + filters: !item["filters"] ? item["filters"] : onUploadFiltersDeserializer(item["filters"]), + }; +} + +/** Optional. Determine which blobs get scanned by On Upload malware scanning. An Or operation is performed between each filter type. */ +export interface OnUploadFilters { + /** + * Optional. A list of prefixes to exclude from on-upload malware scanning. + * Format: `container-name/blob-name` (start with the container name; do not include the storage account name). + * Exclude entire containers: Use prefix of container names you want to exclude without a trailing `/`. + * Exclude a single container: Add a trailing slash `/` after the container name to avoid excluding other containers with similar prefixes. + */ + excludeBlobsWithPrefix?: string[]; + /** Optional. A list of suffixes to exclude from on-upload malware scanning. Suffixes match only the end of blob names, and should be used for file extensions or blob name endings only. */ + excludeBlobsWithSuffix?: string[]; + /** Optional. Specifies the maximum size in bytes for blobs to be scanned. This parameter accepts a single positive integer value. Blobs larger than this value will be excluded from scanning. */ + excludeBlobsLargerThan?: any; +} + +export function onUploadFiltersSerializer(item: OnUploadFilters): any { + return { + excludeBlobsWithPrefix: !item["excludeBlobsWithPrefix"] + ? item["excludeBlobsWithPrefix"] + : item["excludeBlobsWithPrefix"].map((p: any) => { + return p; + }), + excludeBlobsWithSuffix: !item["excludeBlobsWithSuffix"] + ? item["excludeBlobsWithSuffix"] + : item["excludeBlobsWithSuffix"].map((p: any) => { + return p; + }), + excludeBlobsLargerThan: item["excludeBlobsLargerThan"], + }; +} + +export function onUploadFiltersDeserializer(item: any): OnUploadFilters { + return { + excludeBlobsWithPrefix: !item["excludeBlobsWithPrefix"] + ? item["excludeBlobsWithPrefix"] + : item["excludeBlobsWithPrefix"].map((p1: any) => { + return p1; + }), + excludeBlobsWithSuffix: !item["excludeBlobsWithSuffix"] + ? item["excludeBlobsWithSuffix"] + : item["excludeBlobsWithSuffix"].map((p1: any) => { + return p1; + }), + excludeBlobsLargerThan: item["excludeBlobsLargerThan"], + }; +} + +/** Optional. Write scan result on BlobIndexTags by default. */ +export enum KnownBlobScanResultsOptions { + /** Write scan results on the blobs index tags. */ + BlobIndexTags = "BlobIndexTags", + /** Do not write scan results on the blobs index tags. */ + None = "None", +} + +/** + * Optional. Write scan result on BlobIndexTags by default. \ + * {@link KnownBlobScanResultsOptions} can be used interchangeably with BlobScanResultsOptions, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **BlobIndexTags**: Write scan results on the blobs index tags. \ + * **None**: Do not write scan results on the blobs index tags. + */ +export type BlobScanResultsOptions = string; + +/** Optional. Specifies the automated response action to take when malware is detected. */ +export enum KnownAutomatedResponseType { + /** No automated response will be taken when malware is detected. */ + None = "None", + /** The blob will be soft deleted when malware is detected. */ + BlobSoftDelete = "BlobSoftDelete", +} + +/** + * Optional. Specifies the automated response action to take when malware is detected. \ + * {@link KnownAutomatedResponseType} can be used interchangeably with AutomatedResponseType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: No automated response will be taken when malware is detected. \ + * **BlobSoftDelete**: The blob will be soft deleted when malware is detected. + */ +export type AutomatedResponseType = string; + +/** Properties of Sensitive Data Discovery. */ +export interface SensitiveDataDiscoveryProperties { + /** Indicates whether Sensitive Data Discovery should be enabled. */ + isEnabled?: boolean; + /** Upon failure or partial success. Additional data describing Sensitive Data Discovery enable/disable operation. */ + readonly operationStatus?: OperationStatus; +} + +export function sensitiveDataDiscoveryPropertiesSerializer( + item: SensitiveDataDiscoveryProperties, +): any { + return { isEnabled: item["isEnabled"] }; +} + +export function sensitiveDataDiscoveryPropertiesDeserializer( + item: any, +): SensitiveDataDiscoveryProperties { + return { + isEnabled: item["isEnabled"], + operationStatus: !item["operationStatus"] + ? item["operationStatus"] + : operationStatusDeserializer(item["operationStatus"]), + }; +} + +/** List of Defender for Storage settings. */ +export interface _DefenderForStorageSettingList { + /** List of Defender for Storage settings. */ + readonly value?: DefenderForStorageSetting[]; + /** The URI to fetch the next page. */ + nextLink?: string; +} + +export function _defenderForStorageSettingListDeserializer( + item: any, +): _DefenderForStorageSettingList { + return { + value: !item["value"] + ? item["value"] + : defenderForStorageSettingArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function defenderForStorageSettingArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return defenderForStorageSettingSerializer(item); + }); +} + +export function defenderForStorageSettingArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return defenderForStorageSettingDeserializer(item); + }); +} + +/** Describes the state of a malware scan operation. */ +export interface MalwareScan { + properties?: MalwareScanProperties; +} + +export function malwareScanDeserializer(item: any): MalwareScan { + return { + properties: !item["properties"] + ? item["properties"] + : malwareScanPropertiesDeserializer(item["properties"]), + }; +} + +/** model interface MalwareScanProperties */ +export interface MalwareScanProperties { + /** The identifier of the scan. */ + scanId?: string; + /** A status code of the scan operation. */ + scanStatus?: string; + /** A description of the status of the scan. */ + scanStatusMessage?: string; + /** The time at which the scan had been initiated. */ + scanStartTime?: string; + /** The time at which the scan has ended. Only available for a scan which has terminated. */ + scanEndTime?: string; + /** A summary of the scan results. */ + scanSummary?: ScanSummary; +} + +export function malwareScanPropertiesDeserializer(item: any): MalwareScanProperties { + return { + scanId: item["scanId"], + scanStatus: item["scanStatus"], + scanStatusMessage: item["scanStatusMessage"], + scanStartTime: item["scanStartTime"], + scanEndTime: item["scanEndTime"], + scanSummary: !item["scanSummary"] + ? item["scanSummary"] + : scanSummaryDeserializer(item["scanSummary"]), + }; +} + +/** A summary of the scan results. */ +export interface ScanSummary { + /** A summary of the scan results of the blobs that were scanned. */ + blobs?: BlobsScanSummary; + /** A summary of the scan results of the files that were scanned. */ + files?: FilesScanSummary; + /** The estimated cost of the scan. Only available for a scan which has terminated. */ + estimatedScanCostUSD?: number; +} + +export function scanSummaryDeserializer(item: any): ScanSummary { + return { + blobs: !item["blobs"] ? item["blobs"] : blobsScanSummaryDeserializer(item["blobs"]), + files: !item["files"] ? item["files"] : filesScanSummaryDeserializer(item["files"]), + estimatedScanCostUSD: item["estimatedScanCostUSD"], + }; +} + +/** A summary of the scan results of the blobs that were scanned. */ +export interface BlobsScanSummary { + /** The total number of blobs that were scanned. */ + totalBlobsScanned?: number; + /** The number of malicious blobs that were detected during the scan. */ + maliciousBlobsCount?: number; + /** The number of blobs that were skipped. */ + skippedBlobsCount?: number; + /** The number of failed blob scans. */ + failedBlobsCount?: number; + /** The number of gigabytes of data that were scanned. */ + scannedBlobsInGB?: number; +} + +export function blobsScanSummaryDeserializer(item: any): BlobsScanSummary { + return { + totalBlobsScanned: item["totalBlobsScanned"], + maliciousBlobsCount: item["maliciousBlobsCount"], + skippedBlobsCount: item["skippedBlobsCount"], + failedBlobsCount: item["failedBlobsCount"], + scannedBlobsInGB: item["scannedBlobsInGB"], + }; +} + +/** A summary of the scan results of the files that were scanned. */ +export interface FilesScanSummary { + /** The total number of files that were scanned. */ + totalFilesScanned?: number; + /** The number of malicious files that were detected during the scan. */ + maliciousFilesCount?: number; + /** The number of files that were skipped. */ + skippedFilesCount?: number; + /** The number of failed file scans. */ + failedFilesCount?: number; + /** The number of gigabytes of data that were scanned. */ + scannedFilesInGB?: number; +} + +export function filesScanSummaryDeserializer(item: any): FilesScanSummary { + return { + totalFilesScanned: item["totalFilesScanned"], + maliciousFilesCount: item["maliciousFilesCount"], + skippedFilesCount: item["skippedFilesCount"], + failedFilesCount: item["failedFilesCount"], + scannedFilesInGB: item["scannedFilesInGB"], + }; +} diff --git a/sdk/security/arm-security/src/models/governanceAPI/index.ts b/sdk/security/arm-security/src/models/governanceAPI/index.ts new file mode 100644 index 000000000000..90a99af36149 --- /dev/null +++ b/sdk/security/arm-security/src/models/governanceAPI/index.ts @@ -0,0 +1,27 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + GovernanceAssignment, + GovernanceAssignmentProperties, + RemediationEta, + GovernanceEmailNotification, + GovernanceAssignmentAdditionalData, + GovernanceRule, + GovernanceRuleProperties, + GovernanceRuleType, + GovernanceRuleSourceResourceType, + GovernanceRuleOwnerSource, + GovernanceRuleOwnerSourceType, + GovernanceRuleEmailNotification, + GovernanceRuleMetadata, + ExecuteGovernanceRuleParams, + OperationResult, + OperationResultStatus, +} from "./models.js"; +export { + KnownGovernanceRuleType, + KnownGovernanceRuleSourceResourceType, + KnownGovernanceRuleOwnerSourceType, + KnownOperationResultStatus, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/governanceAPI/models.ts b/sdk/security/arm-security/src/models/governanceAPI/models.ts new file mode 100644 index 000000000000..80996ad4a94b --- /dev/null +++ b/sdk/security/arm-security/src/models/governanceAPI/models.ts @@ -0,0 +1,668 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Governance assignment over a given scope */ +export interface GovernanceAssignment extends ExtensionResource { + /** The Owner for the governance assignment - e.g. user@contoso.com - see example */ + owner?: string; + /** The remediation due-date - after this date Secure Score will be affected (in case of active grace-period) */ + remediationDueDate?: Date; + /** The ETA (estimated time of arrival) for remediation (optional), see example */ + remediationEta?: RemediationEta; + /** Defines whether there is a grace period on the governance assignment */ + isGracePeriod?: boolean; + /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ + governanceEmailNotification?: GovernanceEmailNotification; + /** The additional data for the governance assignment - e.g. links to ticket (optional), see example */ + additionalData?: GovernanceAssignmentAdditionalData; +} + +export function governanceAssignmentSerializer(item: GovernanceAssignment): any { + return { + properties: areAllPropsUndefined(item, [ + "owner", + "remediationDueDate", + "remediationEta", + "isGracePeriod", + "governanceEmailNotification", + "additionalData", + ]) + ? undefined + : _governanceAssignmentPropertiesSerializer(item), + }; +} + +export function governanceAssignmentDeserializer(item: any): GovernanceAssignment { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _governanceAssignmentPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of an governance assignment */ +export interface GovernanceAssignmentProperties { + /** The Owner for the governance assignment - e.g. user@contoso.com - see example */ + owner?: string; + /** The remediation due-date - after this date Secure Score will be affected (in case of active grace-period) */ + remediationDueDate: Date; + /** The ETA (estimated time of arrival) for remediation (optional), see example */ + remediationEta?: RemediationEta; + /** Defines whether there is a grace period on the governance assignment */ + isGracePeriod?: boolean; + /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ + governanceEmailNotification?: GovernanceEmailNotification; + /** The additional data for the governance assignment - e.g. links to ticket (optional), see example */ + additionalData?: GovernanceAssignmentAdditionalData; +} + +export function governanceAssignmentPropertiesSerializer( + item: GovernanceAssignmentProperties, +): any { + return { + owner: item["owner"], + remediationDueDate: item["remediationDueDate"].toISOString(), + remediationEta: !item["remediationEta"] + ? item["remediationEta"] + : remediationEtaSerializer(item["remediationEta"]), + isGracePeriod: item["isGracePeriod"], + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceEmailNotificationSerializer(item["governanceEmailNotification"]), + additionalData: !item["additionalData"] + ? item["additionalData"] + : governanceAssignmentAdditionalDataSerializer(item["additionalData"]), + }; +} + +export function governanceAssignmentPropertiesDeserializer( + item: any, +): GovernanceAssignmentProperties { + return { + owner: item["owner"], + remediationDueDate: new Date(item["remediationDueDate"]), + remediationEta: !item["remediationEta"] + ? item["remediationEta"] + : remediationEtaDeserializer(item["remediationEta"]), + isGracePeriod: item["isGracePeriod"], + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceEmailNotificationDeserializer(item["governanceEmailNotification"]), + additionalData: !item["additionalData"] + ? item["additionalData"] + : governanceAssignmentAdditionalDataDeserializer(item["additionalData"]), + }; +} + +/** The ETA (estimated time of arrival) for remediation */ +export interface RemediationEta { + /** ETA for remediation. */ + eta: Date; + /** Justification for change of Eta. */ + justification: string; +} + +export function remediationEtaSerializer(item: RemediationEta): any { + return { eta: item["eta"].toISOString(), justification: item["justification"] }; +} + +export function remediationEtaDeserializer(item: any): RemediationEta { + return { + eta: new Date(item["eta"]), + justification: item["justification"], + }; +} + +/** The governance email weekly notification configuration. */ +export interface GovernanceEmailNotification { + /** Exclude manager from weekly email notification. */ + disableManagerEmailNotification?: boolean; + /** Exclude owner from weekly email notification. */ + disableOwnerEmailNotification?: boolean; +} + +export function governanceEmailNotificationSerializer(item: GovernanceEmailNotification): any { + return { + disableManagerEmailNotification: item["disableManagerEmailNotification"], + disableOwnerEmailNotification: item["disableOwnerEmailNotification"], + }; +} + +export function governanceEmailNotificationDeserializer(item: any): GovernanceEmailNotification { + return { + disableManagerEmailNotification: item["disableManagerEmailNotification"], + disableOwnerEmailNotification: item["disableOwnerEmailNotification"], + }; +} + +/** Describe the additional data of governance assignment - optional */ +export interface GovernanceAssignmentAdditionalData { + /** Ticket number associated with this governance assignment */ + ticketNumber?: number; + /** Ticket link associated with this governance assignment - for example: https://snow.com */ + ticketLink?: string; + /** The ticket status associated with this governance assignment - for example: Active */ + ticketStatus?: string; +} + +export function governanceAssignmentAdditionalDataSerializer( + item: GovernanceAssignmentAdditionalData, +): any { + return { + ticketNumber: item["ticketNumber"], + ticketLink: item["ticketLink"], + ticketStatus: item["ticketStatus"], + }; +} + +export function governanceAssignmentAdditionalDataDeserializer( + item: any, +): GovernanceAssignmentAdditionalData { + return { + ticketNumber: item["ticketNumber"], + ticketLink: item["ticketLink"], + ticketStatus: item["ticketStatus"], + }; +} + +/** Page of a governance assignments list */ +export interface _GovernanceAssignmentsList { + /** Collection of governance assignments in this page */ + readonly value?: GovernanceAssignment[]; + /** The URI to fetch the next page */ + nextLink?: string; +} + +export function _governanceAssignmentsListDeserializer(item: any): _GovernanceAssignmentsList { + return { + value: !item["value"] ? item["value"] : governanceAssignmentArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function governanceAssignmentArraySerializer(result: Array): any[] { + return result.map((item) => { + return governanceAssignmentSerializer(item); + }); +} + +export function governanceAssignmentArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return governanceAssignmentDeserializer(item); + }); +} + +/** Governance rule over a given scope */ +export interface GovernanceRule extends ExtensionResource { + /** The tenantId (GUID) */ + readonly tenantId?: string; + /** Display name of the governance rule */ + displayName?: string; + /** Description of the governance rule */ + description?: string; + /** Governance rule remediation timeframe - this is the time that will affect on the grace-period duration e.g. 7.00:00:00 - means 7 days */ + remediationTimeframe?: string; + /** Defines whether there is a grace period on the governance rule */ + isGracePeriod?: boolean; + /** The governance rule priority, priority to the lower number. Rules with the same priority on the same scope will not be allowed */ + rulePriority?: number; + /** Defines whether the rule is active/inactive */ + isDisabled?: boolean; + /** The rule type of the governance rule, defines the source of the rule e.g. Integrated */ + ruleType?: GovernanceRuleType; + /** The governance rule source, what the rule affects, e.g. Assessments */ + sourceResourceType?: GovernanceRuleSourceResourceType; + /** Excluded scopes, filter out the descendants of the scope (on management scopes) */ + excludedScopes?: string[]; + /** The governance rule conditionSets - see examples */ + conditionSets?: any[]; + /** Defines whether the rule is management scope rule (master connector as a single scope or management scope) */ + includeMemberScopes?: boolean; + /** The owner source for the governance rule - e.g. Manually by user@contoso.com - see example */ + ownerSource?: GovernanceRuleOwnerSource; + /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ + governanceEmailNotification?: GovernanceRuleEmailNotification; + /** The governance rule metadata */ + metadata?: GovernanceRuleMetadata; +} + +export function governanceRuleSerializer(item: GovernanceRule): any { + return { + properties: areAllPropsUndefined(item, [ + "displayName", + "description", + "remediationTimeframe", + "isGracePeriod", + "rulePriority", + "isDisabled", + "ruleType", + "sourceResourceType", + "excludedScopes", + "conditionSets", + "includeMemberScopes", + "ownerSource", + "governanceEmailNotification", + "metadata", + ]) + ? undefined + : _governanceRulePropertiesSerializer(item), + }; +} + +export function governanceRuleDeserializer(item: any): GovernanceRule { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _governanceRulePropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of an governance rule */ +export interface GovernanceRuleProperties { + /** The tenantId (GUID) */ + readonly tenantId?: string; + /** Display name of the governance rule */ + displayName: string; + /** Description of the governance rule */ + description?: string; + /** Governance rule remediation timeframe - this is the time that will affect on the grace-period duration e.g. 7.00:00:00 - means 7 days */ + remediationTimeframe?: string; + /** Defines whether there is a grace period on the governance rule */ + isGracePeriod?: boolean; + /** The governance rule priority, priority to the lower number. Rules with the same priority on the same scope will not be allowed */ + rulePriority: number; + /** Defines whether the rule is active/inactive */ + isDisabled?: boolean; + /** The rule type of the governance rule, defines the source of the rule e.g. Integrated */ + ruleType: GovernanceRuleType; + /** The governance rule source, what the rule affects, e.g. Assessments */ + sourceResourceType: GovernanceRuleSourceResourceType; + /** Excluded scopes, filter out the descendants of the scope (on management scopes) */ + excludedScopes?: string[]; + /** The governance rule conditionSets - see examples */ + conditionSets: any[]; + /** Defines whether the rule is management scope rule (master connector as a single scope or management scope) */ + includeMemberScopes?: boolean; + /** The owner source for the governance rule - e.g. Manually by user@contoso.com - see example */ + ownerSource: GovernanceRuleOwnerSource; + /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ + governanceEmailNotification?: GovernanceRuleEmailNotification; + /** The governance rule metadata */ + metadata?: GovernanceRuleMetadata; +} + +export function governanceRulePropertiesSerializer(item: GovernanceRuleProperties): any { + return { + displayName: item["displayName"], + description: item["description"], + remediationTimeframe: item["remediationTimeframe"], + isGracePeriod: item["isGracePeriod"], + rulePriority: item["rulePriority"], + isDisabled: item["isDisabled"], + ruleType: item["ruleType"], + sourceResourceType: item["sourceResourceType"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + conditionSets: item["conditionSets"].map((p: any) => { + return p; + }), + includeMemberScopes: item["includeMemberScopes"], + ownerSource: governanceRuleOwnerSourceSerializer(item["ownerSource"]), + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceRuleEmailNotificationSerializer(item["governanceEmailNotification"]), + metadata: !item["metadata"] + ? item["metadata"] + : governanceRuleMetadataSerializer(item["metadata"]), + }; +} + +export function governanceRulePropertiesDeserializer(item: any): GovernanceRuleProperties { + return { + tenantId: item["tenantId"], + displayName: item["displayName"], + description: item["description"], + remediationTimeframe: item["remediationTimeframe"], + isGracePeriod: item["isGracePeriod"], + rulePriority: item["rulePriority"], + isDisabled: item["isDisabled"], + ruleType: item["ruleType"], + sourceResourceType: item["sourceResourceType"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + conditionSets: item["conditionSets"].map((p: any) => { + return p; + }), + includeMemberScopes: item["includeMemberScopes"], + ownerSource: governanceRuleOwnerSourceDeserializer(item["ownerSource"]), + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceRuleEmailNotificationDeserializer(item["governanceEmailNotification"]), + metadata: !item["metadata"] + ? item["metadata"] + : governanceRuleMetadataDeserializer(item["metadata"]), + }; +} + +/** The rule type of the governance rule, defines the source of the rule e.g. Integrated */ +export enum KnownGovernanceRuleType { + /** The source of the rule type definition is integrated */ + Integrated = "Integrated", + /** The source of the rule type definition is ServiceNow */ + ServiceNow = "ServiceNow", +} + +/** + * The rule type of the governance rule, defines the source of the rule e.g. Integrated \ + * {@link KnownGovernanceRuleType} can be used interchangeably with GovernanceRuleType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Integrated**: The source of the rule type definition is integrated \ + * **ServiceNow**: The source of the rule type definition is ServiceNow + */ +export type GovernanceRuleType = string; + +/** The governance rule source, what the rule affects, e.g. Assessments */ +export enum KnownGovernanceRuleSourceResourceType { + /** The source of the governance rule is assessments */ + Assessments = "Assessments", +} + +/** + * The governance rule source, what the rule affects, e.g. Assessments \ + * {@link KnownGovernanceRuleSourceResourceType} can be used interchangeably with GovernanceRuleSourceResourceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Assessments**: The source of the governance rule is assessments + */ +export type GovernanceRuleSourceResourceType = string; + +/** Describe the owner source of governance rule */ +export interface GovernanceRuleOwnerSource { + /** The owner type for the governance rule owner source */ + type?: GovernanceRuleOwnerSourceType; + /** The source value e.g. tag key like owner name or email address */ + value?: string; +} + +export function governanceRuleOwnerSourceSerializer(item: GovernanceRuleOwnerSource): any { + return { type: item["type"], value: item["value"] }; +} + +export function governanceRuleOwnerSourceDeserializer(item: any): GovernanceRuleOwnerSource { + return { + type: item["type"], + value: item["value"], + }; +} + +/** The owner type for the governance rule owner source */ +export enum KnownGovernanceRuleOwnerSourceType { + /** The rule source type defined using resource tag */ + ByTag = "ByTag", + /** The rule source type defined manually */ + Manually = "Manually", +} + +/** + * The owner type for the governance rule owner source \ + * {@link KnownGovernanceRuleOwnerSourceType} can be used interchangeably with GovernanceRuleOwnerSourceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **ByTag**: The rule source type defined using resource tag \ + * **Manually**: The rule source type defined manually + */ +export type GovernanceRuleOwnerSourceType = string; + +/** The governance email weekly notification configuration */ +export interface GovernanceRuleEmailNotification { + /** Defines whether manager email notifications are disabled */ + disableManagerEmailNotification?: boolean; + /** Defines whether owner email notifications are disabled */ + disableOwnerEmailNotification?: boolean; +} + +export function governanceRuleEmailNotificationSerializer( + item: GovernanceRuleEmailNotification, +): any { + return { + disableManagerEmailNotification: item["disableManagerEmailNotification"], + disableOwnerEmailNotification: item["disableOwnerEmailNotification"], + }; +} + +export function governanceRuleEmailNotificationDeserializer( + item: any, +): GovernanceRuleEmailNotification { + return { + disableManagerEmailNotification: item["disableManagerEmailNotification"], + disableOwnerEmailNotification: item["disableOwnerEmailNotification"], + }; +} + +/** The governance rule metadata */ +export interface GovernanceRuleMetadata { + /** Governance rule Created by object id (GUID) */ + readonly createdBy?: string; + /** Governance rule creation date */ + readonly createdOn?: Date; + /** Governance rule last updated by object id (GUID) */ + readonly updatedBy?: string; + /** Governance rule last update date */ + readonly updatedOn?: Date; +} + +export function governanceRuleMetadataSerializer(_item: GovernanceRuleMetadata): any { + return {}; +} + +export function governanceRuleMetadataDeserializer(item: any): GovernanceRuleMetadata { + return { + createdBy: item["createdBy"], + createdOn: !item["createdOn"] ? item["createdOn"] : new Date(item["createdOn"]), + updatedBy: item["updatedBy"], + updatedOn: !item["updatedOn"] ? item["updatedOn"] : new Date(item["updatedOn"]), + }; +} + +/** Page of a governance rules list */ +export interface _GovernanceRuleList { + /** Collection of governance rules in this page */ + readonly value?: GovernanceRule[]; + /** The URI to fetch the next page */ + nextLink?: string; +} + +export function _governanceRuleListDeserializer(item: any): _GovernanceRuleList { + return { + value: !item["value"] ? item["value"] : governanceRuleArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function governanceRuleArraySerializer(result: Array): any[] { + return result.map((item) => { + return governanceRuleSerializer(item); + }); +} + +export function governanceRuleArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return governanceRuleDeserializer(item); + }); +} + +/** Governance rule execution parameters */ +export interface ExecuteGovernanceRuleParams { + /** Describe if governance rule should be override */ + override?: boolean; +} + +export function executeGovernanceRuleParamsSerializer(item: ExecuteGovernanceRuleParams): any { + return { override: item["override"] }; +} + +/** Long run operation status of governance rule over a given scope */ +export interface OperationResult { + /** The status of the long run operation result of governance rule */ + readonly status?: OperationResultStatus; +} + +export function operationResultDeserializer(item: any): OperationResult { + return { + status: item["status"], + }; +} + +/** The status of the long run operation result of governance rule */ +export enum KnownOperationResultStatus { + /** The operation succeeded */ + Succeeded = "Succeeded", + /** The operation failed */ + Failed = "Failed", + /** The operation canceled */ + Canceled = "Canceled", +} + +/** + * The status of the long run operation result of governance rule \ + * {@link KnownOperationResultStatus} can be used interchangeably with OperationResultStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: The operation succeeded \ + * **Failed**: The operation failed \ + * **Canceled**: The operation canceled + */ +export type OperationResultStatus = string; + +export function _governanceAssignmentPropertiesSerializer(item: GovernanceAssignment): any { + return { + owner: item["owner"], + remediationDueDate: !item["remediationDueDate"] + ? item["remediationDueDate"] + : item["remediationDueDate"].toISOString(), + remediationEta: !item["remediationEta"] + ? item["remediationEta"] + : remediationEtaSerializer(item["remediationEta"]), + isGracePeriod: item["isGracePeriod"], + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceEmailNotificationSerializer(item["governanceEmailNotification"]), + additionalData: !item["additionalData"] + ? item["additionalData"] + : governanceAssignmentAdditionalDataSerializer(item["additionalData"]), + }; +} + +export function _governanceAssignmentPropertiesDeserializer(item: any) { + return { + owner: item["owner"], + remediationDueDate: !item["remediationDueDate"] + ? item["remediationDueDate"] + : new Date(item["remediationDueDate"]), + remediationEta: !item["remediationEta"] + ? item["remediationEta"] + : remediationEtaDeserializer(item["remediationEta"]), + isGracePeriod: item["isGracePeriod"], + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceEmailNotificationDeserializer(item["governanceEmailNotification"]), + additionalData: !item["additionalData"] + ? item["additionalData"] + : governanceAssignmentAdditionalDataDeserializer(item["additionalData"]), + }; +} + +export function _governanceRulePropertiesSerializer(item: GovernanceRule): any { + return { + displayName: item["displayName"], + description: item["description"], + remediationTimeframe: item["remediationTimeframe"], + isGracePeriod: item["isGracePeriod"], + rulePriority: item["rulePriority"], + isDisabled: item["isDisabled"], + ruleType: item["ruleType"], + sourceResourceType: item["sourceResourceType"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + conditionSets: !item["conditionSets"] + ? item["conditionSets"] + : item["conditionSets"].map((p: any) => { + return p; + }), + includeMemberScopes: item["includeMemberScopes"], + ownerSource: !item["ownerSource"] + ? item["ownerSource"] + : governanceRuleOwnerSourceSerializer(item["ownerSource"]), + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceRuleEmailNotificationSerializer(item["governanceEmailNotification"]), + metadata: !item["metadata"] + ? item["metadata"] + : governanceRuleMetadataSerializer(item["metadata"]), + }; +} + +export function _governanceRulePropertiesDeserializer(item: any) { + return { + tenantId: item["tenantId"], + displayName: item["displayName"], + description: item["description"], + remediationTimeframe: item["remediationTimeframe"], + isGracePeriod: item["isGracePeriod"], + rulePriority: item["rulePriority"], + isDisabled: item["isDisabled"], + ruleType: item["ruleType"], + sourceResourceType: item["sourceResourceType"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + conditionSets: !item["conditionSets"] + ? item["conditionSets"] + : item["conditionSets"].map((p: any) => { + return p; + }), + includeMemberScopes: item["includeMemberScopes"], + ownerSource: !item["ownerSource"] + ? item["ownerSource"] + : governanceRuleOwnerSourceDeserializer(item["ownerSource"]), + governanceEmailNotification: !item["governanceEmailNotification"] + ? item["governanceEmailNotification"] + : governanceRuleEmailNotificationDeserializer(item["governanceEmailNotification"]), + metadata: !item["metadata"] + ? item["metadata"] + : governanceRuleMetadataDeserializer(item["metadata"]), + }; +} diff --git a/sdk/security/arm-security/src/models/healthReportsAPI/index.ts b/sdk/security/arm-security/src/models/healthReportsAPI/index.ts new file mode 100644 index 000000000000..fe3599b71e86 --- /dev/null +++ b/sdk/security/arm-security/src/models/healthReportsAPI/index.ts @@ -0,0 +1,14 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + HealthReport, + HealthReportProperties, + ResourceDetails, + EnvironmentDetails, + HealthDataClassification, + Status, + StatusName, + Issue, +} from "./models.js"; +export { KnownStatusName } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/healthReportsAPI/models.ts b/sdk/security/arm-security/src/models/healthReportsAPI/models.ts new file mode 100644 index 000000000000..ea75027f66b6 --- /dev/null +++ b/sdk/security/arm-security/src/models/healthReportsAPI/models.ts @@ -0,0 +1,303 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { Source } from "../common/models.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The health report resource */ +export interface HealthReport extends ExtensionResource { + /** The resource details of the health report */ + resourceDetails?: ResourceDetails; + /** The environment details of the resource */ + environmentDetails?: EnvironmentDetails; + /** The classification of the health report */ + healthDataClassification?: HealthDataClassification; + /** The status of the health report */ + status?: Status; + /** The affected defenders plans by unhealthy report */ + affectedDefendersPlans?: string[]; + /** The affected defenders sub plans by unhealthy report */ + affectedDefendersSubPlans?: string[]; + /** Additional data for the given health report, this field can include more details on the resource and the health scenario. */ + readonly reportAdditionalData?: Record; + /** A collection of the issues in the report */ + issues?: Issue[]; +} + +export function healthReportDeserializer(item: any): HealthReport { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _healthReportPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of the health report */ +export interface HealthReportProperties { + /** The resource details of the health report */ + resourceDetails?: ResourceDetails; + /** The environment details of the resource */ + environmentDetails?: EnvironmentDetails; + /** The classification of the health report */ + healthDataClassification?: HealthDataClassification; + /** The status of the health report */ + status?: Status; + /** The affected defenders plans by unhealthy report */ + affectedDefendersPlans?: string[]; + /** The affected defenders sub plans by unhealthy report */ + affectedDefendersSubPlans?: string[]; + /** Additional data for the given health report, this field can include more details on the resource and the health scenario. */ + readonly reportAdditionalData?: Record; + /** A collection of the issues in the report */ + issues?: Issue[]; +} + +export function healthReportPropertiesDeserializer(item: any): HealthReportProperties { + return { + resourceDetails: !item["resourceDetails"] + ? item["resourceDetails"] + : resourceDetailsDeserializer(item["resourceDetails"]), + environmentDetails: !item["environmentDetails"] + ? item["environmentDetails"] + : environmentDetailsDeserializer(item["environmentDetails"]), + healthDataClassification: !item["healthDataClassification"] + ? item["healthDataClassification"] + : healthDataClassificationDeserializer(item["healthDataClassification"]), + status: !item["status"] ? item["status"] : statusDeserializer(item["status"]), + affectedDefendersPlans: !item["affectedDefendersPlans"] + ? item["affectedDefendersPlans"] + : item["affectedDefendersPlans"].map((p: any) => { + return p; + }), + affectedDefendersSubPlans: !item["affectedDefendersSubPlans"] + ? item["affectedDefendersSubPlans"] + : item["affectedDefendersSubPlans"].map((p: any) => { + return p; + }), + reportAdditionalData: !item["reportAdditionalData"] + ? item["reportAdditionalData"] + : Object.fromEntries( + Object.entries(item["reportAdditionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + issues: !item["issues"] ? item["issues"] : issueArrayDeserializer(item["issues"]), + }; +} + +/** The resource details of the health report */ +export interface ResourceDetails { + /** The status of the health report */ + source?: Source; + /** The azure id of the resource */ + readonly id?: string; + /** The id of the connector */ + readonly connectorId?: string; +} + +export function resourceDetailsDeserializer(item: any): ResourceDetails { + return { + source: item["source"], + id: item["id"], + connectorId: item["connectorId"], + }; +} + +/** The environment details of the resource */ +export interface EnvironmentDetails { + /** The native resource id of the resource (in case of Azure - the resource Id, in case of MC - the native resource id) */ + nativeResourceId?: string; + /** The hierarchy id of the connector (in case of Azure - the subscription Id, in case of MC - the hierarchyId id) */ + environmentHierarchyId?: string; + /** The organizational hierarchy id of the connector (in case of Azure - the subscription Id, in case of MC - the organizational hierarchyId id) */ + organizationalHierarchyId?: string; + /** The subscription Id */ + subscriptionId?: string; + /** The tenant Id */ + tenantId?: string; +} + +export function environmentDetailsDeserializer(item: any): EnvironmentDetails { + return { + nativeResourceId: item["nativeResourceId"], + environmentHierarchyId: item["environmentHierarchyId"], + organizationalHierarchyId: item["organizationalHierarchyId"], + subscriptionId: item["subscriptionId"], + tenantId: item["tenantId"], + }; +} + +/** The classification of the health report */ +export interface HealthDataClassification { + /** The component describes the name of the agent/service that scans the issue */ + component?: string; + /** The scenario describes the health scenario issue of the component */ + scenario?: string; + /** The resource scope of the health report */ + scope?: string; +} + +export function healthDataClassificationDeserializer(item: any): HealthDataClassification { + return { + component: item["component"], + scenario: item["scenario"], + scope: item["scope"], + }; +} + +/** The status of the health report */ +export interface Status { + /** The status of the health report */ + code?: StatusName; + /** The reason of the given status */ + readonly reason?: string; + /** The date of when the resource was scanned in the last time */ + readonly lastScannedDate?: Date; + /** The date of when the status of the health report was changed in the last time */ + readonly statusChangeDate?: Date; + /** The date of when the resource of the health report was scanned in the first time */ + readonly firstEvaluationDate?: Date; +} + +export function statusDeserializer(item: any): Status { + return { + code: item["code"], + reason: item["reason"], + lastScannedDate: !item["lastScannedDate"] + ? item["lastScannedDate"] + : new Date(item["lastScannedDate"]), + statusChangeDate: !item["statusChangeDate"] + ? item["statusChangeDate"] + : new Date(item["statusChangeDate"]), + firstEvaluationDate: !item["firstEvaluationDate"] + ? item["firstEvaluationDate"] + : new Date(item["firstEvaluationDate"]), + }; +} + +/** The status of the health report */ +export enum KnownStatusName { + /** Healthy */ + Healthy = "Healthy", + /** NotHealthy */ + NotHealthy = "NotHealthy", + /** NotApplicable */ + NotApplicable = "NotApplicable", +} + +/** + * The status of the health report \ + * {@link KnownStatusName} can be used interchangeably with StatusName, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Healthy**: Healthy \ + * **NotHealthy**: NotHealthy \ + * **NotApplicable**: NotApplicable + */ +export type StatusName = string; + +export function issueArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return issueDeserializer(item); + }); +} + +/** The issue that caused the resource to by unhealthy */ +export interface Issue { + /** The unique issue key */ + issueKey: string; + /** The issue name */ + issueName?: string; + /** The affected security values that MDC offers that will be affected by the issue, for example: recommendations, alerts, etc */ + securityValues?: string[]; + /** The issue description */ + issueDescription?: string; + /** Human readable description of what you should do to mitigate this health issue */ + remediationSteps?: string; + /** The remediation script to solve this issue */ + remediationScript?: string; + /** Additional data for the given issue. The additional data depends on the issue type */ + issueAdditionalData?: Record; +} + +export function issueDeserializer(item: any): Issue { + return { + issueKey: item["issueKey"], + issueName: item["issueName"], + securityValues: !item["securityValues"] + ? item["securityValues"] + : item["securityValues"].map((p: any) => { + return p; + }), + issueDescription: item["issueDescription"], + remediationSteps: item["remediationSteps"], + remediationScript: item["remediationScript"], + issueAdditionalData: !item["issueAdditionalData"] + ? item["issueAdditionalData"] + : Object.fromEntries( + Object.entries(item["issueAdditionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + }; +} + +/** Page of health reports list */ +export interface _HealthReportsList { + /** The HealthReport items on this page. */ + readonly value?: HealthReport[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _healthReportsListDeserializer(item: any): _HealthReportsList { + return { + value: !item["value"] ? item["value"] : healthReportArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function healthReportArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return healthReportDeserializer(item); + }); +} + +export function _healthReportPropertiesDeserializer(item: any) { + return { + resourceDetails: !item["resourceDetails"] + ? item["resourceDetails"] + : resourceDetailsDeserializer(item["resourceDetails"]), + environmentDetails: !item["environmentDetails"] + ? item["environmentDetails"] + : environmentDetailsDeserializer(item["environmentDetails"]), + healthDataClassification: !item["healthDataClassification"] + ? item["healthDataClassification"] + : healthDataClassificationDeserializer(item["healthDataClassification"]), + status: !item["status"] ? item["status"] : statusDeserializer(item["status"]), + affectedDefendersPlans: !item["affectedDefendersPlans"] + ? item["affectedDefendersPlans"] + : item["affectedDefendersPlans"].map((p: any) => { + return p; + }), + affectedDefendersSubPlans: !item["affectedDefendersSubPlans"] + ? item["affectedDefendersSubPlans"] + : item["affectedDefendersSubPlans"].map((p: any) => { + return p; + }), + reportAdditionalData: !item["reportAdditionalData"] + ? item["reportAdditionalData"] + : Object.fromEntries( + Object.entries(item["reportAdditionalData"]).map(([k, p]: [string, any]) => [k, p]), + ), + issues: !item["issues"] ? item["issues"] : issueArrayDeserializer(item["issues"]), + }; +} diff --git a/sdk/security/arm-security/src/models/index.ts b/sdk/security/arm-security/src/models/index.ts index 8a35f7ebeea6..fe83879d27c3 100644 --- a/sdk/security/arm-security/src/models/index.ts +++ b/sdk/security/arm-security/src/models/index.ts @@ -1,11099 +1,35 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -import * as coreClient from "@azure/core-client"; - -export type AutomationActionUnion = - | AutomationAction - | AutomationActionLogicApp - | AutomationActionEventHub - | AutomationActionWorkspace; -export type ResourceDetailsUnion = - | ResourceDetails - | AzureResourceDetails - | OnPremiseResourceDetailsUnion; -export type AdditionalDataUnion = - | AdditionalData - | SqlServerVulnerabilityProperties - | ContainerRegistryVulnerabilityProperties - | ServerVulnerabilityProperties; -export type AuthenticationDetailsPropertiesUnion = - | AuthenticationDetailsProperties - | AwsCredsAuthenticationDetailsProperties - | AwAssumeRoleAuthenticationDetailsProperties - | GcpCredentialsDetailsProperties; -export type NotificationsSourceUnion = - | NotificationsSource - | NotificationsSourceAlert - | NotificationsSourceAttackPath; -export type CloudOfferingUnion = - | CloudOffering - | CspmMonitorAwsOffering - | DefenderForContainersAwsOffering - | DefenderForServersAwsOffering - | DefenderFoDatabasesAwsOffering - | InformationProtectionAwsOffering - | CspmMonitorGcpOffering - | DefenderForServersGcpOffering - | DefenderForDatabasesGcpOffering - | DefenderForContainersGcpOffering - | CspmMonitorGithubOffering - | CspmMonitorAzureDevOpsOffering - | DefenderCspmAwsOffering - | DefenderCspmGcpOffering - | DefenderForDevOpsGithubOffering - | DefenderForDevOpsAzureDevOpsOffering - | CspmMonitorGitLabOffering - | DefenderForDevOpsGitLabOffering; -export type EnvironmentDataUnion = - | EnvironmentData - | AwsEnvironmentData - | GcpProjectEnvironmentData - | GithubScopeEnvironmentData - | AzureDevOpsScopeEnvironmentData - | GitlabScopeEnvironmentData; -export type CustomAlertRuleUnion = - | CustomAlertRule - | ThresholdCustomAlertRuleUnion - | ListCustomAlertRuleUnion; -export type ResourceIdentifierUnion = - | ResourceIdentifier - | AzureResourceIdentifier - | LogAnalyticsIdentifier; -export type AlertSimulatorRequestPropertiesUnion = - | AlertSimulatorRequestProperties - | AlertSimulatorBundlesRequestProperties; -export type AwsOrganizationalDataUnion = - | AwsOrganizationalData - | AwsOrganizationalDataMaster - | AwsOrganizationalDataMember; -export type GcpOrganizationalDataUnion = - | GcpOrganizationalData - | GcpOrganizationalDataOrganization - | GcpOrganizationalDataMember; -export type SettingUnion = Setting | DataExportSettings | AlertSyncSettings; -export type OnPremiseResourceDetailsUnion = - | OnPremiseResourceDetails - | OnPremiseSqlResourceDetails; -export type ThresholdCustomAlertRuleUnion = - | ThresholdCustomAlertRule - | TimeWindowCustomAlertRuleUnion; -export type ListCustomAlertRuleUnion = - | ListCustomAlertRule - | AllowlistCustomAlertRuleUnion - | DenylistCustomAlertRule; -export type ServerVulnerabilityAssessmentsSettingUnion = - | ServerVulnerabilityAssessmentsSetting - | AzureServersSetting; -export type TimeWindowCustomAlertRuleUnion = - | TimeWindowCustomAlertRule - | ActiveConnectionsNotInAllowedRange - | AmqpC2DMessagesNotInAllowedRange - | MqttC2DMessagesNotInAllowedRange - | HttpC2DMessagesNotInAllowedRange - | AmqpC2DRejectedMessagesNotInAllowedRange - | MqttC2DRejectedMessagesNotInAllowedRange - | HttpC2DRejectedMessagesNotInAllowedRange - | AmqpD2CMessagesNotInAllowedRange - | MqttD2CMessagesNotInAllowedRange - | HttpD2CMessagesNotInAllowedRange - | DirectMethodInvokesNotInAllowedRange - | FailedLocalLoginsNotInAllowedRange - | FileUploadsNotInAllowedRange - | QueuePurgesNotInAllowedRange - | TwinUpdatesNotInAllowedRange - | UnauthorizedOperationsNotInAllowedRange; -export type AllowlistCustomAlertRuleUnion = - | AllowlistCustomAlertRule - | ConnectionToIpNotAllowed - | ConnectionFromIpNotAllowed - | LocalUserNotAllowed - | ProcessNotAllowed; - -/** List of locations where ASC saves your data */ -export interface AscLocationList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: AscLocation[]; - /** - * 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; -} - -/** Describes an Azure resource. */ -export interface Resource { - /** - * 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; -} - -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ -export interface CloudError { - /** - * The error code. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly code?: string; - /** - * The error message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly message?: string; - /** - * The error target. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly target?: string; - /** - * The error details. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly details?: CloudErrorBody[]; - /** - * The error additional info. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** The error detail. */ -export interface CloudErrorBody { - /** - * The error code. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly code?: string; - /** - * The error message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly message?: string; - /** - * The error target. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly target?: string; - /** - * The error details. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly details?: CloudErrorBody[]; - /** - * The error additional info. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** The resource management error additional info. */ -export interface ErrorAdditionalInfo { - /** - * The additional info type. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; - /** - * The additional info. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly info?: Record; -} - -/** List of possible operations for Microsoft.Security resource provider */ -export interface OperationList { - /** List of Security operations */ - value?: Operation[]; - /** - * 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; -} - -/** Possible operation in the REST API of Microsoft.Security */ -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; - /** Security operation display */ - display?: OperationDisplay; -} - -/** Security operation display */ -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; -} - -/** List of security task recommendations */ -export interface SecurityTaskList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: SecurityTask[]; - /** - * 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; -} - -/** Changing set of properties, depending on the task type that is derived from the name field */ -export interface SecurityTaskParameters { - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; - /** - * Name of the task type - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly name?: string; -} - -/** List of all the auto provisioning settings response */ -export interface AutoProvisioningSettingList { - /** List of all the auto provisioning settings */ - value?: AutoProvisioningSetting[]; - /** - * 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; -} - -/** List of Compliance objects response */ -export interface ComplianceList { - /** List of Compliance objects */ - value?: Compliance[]; - /** - * 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; -} - -/** A segment of a compliance assessment. */ -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; -} - -/** 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. */ - rank?: Rank; - /** The order of the sensitivity label. */ - order?: number; - /** Indicates whether the label is enabled or not. */ - enabled?: 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[]; -} - -/** 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; -} - -/** Information protection policies response. */ -export interface InformationProtectionPolicyList { - /** List of information protection policies. */ - value?: InformationProtectionPolicy[]; - /** - * 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; -} - -/** List of workspace settings response */ -export interface WorkspaceSettingList { - /** List of workspace settings */ - value: WorkspaceSetting[]; - /** - * 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; -} - -/** Suppression rules list for subscription. */ -export interface AlertsSuppressionRulesList { - value: AlertsSuppressionRule[]; - /** - * 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 SuppressionAlertsScope { - /** All the conditions inside need to be true in order to suppress the alert */ - allOf: ScopeElement[]; -} - -/** A more specific scope used to identify the alerts to suppress. */ -export interface ScopeElement { - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; - /** The alert entity type to suppress by. */ - field?: string; -} - -/** List of security automations response. */ -export interface AutomationList { - /** The list of security automations under the given scope. */ - value: Automation[]; - /** - * 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; -} - -/** 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; -} - -/** 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. */ - eventSource?: EventSource; - /** A set of rules which evaluate upon event interception. A logical disjunction is applied between defined rule sets (logical 'or'). */ - ruleSets?: AutomationRuleSet[]; -} - -/** 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[]; -} - -/** 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]] */ - propertyType?: PropertyType; - /** The expected value. */ - expectedValue?: string; - /** A valid comparer operator to use. A case-insensitive comparison will be applied for String PropertyType. */ - operator?: Operator; -} - -/** The action that should be triggered. */ -export interface AutomationAction { - /** Polymorphic discriminator, which specifies the different types this object can be */ - actionType: "LogicApp" | "EventHub" | "Workspace"; -} - -/** Describes an Azure resource with location */ -export interface AzureTrackedResourceLocation { - /** Location where the resource is stored */ - location?: string; -} - -/** Describes an Azure resource with kind */ -export interface KindAutoGenerated { - /** Kind of the resource */ - kind?: string; -} - -/** Entity tag is used for comparing two or more entities from the same requested resource. */ -export interface ETag { - /** 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. */ -export interface Tags { - /** A list of key value pairs that describe the resource. */ - tags?: { [propertyName: string]: 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; -} - -/** List of regulatory compliance standards response */ -export interface RegulatoryComplianceStandardList { - value: RegulatoryComplianceStandard[]; - /** - * 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; -} - -/** List of regulatory compliance controls response */ -export interface RegulatoryComplianceControlList { - /** List of regulatory compliance controls */ - value: RegulatoryComplianceControl[]; - /** - * 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; -} - -/** List of regulatory compliance assessment response */ -export interface RegulatoryComplianceAssessmentList { - value: RegulatoryComplianceAssessment[]; - /** - * 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; -} - -/** List of security sub-assessments */ -export interface SecuritySubAssessmentList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: SecuritySubAssessment[]; - /** - * 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; -} - -/** Status of the sub-assessment */ -export interface SubAssessmentStatus { - /** - * Programmatic code for the status of the assessment - * 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 - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly severity?: Severity; -} - -/** Details of the resource that was assessed */ -export interface ResourceDetails { - /** Polymorphic discriminator, which specifies the different types this object can be */ - source: "Azure" | "OnPremise" | "OnPremiseSql"; -} - -/** Details of the sub-assessment */ -export interface AdditionalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - assessedResourceType: - | "SqlServerVulnerability" - | "ContainerRegistryVulnerability" - | "ServerVulnerabilityAssessment"; -} - -/** For a subscription, list of all cloud account connectors and their settings */ -export interface ConnectorSettingList { - /** List of all the cloud account connector settings */ - value?: ConnectorSetting[]; - /** - * 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; -} - -/** Settings for hybrid compute management */ -export interface HybridComputeSettingsProperties { - /** - * State of the service principal and its secret - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly hybridComputeProvisioningState?: HybridComputeProvisioningState; - /** Whether or not to automatically install Azure Arc (hybrid compute) agents on machines */ - autoProvision: AutoProvision; - /** The name of the resource group where Arc (Hybrid Compute) connectors are connected. */ - resourceGroupName?: string; - /** The location where the metadata of machines will be stored */ - region?: string; - /** For a non-Azure machine that is not connected directly to the internet, specify a proxy server that the non-Azure machine can use. */ - proxyServer?: ProxyServerProperties; - /** An object to access resources that are secured by an Azure AD tenant. */ - servicePrincipal?: ServicePrincipalProperties; -} - -/** For a non-Azure machine that is not connected directly to the internet, specify a proxy server that the non-Azure machine can use. */ -export interface ProxyServerProperties { - /** Proxy server IP */ - ip?: string; - /** Proxy server port */ - port?: string; -} - -/** Details of the service principal. */ -export interface ServicePrincipalProperties { - /** Application ID of service principal. */ - applicationId?: string; - /** A secret string that the application uses to prove its identity, also can be referred to as application password (write only). */ - secret?: string; -} - -/** Settings for cloud authentication management */ -export interface AuthenticationDetailsProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - authenticationType: "awsCreds" | "awsAssumeRole" | "gcpCredentials"; - /** - * State of the multi-cloud connector - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly authenticationProvisioningState?: AuthenticationProvisioningState; - /** - * The permissions detected in the cloud account. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly grantedPermissions?: PermissionProperty[]; -} - -/** List of security contacts response */ -export interface SecurityContactList { - /** List of security contacts */ - value: SecurityContact[]; - /** - * 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; -} - -/** A valid notification source type */ -export interface NotificationsSource { - /** Polymorphic discriminator, which specifies the different types this object can be */ - sourceType: "Alert" | "AttackPath"; -} - -/** Defines whether to send email notifications from Microsoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ -export interface SecurityContactPropertiesNotificationsByRole { - /** Defines whether to send email notifications from AMicrosoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ - state?: State; - /** Defines which RBAC roles will get email notifications from Microsoft Defender for Cloud. List of allowed RBAC roles: */ - roles?: SecurityContactRole[]; -} - -/** Represents the software inventory of the virtual machine. */ -export interface SoftwaresList { - value?: Software[]; - /** - * 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; -} - -/** Metadata pertaining to creation and last modification of the resource. */ -export interface SystemData { - /** The identity that created the resource. */ - createdBy?: string; - /** The type of identity that created the resource. */ - createdByType?: CreatedByType; - /** The timestamp of resource creation (UTC). */ - createdAt?: Date; - /** The identity that last modified the resource. */ - lastModifiedBy?: string; - /** The type of identity that last modified the resource. */ - lastModifiedByType?: CreatedByType; - /** The timestamp of resource last modification (UTC) */ - lastModifiedAt?: Date; -} - -/** A list of Custom Assessment Automations */ -export interface CustomAssessmentAutomationsListResult { - /** - * Collection of Custom Assessment Automations - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: CustomAssessmentAutomation[]; - /** The link used to get the next page of operations. */ - nextLink?: string; -} - -/** describes the custom entity store assignment request */ -export interface CustomEntityStoreAssignmentRequest { - /** The principal assigned with entity store. If not provided, will use caller principal. Format of principal is: [AAD type]=[PrincipalObjectId];[TenantId] */ - principal?: string; -} - -/** A list of custom entity store assignments */ -export interface CustomEntityStoreAssignmentsListResult { - /** - * Collection of custom entity store assignments - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: CustomEntityStoreAssignment[]; - /** The link used to get the next page of operations. */ - nextLink?: string; -} - -/** List of all MDE onboarding data resources */ -export interface MdeOnboardingDataList { - /** List of the resources of the configuration or data needed to onboard the machine to MDE */ - value?: MdeOnboardingData[]; -} - -/** Page of a governance assignments list */ -export interface GovernanceAssignmentsList { - /** - * Collection of governance assignments in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: GovernanceAssignment[]; - /** - * 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; -} - -/** The ETA (estimated time of arrival) for remediation */ -export interface RemediationEta { - /** ETA for remediation. */ - eta: Date; - /** Justification for change of Eta. */ - justification: string; -} - -/** The governance email weekly notification configuration. */ -export interface GovernanceEmailNotification { - /** Exclude manager from weekly email notification. */ - disableManagerEmailNotification?: boolean; - /** Exclude owner from weekly email notification. */ - disableOwnerEmailNotification?: boolean; -} - -/** Describe the additional data of governance assignment - optional */ -export interface GovernanceAssignmentAdditionalData { - /** Ticket number associated with this governance assignment */ - ticketNumber?: number; - /** Ticket link associated with this governance assignment - for example: https://snow.com */ - ticketLink?: string; - /** The ticket status associated with this governance assignment - for example: Active */ - ticketStatus?: string; -} - -/** Page of a governance rules list */ -export interface GovernanceRuleList { - /** - * Collection of governance rules in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: GovernanceRule[]; - /** - * 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; -} - -/** Describe the owner source of governance rule */ -export interface GovernanceRuleOwnerSource { - /** The owner type for the governance rule owner source */ - type?: GovernanceRuleOwnerSourceType; - /** The source value e.g. tag key like owner name or email address */ - value?: string; -} - -/** The governance email weekly notification configuration */ -export interface GovernanceRuleEmailNotification { - /** Defines whether manager email notifications are disabled */ - disableManagerEmailNotification?: boolean; - /** Defines whether owner email notifications are disabled */ - disableOwnerEmailNotification?: boolean; -} - -/** The governance rule metadata */ -export interface GovernanceRuleMetadata { - /** - * Governance rule Created by object id (GUID) - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly createdBy?: string; - /** - * Governance rule creation date - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly createdOn?: Date; - /** - * Governance rule last updated by object id (GUID) - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly updatedBy?: string; - /** - * Governance rule last update date - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly updatedOn?: Date; -} - -/** Governance rule execution parameters */ -export interface ExecuteGovernanceRuleParams { - /** Describe if governance rule should be override */ - override?: boolean; -} - -/** Long run operation status of governance rule over a given scope */ -export interface OperationResultAutoGenerated { - /** - * The status of the long run operation result of governance rule - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly status?: OperationResult; -} - -/** Page of a security applications list */ -export interface ApplicationsList { - /** - * Collection of applications in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: Application[]; - /** - * 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; -} - -/** A status describing the success/failure of the enablement/disablement operation. */ -export interface OperationStatus { - /** The operation status code. */ - code?: string; - /** Additional information regarding the success/failure of the operation. */ - message?: string; -} - -/** List of SecurityOperator response. */ -export interface SecurityOperatorList { - /** List of SecurityOperator configurations */ - value: SecurityOperator[]; -} - -/** Identity for the resource. */ -export interface Identity { - /** - * The principal ID of resource identity. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly principalId?: string; - /** - * The tenant ID of resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly tenantId?: string; - /** The identity type. */ - type?: "SystemAssigned"; -} - -/** Rule results input. */ -export interface RuleResultsInput { - /** Take results from latest scan. */ - latestScan?: boolean; - /** - * Expected results to be inserted into the baseline. - * Leave this field empty it LatestScan == true. - */ - results?: string[][]; -} - -/** Rule results properties. */ -export interface RuleResultsProperties { - /** Expected results in the baseline. */ - results?: string[][]; -} - -/** A list of rules results. */ -export interface RulesResults { - /** List of rule results. */ - value?: RuleResults[]; -} - -/** Rules results input. */ -export interface RulesResultsInput { - /** Take results from latest scan. */ - latestScan?: boolean; - /** - * Expected results to be inserted into the baseline. - * Leave this field empty it LatestScan == true. - */ - results?: { [propertyName: string]: string[][] }; -} - -/** A vulnerability assessment scan record properties. */ -export interface ScanProperties { - /** The scan trigger type. */ - triggerType?: ScanTriggerType; - /** The scan status. */ - state?: ScanState; - /** The server name. */ - server?: string; - /** The database name. */ - database?: string; - /** The SQL version. */ - sqlVersion?: string; - /** The scan start time (UTC). */ - startTime?: Date; - /** Scan results are valid until end time (UTC). */ - endTime?: Date; - /** The number of failed rules with high severity. */ - highSeverityFailedRulesCount?: number; - /** The number of failed rules with medium severity. */ - mediumSeverityFailedRulesCount?: number; - /** The number of failed rules with low severity. */ - lowSeverityFailedRulesCount?: number; - /** The number of total passed rules. */ - totalPassedRulesCount?: number; - /** The number of total failed rules. */ - totalFailedRulesCount?: number; - /** The number of total rules assessed. */ - totalRulesCount?: number; - /** Baseline created for this database, and has one or more rules. */ - isBaselineApplied?: boolean; - /** Last scan time. */ - lastScanTime?: Date; -} - -/** A list of vulnerability assessment scan records. */ -export interface Scans { - /** List of vulnerability assessment scan records. */ - value?: Scan[]; -} - -/** A vulnerability assessment scan result properties for a single rule. */ -export interface ScanResultProperties { - /** The rule Id. */ - ruleId?: string; - /** The rule result status. */ - status?: RuleStatus; - /** Indicated whether the results specified here are trimmed. */ - isTrimmed?: boolean; - /** The results of the query that was run. */ - queryResults?: string[][]; - /** Remediation details. */ - remediation?: Remediation; - /** The rule result adjusted with baseline. */ - baselineAdjustedResult?: BaselineAdjustedResult; - /** vulnerability assessment rule metadata details. */ - ruleMetadata?: VaRule; -} - -/** Remediation details. */ -export interface Remediation { - /** Remediation description. */ - description?: string; - /** Remediation script. */ - scripts?: string[]; - /** Is remediation automated. */ - automated?: boolean; - /** Optional link to remediate in Azure Portal. */ - portalLink?: string; -} - -/** The rule result adjusted with baseline. */ -export interface BaselineAdjustedResult { - /** Baseline details. */ - baseline?: Baseline; - /** The rule result status. */ - status?: RuleStatus; - /** Results the are not in baseline. */ - resultsNotInBaseline?: string[][]; - /** Results the are in baseline. */ - resultsOnlyInBaseline?: string[][]; -} - -/** Baseline details. */ -export interface Baseline { - /** Expected results. */ - expectedResults?: string[][]; - /** Baseline update time (UTC). */ - updatedTime?: Date; -} - -/** vulnerability assessment rule metadata details. */ -export interface VaRule { - /** The rule Id. */ - ruleId?: string; - /** The rule severity. */ - severity?: RuleSeverity; - /** The rule category. */ - category?: string; - /** The rule type. */ - ruleType?: RuleType; - /** The rule title. */ - title?: string; - /** The rule description. */ - description?: string; - /** The rule rationale. */ - rationale?: string; - /** The rule query details. */ - queryCheck?: QueryCheck; - /** The benchmark references. */ - benchmarkReferences?: BenchmarkReference[]; -} - -/** The rule query details. */ -export interface QueryCheck { - /** The rule query. */ - query?: string; - /** Expected result. */ - expectedResult?: string[][]; - /** Column names of expected result. */ - columnNames?: string[]; -} - -/** The benchmark references. */ -export interface BenchmarkReference { - /** The benchmark name. */ - benchmark?: string; - /** The benchmark reference. */ - reference?: string; -} - -/** A list of vulnerability assessment scan results. */ -export interface ScanResults { - /** List of vulnerability assessment scan results. */ - value?: ScanResult[]; -} - -/** Request to update data sensitivity settings for sensitive data discovery */ -export interface UpdateSensitivitySettingsRequest { - /** List of selected sensitive info types' IDs. */ - sensitiveInfoTypesIds: string[]; - /** The order of the sensitivity threshold label. Any label at or above this order will be considered sensitive. If set to -1, sensitivity by labels is turned off */ - sensitivityThresholdLabelOrder?: number; - /** The id of the sensitivity threshold label. Any label at or above this rank will be considered sensitive. */ - sensitivityThresholdLabelId?: string; -} - -/** Data sensitivity settings for sensitive data discovery */ -export interface GetSensitivitySettingsResponse { - /** - * The ID of the sensitivity settings - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; - /** - * The type of the sensitivity settings - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; - /** - * The name of the sensitivity settings - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly name?: string; - /** The sensitivity settings properties */ - properties?: GetSensitivitySettingsResponseProperties; -} - -/** The sensitivity settings properties */ -export interface GetSensitivitySettingsResponseProperties { - /** List of selected sensitive info types' IDs. */ - sensitiveInfoTypesIds?: string[]; - /** The order of the sensitivity threshold label. Any label at or above this order will be considered sensitive. If set to -1, sensitivity by labels is turned off */ - sensitivityThresholdLabelOrder?: number; - /** The id of the sensitivity threshold label. Any label at or above this rank will be considered sensitive. */ - sensitivityThresholdLabelId?: string; - /** Microsoft information protection built-in and custom information types, labels, and integration status. */ - mipInformation?: GetSensitivitySettingsResponsePropertiesMipInformation; -} - -/** Microsoft information protection built-in and custom information types, labels, and integration status. */ -export interface GetSensitivitySettingsResponsePropertiesMipInformation { - /** Microsoft information protection integration status */ - mipIntegrationStatus?: MipIntegrationStatus; - /** List of Microsoft information protection sensitivity labels */ - labels?: Label[]; - /** List of custom user-defined information types */ - customInfoTypes?: InfoType[]; - /** List of pre-configured sensitive information types */ - builtInInfoTypes?: BuiltInInfoType[]; -} - -/** Microsoft information protection sensitivity label */ -export interface Label { - /** The display name of the label */ - name?: string; - /** The ID of the label */ - id?: string; - /** Labels are ordered by sensitivity level. The higher the order of the label, the more sensitive it is. */ - order?: number; -} - -/** Custom user-defined information type */ -export interface InfoType { - /** Display name of the info type */ - name?: string; - /** Id of the info type */ - id?: string; - /** Description of the info type */ - description?: string; -} - -/** Pre-configured sensitive information type */ -export interface BuiltInInfoType { - /** Display name of the info type */ - name?: string; - /** Id of the info type */ - id?: string; - /** Category of the built-in info type */ - type?: string; -} - -/** A list with a single sensitivity settings resource */ -export interface GetSensitivitySettingsListResponse { - value?: GetSensitivitySettingsResponse[]; -} - -/** Page of health reports list */ -export interface HealthReportsList { - /** - * Collection of health reports in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: HealthReport[]; - /** - * 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; -} - -/** The resource details of the health report */ -export interface ResourceDetailsAutoGenerated { - /** The status of the health report */ - source?: Source; - /** - * The azure id of the resource - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; - /** - * The id of the connector - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly connectorId?: string; -} - -/** The environment details of the resource */ -export interface EnvironmentDetails { - /** The native resource id of the resource (in case of Azure - the resource Id, in case of MC - the native resource id) */ - nativeResourceId?: string; - /** The hierarchy id of the connector (in case of Azure - the subscription Id, in case of MC - the hierarchyId id) */ - environmentHierarchyId?: string; - /** The organizational hierarchy id of the connector (in case of Azure - the subscription Id, in case of MC - the organizational hierarchyId id) */ - organizationalHierarchyId?: string; - /** The subscription Id */ - subscriptionId?: string; - /** The tenant Id */ - tenantId?: string; -} - -/** The classification of the health report */ -export interface HealthDataClassification { - /** The component describes the name of the agent/service that scans the issue */ - component?: string; - /** The scenario describes the health scenario issue of the component */ - scenario?: string; - /** The resource scope of the health report */ - scope?: string; -} - -/** The status of the health report */ -export interface StatusAutoGenerated { - /** The status of the health report */ - code?: StatusName; - /** - * The reason of the given status - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly reason?: string; - /** - * The date of when the resource was scanned in the last time - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly lastScannedDate?: Date; - /** - * The date of when the status of the health report was changed in the last time - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly statusChangeDate?: Date; - /** - * The date of when the resource of the health report was scanned in the first time - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly firstEvaluationDate?: Date; -} - -/** The issue that caused the resource to by unhealthy */ -export interface Issue { - /** The unique issue key */ - issueKey: string; - /** The issue name */ - issueName?: string; - /** The affected security values that MDC offers that will be affected by the issue, for example: recommendations, alerts, etc */ - securityValues?: string[]; - /** The issue description */ - issueDescription?: string; - /** Human readable description of what you should do to mitigate this health issue */ - remediationSteps?: string; - /** The remediation script to solve this issue */ - remediationScript?: string; - /** Additional data for the given issue. The additional data depends on the issue type */ - issueAdditionalData?: { [propertyName: string]: string }; -} - -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ -export interface ErrorResponse { - /** The error object. */ - error?: ErrorDetail; -} - -/** The error detail. */ -export interface ErrorDetail { - /** - * The error code. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly code?: string; - /** - * The error message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly message?: string; - /** - * The error target. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly target?: string; - /** - * The error details. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly details?: ErrorDetail[]; - /** - * The error additional info. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** List of RP resources which supports pagination. */ -export interface AzureDevOpsOrgListResponse { - /** Gets or sets list of resources. */ - value?: AzureDevOpsOrg[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** Azure DevOps Organization properties. */ -export interface AzureDevOpsOrgProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; - /** Configuration payload for PR Annotations. */ - actionableRemediation?: ActionableRemediation; -} - -/** Configuration payload for PR Annotations. */ -export interface ActionableRemediation { - /** - * ActionableRemediation Setting. - * None - the setting was never set. - * Enabled - ActionableRemediation is enabled. - * Disabled - ActionableRemediation is disabled. - */ - state?: ActionableRemediationState; - /** Gets or sets list of categories and severity levels. */ - categoryConfigurations?: CategoryConfiguration[]; - /** Repository branch configuration for PR Annotations. */ - branchConfiguration?: TargetBranchConfiguration; - /** - * Update Settings. - * - * Enabled - Resource should inherit configurations from parent. - * Disabled - Resource should not inherit configurations from parent. - */ - inheritFromParentState?: InheritFromParentState; -} - -/** Severity level per category configuration for PR Annotations. */ -export interface CategoryConfiguration { - /** Gets or sets minimum severity level for a given category. */ - minimumSeverityLevel?: string; - /** - * Rule categories. - * Code - code scanning results. - * Artifact scanning results. - * Dependencies scanning results. - * IaC results. - * Secrets scanning results. - * Container scanning results. - */ - category?: RuleCategory; -} - -/** Repository branch configuration for PR Annotations. */ -export interface TargetBranchConfiguration { - /** Gets or sets branches that should have annotations. */ - branchNames?: string[]; - /** - * Configuration of PR Annotations on default branch. - * - * Enabled - PR Annotations are enabled on the resource's default branch. - * Disabled - PR Annotations are disabled on the resource's default branch. - */ - annotateDefaultBranch?: AnnotateDefaultBranchState; -} - -/** Common fields that are returned in the response for all Azure Resource Manager resources */ -export interface ResourceAutoGenerated { - /** - * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; - /** - * The name of the resource - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly name?: string; - /** - * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; -} - -/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. (This also follows the OData error response format.). */ -export interface ErrorResponseAutoGenerated { - /** The error object. */ - error?: ErrorDetailAutoGenerated; -} - -/** The error detail. */ -export interface ErrorDetailAutoGenerated { - /** - * The error code. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly code?: string; - /** - * The error message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly message?: string; - /** - * The error target. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly target?: string; - /** - * The error details. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly details?: ErrorDetailAutoGenerated[]; - /** - * The error additional info. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly additionalInfo?: ErrorAdditionalInfo[]; -} - -/** List of RP resources which supports pagination. */ -export interface AzureDevOpsProjectListResponse { - /** Gets or sets list of resources. */ - value?: AzureDevOpsProject[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** Azure DevOps Project properties. */ -export interface AzureDevOpsProjectProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** Gets or sets parent Azure DevOps Organization name. */ - parentOrgName?: string; - /** - * Gets or sets Azure DevOps Project id. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly projectId?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; - /** Configuration payload for PR Annotations. */ - actionableRemediation?: ActionableRemediation; -} - -/** List of RP resources which supports pagination. */ -export interface AzureDevOpsRepositoryListResponse { - /** Gets or sets list of resources. */ - value?: AzureDevOpsRepository[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** Azure DevOps Repository properties. */ -export interface AzureDevOpsRepositoryProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** Gets or sets parent Azure DevOps Organization name. */ - parentOrgName?: string; - /** Gets or sets parent Azure DevOps Project name. */ - parentProjectName?: string; - /** - * Gets or sets Azure DevOps Repository id. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoId?: string; - /** - * Gets or sets Azure DevOps Repository url. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoUrl?: string; - /** - * Gets or sets Azure DevOps repository visibility, whether it is public or private etc. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly visibility?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; - /** Configuration payload for PR Annotations. */ - actionableRemediation?: ActionableRemediation; -} - -/** List of RP resources which supports pagination. */ -export interface DevOpsConfigurationListResponse { - /** Gets or sets list of resources. */ - value?: DevOpsConfiguration[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** DevOps Configuration properties. */ -export interface DevOpsConfigurationProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** Authorization payload. */ - authorization?: Authorization; - /** AutoDiscovery states. */ - autoDiscovery?: AutoDiscovery; - /** - * List of top-level inventory to select when AutoDiscovery is disabled. - * This field is ignored when AutoDiscovery is enabled. - */ - topLevelInventoryList?: string[]; -} - -/** Authorization payload. */ -export interface Authorization { - /** - * Gets or sets one-time OAuth code to exchange for refresh and access tokens. - * - * Only used during PUT/PATCH operations. The secret is cleared during GET. - */ - code?: string; -} - -/** List of RP resources which supports pagination. */ -export interface GitHubOwnerListResponse { - /** Gets or sets list of resources. */ - value?: GitHubOwner[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** GitHub Owner properties. */ -export interface GitHubOwnerProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** - * Gets or sets GitHub Owner url. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly ownerUrl?: string; - /** - * Gets or sets internal GitHub id. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly gitHubInternalId?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; -} - -/** List of RP resources which supports pagination. */ -export interface GitHubRepositoryListResponse { - /** Gets or sets list of resources. */ - value?: GitHubRepository[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** GitHub Repository properties. */ -export interface GitHubRepositoryProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** - * Gets or sets GitHub Repository id. - * - * This is a numeric id defined by Github. - * Eg: "123456". - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoId?: string; - /** - * Gets or sets GitHub Repository name. - * Eg: "new-repo-1". - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoName?: string; - /** - * Gets or sets GitHub Full Name. - * Repository name, prefixed with Owner name. - * Eg: "my-org/new-repo-1". - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoFullName?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; - /** - * Gets or sets GitHub Repository url. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly repoUrl?: string; - /** Gets or sets parent GitHub Owner name. */ - parentOwnerName?: string; -} - -/** List of RP resources which supports pagination. */ -export interface GitLabGroupListResponse { - /** Gets or sets list of resources. */ - value?: GitLabGroup[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** GitLab Group properties. */ -export interface GitLabGroupProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** - * Gets or sets the fully-qualified name of the Group object. - * - * This contains the entire namespace hierarchy where namespaces are separated by the '$' character. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly fullyQualifiedName?: string; - /** - * Gets or sets the human readable fully-qualified name of the Group object. - * - * This contains the entire namespace hierarchy as seen on GitLab UI where namespaces are separated by the '/' character. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly fullyQualifiedFriendlyName?: string; - /** - * Gets or sets the url of the GitLab Group. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly url?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; -} - -/** List of RP resources which supports pagination. */ -export interface GitLabProjectListResponse { - /** Gets or sets list of resources. */ - value?: GitLabProject[]; - /** Gets or sets next link to scroll over the results. */ - nextLink?: string; -} - -/** GitLab Project properties. */ -export interface GitLabProjectProperties { - /** - * Gets or sets resource status message. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusMessage?: string; - /** - * Gets or sets time when resource was last checked. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningStatusUpdateTimeUtc?: Date; - /** - * The provisioning state of the resource. - * - * Pending - Provisioning pending. - * Failed - Provisioning failed. - * Succeeded - Successful provisioning. - * Canceled - Provisioning canceled. - * PendingDeletion - Deletion pending. - * DeletionSuccess - Deletion successful. - * DeletionFailure - Deletion failure. - */ - provisioningState?: DevOpsProvisioningState; - /** - * Gets or sets the fully-qualified name of the project object. - * - * This contains the entire hierarchy where entities are separated by the '$' character. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly fullyQualifiedName?: string; - /** - * Gets or sets the human readable fully-qualified name of the Project object. - * - * This contains the entire namespace hierarchy as seen on GitLab UI where entities are separated by the '/' character. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly fullyQualifiedFriendlyName?: string; - /** - * Gets or sets the fully-qualified name of the project's parent group object. - * - * This contains the entire hierarchy where namespaces are separated by the '$' character. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly fullyQualifiedParentGroupName?: string; - /** - * Gets or sets the url of the GitLab Project. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly url?: string; - /** - * Details about resource onboarding status across all connectors. - * - * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. - * Onboarded - this resource has already been onboarded by the specified connector. - * NotOnboarded - this resource has not been onboarded to any connector. - * NotApplicable - the onboarding state is not applicable to the current endpoint. - */ - onboardingState?: OnboardingState; -} - -/** The current status of an async operation. */ -export interface OperationStatusResult { - /** Fully qualified ID for the async operation. */ - id?: string; - /** Name of the async operation. */ - name?: string; - /** Operation status. */ - status: string; - /** Percent of the operation that is complete. */ - percentComplete?: number; - /** The start time of the operation. */ - startTime?: Date; - /** The end time of the operation. */ - endTime?: Date; - /** The operations list. */ - operations?: OperationStatusResult[]; - /** If present, details of the operation error. */ - error?: ErrorDetailAutoGenerated; -} - -/** List of security connectors response. */ -export interface SecurityConnectorsList { - /** The list of security connectors under the given scope. */ - value: SecurityConnector[]; - /** - * 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; -} - -/** The security offering details */ -export interface CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: - | "CspmMonitorAws" - | "DefenderForContainersAws" - | "DefenderForServersAws" - | "DefenderForDatabasesAws" - | "InformationProtectionAws" - | "CspmMonitorGcp" - | "DefenderForServersGcp" - | "DefenderForDatabasesGcp" - | "DefenderForContainersGcp" - | "CspmMonitorGithub" - | "CspmMonitorAzureDevOps" - | "DefenderCspmAws" - | "DefenderCspmGcp" - | "DefenderForDevOpsGithub" - | "DefenderForDevOpsAzureDevOps" - | "CspmMonitorGitLab" - | "DefenderForDevOpsGitLab"; - /** - * The offering description. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly description?: string; -} - -/** The security connector environment data. */ -export interface EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: - | "AwsAccount" - | "GcpProject" - | "GithubScope" - | "AzureDevOpsScope" - | "GitlabScope"; -} - -/** List of compliance results response */ -export interface ComplianceResultList { - /** List of compliance results */ - value: ComplianceResult[]; - /** - * 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; -} - -/** List of device security groups */ -export interface DeviceSecurityGroupList { - /** List of device security group objects */ - value?: DeviceSecurityGroup[]; - /** - * 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; -} - -/** A custom alert rule. */ -export interface CustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: - | "ThresholdCustomAlertRule" - | "TimeWindowCustomAlertRule" - | "ListCustomAlertRule" - | "AllowlistCustomAlertRule" - | "DenylistCustomAlertRule" - | "ConnectionToIpNotAllowed" - | "ConnectionFromIpNotAllowed" - | "LocalUserNotAllowed" - | "ProcessNotAllowed" - | "ActiveConnectionsNotInAllowedRange" - | "AmqpC2DMessagesNotInAllowedRange" - | "MqttC2DMessagesNotInAllowedRange" - | "HttpC2DMessagesNotInAllowedRange" - | "AmqpC2DRejectedMessagesNotInAllowedRange" - | "MqttC2DRejectedMessagesNotInAllowedRange" - | "HttpC2DRejectedMessagesNotInAllowedRange" - | "AmqpD2CMessagesNotInAllowedRange" - | "MqttD2CMessagesNotInAllowedRange" - | "HttpD2CMessagesNotInAllowedRange" - | "DirectMethodInvokesNotInAllowedRange" - | "FailedLocalLoginsNotInAllowedRange" - | "FileUploadsNotInAllowedRange" - | "QueuePurgesNotInAllowedRange" - | "TwinUpdatesNotInAllowedRange" - | "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; -} - -/** List of Security analytics of your IoT Security solution */ -export interface IoTSecuritySolutionAnalyticsModelList { - /** List of Security analytics of your IoT Security solution */ - value: IoTSecuritySolutionAnalyticsModel[]; - /** - * 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; -} - -/** IoT Security solution analytics severity metrics. */ -export interface IoTSeverityMetrics { - /** Count of high severity alerts/recommendations. */ - high?: number; - /** Count of medium severity alerts/recommendations. */ - medium?: number; - /** Count of low severity alerts/recommendations. */ - low?: number; -} - -export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { - /** Aggregation of IoT Security solution device alert metrics by date. */ - date?: Date; - /** Device alert count by severity. */ - devicesMetrics?: IoTSeverityMetrics; -} - -/** Statistical information about the number of alerts per device during last set number of days. */ -export interface IoTSecurityAlertedDevice { - /** - * Device identifier. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - 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; -} - -/** Statistical information about the number of alerts per alert type during last set number of days */ -export interface IoTSecurityDeviceAlert { - /** - * Display name of the alert - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly alertDisplayName?: string; - /** - * Assessed Alert severity. - * 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; -} - -/** Statistical information about the number of recommendations per device, per recommendation type. */ -export interface IoTSecurityDeviceRecommendation { - /** - * Display name of the recommendation. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly recommendationDisplayName?: string; - /** - * Assessed recommendation severity. - * 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; -} - -/** List of IoT Security solution aggregated alert data. */ -export interface IoTSecurityAggregatedAlertList { - /** List of aggregated alerts data. */ - value: IoTSecurityAggregatedAlert[]; - /** - * 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; -} - -export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { - /** - * Name of the device. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - 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; -} - -/** A container holding only the Tags for a resource, allowing the user to update the tags. */ -export interface TagsResource { - /** Resource tags */ - tags?: { [propertyName: string]: string }; -} - -/** List of IoT Security solution aggregated recommendations. */ -export interface IoTSecurityAggregatedRecommendationList { - /** List of aggregated recommendations data. */ - value: IoTSecurityAggregatedRecommendation[]; - /** - * 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; -} - -/** List of IoT Security solutions. */ -export interface IoTSecuritySolutionsList { - /** List of IoT Security solutions */ - value: IoTSecuritySolutionModel[]; - /** - * 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; -} - -/** Properties of the IoT Security solution's user defined resources. */ -export interface UserDefinedResourcesProperties { - /** Azure Resource Graph query which represents the security solution's user defined resources. Required to start with "where type != "Microsoft.Devices/IotHubs"" */ - query: string | null; - /** List of Azure subscription ids on which the user defined resources query should be executed. */ - querySubscriptions: string[] | null; -} - -/** The type of IoT Security recommendation. */ -export interface RecommendationConfigurationProperties { - /** The type of IoT Security recommendation. */ - 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. */ - status: RecommendationConfigStatus; -} - -/** Properties of the additional workspaces. */ -export interface AdditionalWorkspacesProperties { - /** Workspace resource id */ - workspace?: string; - /** Workspace type. */ - type?: AdditionalWorkspaceType; - /** List of data types sent to workspace */ - dataTypes?: AdditionalWorkspaceDataType[]; -} - -/** Response for ListAdaptiveNetworkHardenings API service call */ -export interface AdaptiveNetworkHardeningsList { - /** A list of Adaptive Network Hardenings resources */ - value?: AdaptiveNetworkHardening[]; - /** The URL to get the next set of results */ - nextLink?: string; -} - -/** 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 */ - 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[]; -} - -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[]; -} - -/** List of all possible traffic between Azure resources */ -export interface AllowedConnectionsList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: AllowedConnectionsResource[]; - /** - * 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; -} - -/** 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[]; -} - -/** 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 an Azure resource with location */ -export interface 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; -} - -/** Represents a list of VM/server groups and set of rules that are Recommended by Microsoft Defender for Cloud to be allowed */ -export interface AdaptiveApplicationControlGroups { - value?: AdaptiveApplicationControlGroup[]; -} - -/** The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux. */ -export interface ProtectionMode { - /** The application control policy enforcement/protection mode of the machine group */ - exe?: EnforcementMode; - /** The application control policy enforcement/protection mode of the machine group */ - msi?: EnforcementMode; - /** The application control policy enforcement/protection mode of the machine group */ - script?: EnforcementMode; - /** The application control policy enforcement/protection mode of the machine group */ - executable?: EnforcementMode; -} - -/** Represents a summary of the alerts of the machine group */ -export interface AdaptiveApplicationControlIssueSummary { - /** An alert that machines within a group can have */ - issue?: AdaptiveApplicationControlIssue; - /** The number of machines in the group that have this alert */ - numberOfVms?: number; -} - -/** Represents a machine that is part of a machine group */ -export interface VmRecommendation { - /** The configuration status of the machines group or machine or rule */ - configurationStatus?: ConfigurationStatus; - /** The recommendation action of the machine or rule */ - recommendationAction?: RecommendationAction; - /** The full resource id of the machine */ - resourceId?: string; - /** The machine supportability of Enforce feature */ - enforcementSupport?: EnforcementSupport; -} - -/** Represents a path that is recommended to be allowed and its properties */ -export interface PathRecommendation { - /** The full path of the file, or an identifier of the application */ - path?: string; - /** The recommendation action of the machine or rule */ - action?: RecommendationAction; - /** The type of IoT Security recommendation. */ - type?: RecommendationType; - /** Represents the publisher information of a process/rule */ - publisherInfo?: PublisherInfo; - /** Whether the application is commonly run on the machine */ - common?: boolean; - userSids?: string[]; - usernames?: UserRecommendation[]; - /** The type of the file (for Linux files - Executable is used) */ - fileType?: FileType; - /** The configuration status of the machines group or machine or rule */ - configurationStatus?: ConfigurationStatus; -} - -/** 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; - /** The recommendation action of the machine or rule */ - recommendationAction?: RecommendationAction; -} - -export interface DiscoveredSecuritySolutionList { - value?: DiscoveredSecuritySolution[]; - /** - * 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 ExternalSecuritySolutionList { - value?: ExternalSecuritySolution[]; - /** - * 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; -} - -/** Describes an Azure resource with kind */ -export interface ExternalSecuritySolutionKindAutoGenerated { - /** The kind of the external solution */ - kind?: ExternalSecuritySolutionKind; -} - -export interface JitNetworkAccessPoliciesList { - value?: JitNetworkAccessPolicy[]; - /** - * 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 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; -} - -export interface JitNetworkAccessPortRule { - number: number; - 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; -} - -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; -} - -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[]; -} - -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 */ - status: Status; - /** A description of why the `status` has its value */ - statusReason: StatusReason; - /** The port which is mapped to this port's `number` in the Azure Firewall, if applicable */ - mappedPort?: number; -} - -export interface JitNetworkAccessPolicyInitiateRequest { - /** A list of virtual machines & ports to open access for */ - virtualMachines: JitNetworkAccessPolicyInitiateVirtualMachine[]; - /** The justification for making the initiate request */ - justification?: string; -} - -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[]; -} - -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; -} - -/** List of secure scores */ -export interface SecureScoresList { - /** - * Collection of secure scores in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: SecureScoreItem[]; - /** - * 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; -} - -/** List of security controls */ -export interface SecureScoreControlList { - /** - * Collection of security controls in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: SecureScoreControlDetails[]; - /** - * 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; -} - -/** The type of the security control (For example, BuiltIn) */ -export interface SecureScoreControlDefinitionSource { - /** The type of security control (for example, BuiltIn) */ - sourceType?: ControlType; -} - -/** Describes an Azure resource with kind */ -export interface AzureResourceLink { - /** - * Azure resource Id - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; -} - -/** List of security controls definition */ -export interface SecureScoreControlDefinitionList { - /** - * Collection of security controls definition in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: SecureScoreControlDefinitionItem[]; - /** - * 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 SecuritySolutionList { - value?: SecuritySolution[]; - /** - * 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 SecuritySolutionsReferenceDataList { - value?: SecuritySolutionsReferenceData[]; -} - -/** List of server vulnerability assessments */ -export interface ServerVulnerabilityAssessmentsList { - value?: ServerVulnerabilityAssessment[]; -} - -export interface TopologyList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: TopologyResource[]; - /** - * 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 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[]; -} - -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; -} - -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; -} - -/** List of security assessment metadata */ -export interface SecurityAssessmentMetadataResponseList { - /** NOTE: This property will not be serialized. It can only be populated by the server. */ - readonly value?: SecurityAssessmentMetadataResponse[]; - /** - * 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 SecurityAssessmentMetadataPropertiesResponsePublishDates { - ga?: string; - public: 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; - categories?: Categories[]; - /** The severity level of the assessment */ - severity: Severity; - /** The user impact of the assessment */ - userImpact?: UserImpact; - /** The implementation effort required to remediate this assessment */ - 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 */ - assessmentType: AssessmentType; - /** Describes the partner that created the assessment */ - partnerData?: SecurityAssessmentMetadataPartnerData; -} - -/** 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; -} - -/** Page of a security assessments list */ -export interface SecurityAssessmentList { - /** - * Collection of security assessments in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: SecurityAssessmentResponse[]; - /** - * 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; -} - -/** The result of the assessment */ -export interface AssessmentStatus { - /** Programmatic code for the status of the assessment */ - code: AssessmentStatusCode; - /** Programmatic code for the cause of the assessment status */ - cause?: string; - /** Human readable description of the assessment status */ - description?: string; -} - -/** Describes properties of an assessment. */ -export interface SecurityAssessmentPropertiesBase { - /** Details of the resource that was assessed */ - 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; - /** Additional data regarding the assessment */ - additionalData?: { [propertyName: string]: string }; - /** - * Links relevant to the assessment - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly links?: AssessmentLinks; - /** Describes properties of an assessment metadata. */ - metadata?: SecurityAssessmentMetadataProperties; - /** Data regarding 3rd party partner integration */ - partnersData?: SecurityAssessmentPartnerData; -} - -/** 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; -} - -/** List of security alerts */ -export interface AlertList { - /** describes security alert properties. */ - value?: Alert[]; - /** - * 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; -} - -/** A resource identifier for an alert which can be used to direct the alert to the right product exposure group (tenant, workspace, subscription etc.). */ -export interface ResourceIdentifier { - /** Polymorphic discriminator, which specifies the different types this object can be */ - type: "AzureResource" | "LogAnalytics"; -} - -/** Changing set of properties depending on the entity type. */ -export interface AlertEntity { - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; - /** - * Type of entity - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; -} - -/** Changing set of properties depending on the supportingEvidence type. */ -export interface AlertPropertiesSupportingEvidence { - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; - /** - * Type of the supportingEvidence - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; -} - -/** Alert Simulator request body. */ -export interface AlertSimulatorRequestBody { - /** Alert Simulator request body data. */ - properties?: AlertSimulatorRequestPropertiesUnion; -} - -/** Describes properties of an alert simulation request */ -export interface AlertSimulatorRequestProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "Bundles"; - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; -} - -/** Subscription settings list. */ -export interface SettingsList { - /** The settings list. */ - value?: SettingUnion[]; - /** - * 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; -} - -/** A page of a server vulnerability assessments settings list */ -export interface ServerVulnerabilityAssessmentsSettingsList { - /** - * A collection of server vulnerability assessments settings in this page - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: ServerVulnerabilityAssessmentsSettingUnion[]; - /** - * 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; -} - -/** Common fields that are returned in the response for all Azure Resource Manager resources */ -export interface ResourceAutoGenerated2 { - /** - * Fully qualified resource ID for the resource. E.g. "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}" - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly id?: string; - /** - * The name of the resource - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly name?: string; - /** - * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly type?: string; - /** - * Azure Resource Manager metadata containing createdBy and modifiedBy information. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; -} - -/** Page of a list of API collections as represented by Microsoft Defender for APIs. */ -export interface ApiCollectionList { - /** - * API collections in this page. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly value?: ApiCollection[]; - /** - * 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; -} - -/** A plan's extension properties */ -export interface Extension { - /** - * The extension name. Supported values are:

**AgentlessDiscoveryForKubernetes** - API-based discovery of information about Kubernetes cluster architecture, workload objects, and setup. Required for Kubernetes inventory, identity and network exposure detection, attack path analysis and risk hunting as part of the cloud security explorer. - * Available for CloudPosture plan.

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

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

**ContainerRegistriesVulnerabilityAssessments** - Provides vulnerability management for images stored in your container registries. - * Available for CloudPosture and Containers plans. - */ - name: string; - /** Indicates whether the extension is enabled. */ - isEnabled: IsEnabled; - /** Property values associated with the extension. */ - additionalExtensionProperties?: { [propertyName: string]: any }; - /** - * Optional. A status describing the success/failure of the extension's enablement/disablement operation. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationStatus?: OperationStatusAutoGenerated; -} - -/** A status describing the success/failure of the extension's enablement/disablement operation. */ -export interface OperationStatusAutoGenerated { - /** The operation status code. */ - code?: Code; - /** Additional information regarding the success/failure of the operation. */ - message?: string; -} - -/** List of pricing configurations response. */ -export interface PricingList { - /** List of pricing configurations */ - value: Pricing[]; -} - -/** 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; -} - -/** Governance rule's condition */ -export interface Condition { - /** The governance rule Condition's Property, e.g. Severity or AssessmentKey, see examples */ - property?: string; - /** The governance rule Condition's Value like severity Low, High or assessments keys, see examples */ - value?: string; - /** The governance rule Condition's Operator, for example Equals for severity or In for list of assessments, see examples */ - operator?: GovernanceRuleConditionOperator; -} - -/** Application's condition */ -export interface ApplicationCondition { - /** The application Condition's Property, e.g. ID, see examples */ - property?: string; - /** The application Condition's Value like IDs that contain some string, see examples */ - value?: string; - /** The application Condition's Operator, for example Contains for id or In for list of possible IDs, see examples */ - operator?: ApplicationConditionOperator; -} - -/** AzureDevOps Org Inventory Configuration. */ -export interface AzureDevOpsOrganizationConfiguration { - /** AutoDiscovery states. */ - autoDiscovery?: AutoDiscovery; - /** - * AzureDevOps Project Inventory Configuration. - * Dictionary of AzureDevOps project name to desired project configuration. - * If AutoDiscovery is Enabled, this field should be empty or null. - */ - projectConfigs?: { [propertyName: string]: AzureDevOpsProjectConfiguration }; -} - -/** AzureDevOps Project Inventory Configuration. */ -export interface AzureDevOpsProjectConfiguration { - /** AutoDiscovery states. */ - autoDiscovery?: AutoDiscovery; - /** - * AzureDevOps Repository Inventory Configuration. - * Dictionary of AzureDevOps repository name to desired repository configuration. - * If AutoDiscovery is Enabled, this field should be null or empty. - */ - repositoryConfigs?: { [propertyName: string]: BaseResourceConfiguration }; -} - -/** Base Resource Inventory configuration changes. */ -export interface BaseResourceConfiguration { - /** Onboarding states. */ - desiredOnboardingState?: DesiredOnboardingState; -} - -/** GitHub Owner Inventory Configuration. */ -export interface GitHubOwnerConfiguration { - /** AutoDiscovery states. */ - autoDiscovery?: AutoDiscovery; - /** - * GitHub Repository Inventory Configuration. - * Dictionary of GitHub repository name to desired repository configuration. - * If AutoDiscovery is Enabled, this field should be null or empty. - */ - repositoryConfigs?: { [propertyName: string]: BaseResourceConfiguration }; -} - -/** GitLab Group Inventory Configuration. */ -export interface GitLabGroupConfiguration { - /** AutoDiscovery states. */ - autoDiscovery?: AutoDiscovery; - /** - * GitLab Project Inventory Configuration. - * Dictionary of GitLab fully-qualified project name to desired project configuration. - * If AutoDiscovery is Enabled, this field should be null or empty. - */ - projectConfigs?: { [propertyName: string]: BaseResourceConfiguration }; -} - -/** The AWS organization data */ -export interface AwsOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Organization" | "Member"; -} - -/** The gcpOrganization data */ -export interface GcpOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Organization" | "Member"; -} - -/** The details about the project represented by the security connector */ -export interface GcpProjectDetails { - /** The unique GCP Project number */ - projectNumber?: string; - /** The GCP Project id */ - projectId?: string; - /** - * The GCP workload identity federation pool id - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly workloadIdentityPoolId?: string; - /** - * GCP project name - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly projectName?: string; -} - -/** The native cloud connection configuration */ -export interface CspmMonitorAwsOfferingNativeCloudConnection { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The kubernetes service connection configuration */ -export interface DefenderForContainersAwsOfferingKubernetesService { - /** The cloud role ARN in AWS for this feature used for provisioning resources */ - cloudRoleArn?: string; -} - -/** The kubernetes to scuba connection configuration */ -export interface DefenderForContainersAwsOfferingKubernetesScubaReader { - /** The cloud role ARN in AWS for this feature used for reading data */ - cloudRoleArn?: string; -} - -/** The cloudwatch to kinesis connection configuration */ -export interface DefenderForContainersAwsOfferingCloudWatchToKinesis { - /** The cloud role ARN in AWS used by CloudWatch to transfer data into Kinesis */ - cloudRoleArn?: string; -} - -/** The kinesis to s3 connection configuration */ -export interface DefenderForContainersAwsOfferingKinesisToS3 { - /** The cloud role ARN in AWS used by Kinesis to transfer data into S3 */ - cloudRoleArn?: string; -} - -/** The container vulnerability assessment configuration */ -export interface DefenderForContainersAwsOfferingContainerVulnerabilityAssessment { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The container vulnerability assessment task configuration */ -export interface DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The Microsoft Defender container image assessment configuration */ -export interface DefenderForContainersAwsOfferingMdcContainersImageAssessment { - /** Is Microsoft Defender container image assessment enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The Microsoft Defender container agentless discovery K8s configuration */ -export interface DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S { - /** Is Microsoft Defender container agentless discovery K8s enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The Defender for servers connection configuration */ -export interface DefenderForServersAwsOfferingDefenderForServers { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The ARC autoprovisioning configuration */ -export interface DefenderForServersAwsOfferingArcAutoProvisioning { - /** Is arc auto provisioning enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; - /** Configuration for servers Arc auto provisioning */ - configuration?: DefenderForServersAwsOfferingArcAutoProvisioningConfiguration; -} - -/** Configuration for servers Arc auto provisioning */ -export interface DefenderForServersAwsOfferingArcAutoProvisioningConfiguration { - /** Optional HTTP proxy endpoint to use for the Arc agent */ - proxy?: string; - /** Optional Arc private link scope resource id to link the Arc agent */ - privateLinkScope?: string; -} - -/** The Vulnerability Assessment autoprovisioning configuration */ -export interface DefenderForServersAwsOfferingVaAutoProvisioning { - /** Is Vulnerability Assessment auto provisioning enabled */ - enabled?: boolean; - /** configuration for Vulnerability Assessment autoprovisioning */ - configuration?: DefenderForServersAwsOfferingVaAutoProvisioningConfiguration; -} - -/** configuration for Vulnerability Assessment autoprovisioning */ -export interface DefenderForServersAwsOfferingVaAutoProvisioningConfiguration { - /** The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' */ - type?: Type; -} - -/** The Microsoft Defender for Endpoint autoprovisioning configuration */ -export interface DefenderForServersAwsOfferingMdeAutoProvisioning { - /** Is Microsoft Defender for Endpoint auto provisioning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Endpoint autoprovisioning */ - configuration?: Record; -} - -/** configuration for the servers offering subPlan */ -export interface DefenderForServersAwsOfferingSubPlan { - /** The available sub plans */ - type?: SubPlan; -} - -/** The Microsoft Defender for Server VM scanning configuration */ -export interface DefenderForServersAwsOfferingVmScanners { - /** Is Microsoft Defender for Server VM scanning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Server VM scanning */ - configuration?: DefenderForServersAwsOfferingVmScannersConfiguration; -} - -/** configuration for Microsoft Defender for Server VM scanning */ -export interface DefenderForServersAwsOfferingVmScannersConfiguration { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; - /** The scanning mode for the VM scan. */ - scanningMode?: ScanningMode; - /** VM tags that indicates that VM should not be scanned */ - exclusionTags?: { [propertyName: string]: string }; -} - -/** The ARC autoprovisioning configuration */ -export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning { - /** Is arc auto provisioning enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; - /** Configuration for servers Arc auto provisioning */ - configuration?: DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration; -} - -/** Configuration for servers Arc auto provisioning */ -export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration { - /** Optional http proxy endpoint to use for the Arc agent */ - proxy?: string; - /** Optional Arc private link scope resource id to link the Arc agent */ - privateLinkScope?: string; -} - -/** The RDS configuration */ -export interface DefenderFoDatabasesAwsOfferingRds { - /** Is RDS protection enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The databases data security posture management (DSPM) configuration */ -export interface DefenderFoDatabasesAwsOfferingDatabasesDspm { - /** Is databases data security posture management (DSPM) protection enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The native cloud connection configuration */ -export interface InformationProtectionAwsOfferingInformationProtection { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The native cloud connection configuration */ -export interface CspmMonitorGcpOfferingNativeCloudConnection { - /** The GCP workload identity provider id for the offering */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this offering */ - serviceAccountEmailAddress?: string; -} - -/** The Defender for servers connection configuration */ -export interface DefenderForServersGcpOfferingDefenderForServers { - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The ARC autoprovisioning configuration */ -export interface DefenderForServersGcpOfferingArcAutoProvisioning { - /** Is arc auto provisioning enabled */ - enabled?: boolean; - /** Configuration for servers Arc auto provisioning */ - configuration?: DefenderForServersGcpOfferingArcAutoProvisioningConfiguration; -} - -/** Configuration for servers Arc auto provisioning */ -export interface DefenderForServersGcpOfferingArcAutoProvisioningConfiguration { - /** Optional HTTP proxy endpoint to use for the Arc agent */ - proxy?: string; - /** Optional Arc private link scope resource id to link the Arc agent */ - privateLinkScope?: string; -} - -/** The Vulnerability Assessment autoprovisioning configuration */ -export interface DefenderForServersGcpOfferingVaAutoProvisioning { - /** Is Vulnerability Assessment auto provisioning enabled */ - enabled?: boolean; - /** configuration for Vulnerability Assessment autoprovisioning */ - configuration?: DefenderForServersGcpOfferingVaAutoProvisioningConfiguration; -} - -/** configuration for Vulnerability Assessment autoprovisioning */ -export interface DefenderForServersGcpOfferingVaAutoProvisioningConfiguration { - /** The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' */ - type?: Type; -} - -/** The Microsoft Defender for Endpoint autoprovisioning configuration */ -export interface DefenderForServersGcpOfferingMdeAutoProvisioning { - /** Is Microsoft Defender for Endpoint auto provisioning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Endpoint autoprovisioning */ - configuration?: Record; -} - -/** configuration for the servers offering subPlan */ -export interface DefenderForServersGcpOfferingSubPlan { - /** The available sub plans */ - type?: SubPlan; -} - -/** The Microsoft Defender for Server VM scanning configuration */ -export interface DefenderForServersGcpOfferingVmScanners { - /** Is Microsoft Defender for Server VM scanning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Server VM scanning */ - configuration?: DefenderForServersGcpOfferingVmScannersConfiguration; -} - -/** configuration for Microsoft Defender for Server VM scanning */ -export interface DefenderForServersGcpOfferingVmScannersConfiguration { - /** The scanning mode for the VM scan. */ - scanningMode?: ScanningMode; - /** VM tags that indicate that VM should not be scanned */ - exclusionTags?: { [propertyName: string]: string }; -} - -/** The ARC autoprovisioning configuration */ -export interface DefenderForDatabasesGcpOfferingArcAutoProvisioning { - /** Is arc auto provisioning enabled */ - enabled?: boolean; - /** Configuration for servers Arc auto provisioning */ - configuration?: DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration; -} - -/** Configuration for servers Arc auto provisioning */ -export interface DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration { - /** Optional http proxy endpoint to use for the Arc agent */ - proxy?: string; - /** Optional Arc private link scope resource id to link the Arc agent */ - privateLinkScope?: string; -} - -/** The native cloud connection configuration */ -export interface DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning { - /** The service account email address in GCP for this offering */ - serviceAccountEmailAddress?: string; - /** The GCP workload identity provider id for this offering */ - workloadIdentityProviderId?: string; -} - -/** The native cloud connection configuration */ -export interface DefenderForContainersGcpOfferingNativeCloudConnection { - /** The service account email address in GCP for this offering */ - serviceAccountEmailAddress?: string; - /** The GCP workload identity provider id for this offering */ - workloadIdentityProviderId?: string; -} - -/** The native cloud connection configuration */ -export interface DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection { - /** The data collection service account email address in GCP for this offering */ - serviceAccountEmailAddress?: string; - /** The data collection GCP workload identity provider id for this offering */ - workloadIdentityProviderId?: string; -} - -/** The Microsoft Defender Container image assessment configuration */ -export interface DefenderForContainersGcpOfferingMdcContainersImageAssessment { - /** Is Microsoft Defender container image assessment enabled */ - enabled?: boolean; - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The Microsoft Defender Container agentless discovery configuration */ -export interface DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S { - /** Is Microsoft Defender container agentless discovery enabled */ - enabled?: boolean; - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The Microsoft Defender for Server VM scanning configuration */ -export interface DefenderCspmAwsOfferingVmScanners { - /** Is Microsoft Defender for Server VM scanning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Server VM scanning */ - configuration?: DefenderCspmAwsOfferingVmScannersConfiguration; -} - -/** configuration for Microsoft Defender for Server VM scanning */ -export interface DefenderCspmAwsOfferingVmScannersConfiguration { - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; - /** The scanning mode for the VM scan. */ - scanningMode?: ScanningMode; - /** VM tags that indicates that VM should not be scanned */ - exclusionTags?: { [propertyName: string]: string }; -} - -/** The Microsoft Defender Data Sensitivity discovery configuration */ -export interface DefenderCspmAwsOfferingDataSensitivityDiscovery { - /** Is Microsoft Defender Data Sensitivity discovery enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The databases DSPM configuration */ -export interface DefenderCspmAwsOfferingDatabasesDspm { - /** Is databases DSPM protection enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** Defenders CSPM Cloud infrastructure entitlement management (CIEM) offering configurations */ -export interface DefenderCspmAwsOfferingCiem { - /** Defender CSPM CIEM discovery configuration */ - ciemDiscovery?: DefenderCspmAwsOfferingCiemDiscovery; - /** Defender CSPM CIEM AWS OIDC (open id connect) configuration */ - ciemOidc?: DefenderCspmAwsOfferingCiemOidc; -} - -/** Defender CSPM CIEM discovery configuration */ -export interface DefenderCspmAwsOfferingCiemDiscovery { - /** The cloud role ARN in AWS for CIEM discovery */ - cloudRoleArn?: string; -} - -/** Defender CSPM CIEM AWS OIDC (open id connect) configuration */ -export interface DefenderCspmAwsOfferingCiemOidc { - /** The cloud role ARN in AWS for CIEM oidc connection */ - cloudRoleArn?: string; - /** the azure active directory app name used of authenticating against AWS */ - azureActiveDirectoryAppName?: string; -} - -/** The Microsoft Defender container image assessment configuration */ -export interface DefenderCspmAwsOfferingMdcContainersImageAssessment { - /** Is Microsoft Defender container image assessment enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** The Microsoft Defender container agentless discovery K8s configuration */ -export interface DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S { - /** Is Microsoft Defender container agentless discovery K8s enabled */ - enabled?: boolean; - /** The cloud role ARN in AWS for this feature */ - cloudRoleArn?: string; -} - -/** GCP Defenders CSPM Cloud infrastructure entitlement management (CIEM) discovery offering configurations */ -export interface DefenderCspmGcpOfferingCiemDiscovery { - /** The GCP workload identity provider id for CIEM discovery offering */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for CIEM discovery offering */ - serviceAccountEmailAddress?: string; - /** the azure active directory app name used of authenticating against GCP workload identity federation */ - azureActiveDirectoryAppName?: string; -} - -/** The Microsoft Defender for Server VM scanning configuration */ -export interface DefenderCspmGcpOfferingVmScanners { - /** Is Microsoft Defender for Server VM scanning enabled */ - enabled?: boolean; - /** configuration for Microsoft Defender for Server VM scanning */ - configuration?: DefenderCspmGcpOfferingVmScannersConfiguration; -} - -/** configuration for Microsoft Defender for Server VM scanning */ -export interface DefenderCspmGcpOfferingVmScannersConfiguration { - /** The scanning mode for the VM scan. */ - scanningMode?: ScanningMode; - /** VM tags that indicates that VM should not be scanned */ - exclusionTags?: { [propertyName: string]: string }; -} - -/** The Microsoft Defender Data Sensitivity discovery configuration */ -export interface DefenderCspmGcpOfferingDataSensitivityDiscovery { - /** Is Microsoft Defender Data Sensitivity discovery enabled */ - enabled?: boolean; - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The Microsoft Defender Container image assessment configuration */ -export interface DefenderCspmGcpOfferingMdcContainersImageAssessment { - /** Is Microsoft Defender container image assessment enabled */ - enabled?: boolean; - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The Microsoft Defender Container agentless discovery configuration */ -export interface DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S { - /** Is Microsoft Defender container agentless discovery enabled */ - enabled?: boolean; - /** The workload identity provider id in GCP for this feature */ - workloadIdentityProviderId?: string; - /** The service account email address in GCP for this feature */ - serviceAccountEmailAddress?: string; -} - -/** The solution properties (correspond to the solution kind) */ -export interface ExternalSecuritySolutionProperties { - /** Describes unknown properties. The value of an unknown property can be of "any" type. */ - [property: string]: any; - deviceVendor?: string; - deviceType?: string; - /** Represents an OMS workspace to which the solution is connected */ - workspace?: ConnectedWorkspace; -} - -/** Represents an OMS workspace to which the solution is connected */ -export interface ConnectedWorkspace { - /** Azure resource ID of the connected OMS workspace */ - id?: string; -} - -/** Describes an Azure resource with kind */ -export interface AadConnectivityStateAutoGenerated { - /** The connectivity state of the external AAD solution */ - connectivityState?: AadConnectivityState; -} - -/** Calculation result data */ -export interface SecureScoreControlScore { - /** - * Maximum control score (0..10) - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly max?: number; - /** - * Actual score for the control = (achieved points / total points) * max score. if total points is zeroed, the return number is 0.00 - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly current?: number; - /** - * Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly percentage?: number; -} - -/** The ASC location of the subscription is in the "name" field */ -export interface AscLocation extends Resource { - /** An empty set of properties */ - properties?: Record; -} - -/** Security task that we recommend to do in order to strengthen security */ -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; - /** Changing set of properties, depending on the task type that is derived from the name field */ - 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; -} - -/** Auto provisioning setting */ -export interface AutoProvisioningSetting extends Resource { - /** Describes what kind of security agent provisioning action to take */ - autoProvision?: AutoProvision; -} - -/** Compliance of a scope */ -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[]; -} - -/** 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 }; -} - -/** 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; -} - -/** Describes the suppression rule */ -export interface AlertsSuppressionRule extends Resource { - /** Type of the alert to automatically suppress. For all alert types, use '*' */ - alertType?: string; - /** - * The last time this rule was modified - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly lastModifiedUtc?: Date; - /** Expiration date of the rule, if value is not provided or provided as null there will no expiration at all */ - expirationDateUtc?: Date; - /** The reason for dismissing the alert */ - reason?: string; - /** Possible states of the rule */ - state?: RuleState; - /** Any comment regarding the rule */ - comment?: string; - /** The suppression conditions */ - suppressionAlertsScope?: SuppressionAlertsScope; -} - -/** Describes an Azure tracked resource. */ -export interface TrackedResource - extends Resource, - AzureTrackedResourceLocation, - KindAutoGenerated, - ETag, - Tags {} - -/** Regulatory compliance standard details and state */ -export interface RegulatoryComplianceStandard extends Resource { - /** Aggregative state based on the standard's supported controls states */ - 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 */ - 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 */ - 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; -} - -/** 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 idPropertiesId?: 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 of the sub-assessment */ - 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; - /** Details of the resource that was assessed */ - resourceDetails?: ResourceDetailsUnion; - /** Details of the sub-assessment */ - additionalData?: AdditionalDataUnion; -} - -/** The connector setting */ -export interface ConnectorSetting extends Resource { - /** Settings for hybrid compute management. These settings are relevant only for Arc autoProvision (Hybrid Compute). */ - hybridComputeSettings?: HybridComputeSettingsProperties; - /** Settings for authentication management, these settings are relevant only for the cloud connector. */ - authenticationDetails?: AuthenticationDetailsPropertiesUnion; -} - -/** Contact details and configurations for notifications coming from Microsoft Defender for Cloud. */ -export interface SecurityContact extends Resource { - /** List of email addresses which will get notifications from Microsoft Defender for Cloud by the configurations defined in this security contact. */ - emails?: string; - /** The security contact's phone number */ - phone?: string; - /** Indicates whether the security contact is enabled. */ - isEnabled?: boolean; - /** A collection of sources types which evaluate the email notification. */ - notificationsSources?: NotificationsSourceUnion[]; - /** Defines whether to send email notifications from Microsoft Defender for Cloud to persons with specific RBAC roles on the subscription. */ - notificationsByRole?: SecurityContactPropertiesNotificationsByRole; -} - -/** Represents a software data */ -export interface Software extends Resource { - /** Unique identifier for the virtual machine in the service. */ - deviceId?: string; - /** Platform of the operating system running on the device. */ - osPlatform?: string; - /** Name of the software vendor. */ - vendor?: string; - /** Name of the software product. */ - softwareName?: string; - /** Version number of the software product. */ - version?: string; - /** End of support status. */ - endOfSupportStatus?: EndOfSupportStatus; - /** The end of support date in case the product is upcoming end of support. */ - endOfSupportDate?: string; - /** Number of weaknesses. */ - numberOfKnownVulnerabilities?: number; - /** First time that the software was seen in the device. */ - firstSeenAt?: string; -} - -/** Custom Assessment Automation */ -export interface CustomAssessmentAutomation extends Resource { - /** - * Azure Resource Manager metadata containing createdBy and modifiedBy information. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** GZip encoded KQL query representing the assessment automation results required. */ - compressedQuery?: string; - /** Relevant cloud for the custom assessment automation. */ - supportedCloud?: SupportedCloudEnum; - /** The severity to relate to the assessments generated by this assessment automation. */ - severity?: SeverityEnum; - /** The display name of the assessments generated by this assessment automation. */ - displayName?: string; - /** The description to relate to the assessments generated by this assessment automation. */ - description?: string; - /** The remediation description to relate to the assessments generated by this assessment automation. */ - remediationDescription?: string; - /** The assessment metadata key used when an assessment is generated for this assessment automation. */ - assessmentKey?: string; -} - -/** Custom Assessment Automation request */ -export interface CustomAssessmentAutomationRequest extends Resource { - /** Base 64 encoded KQL query representing the assessment automation results required. */ - compressedQuery?: string; - /** Relevant cloud for the custom assessment automation. */ - supportedCloud?: SupportedCloudEnum; - /** The severity to relate to the assessments generated by this assessment automation. */ - severity?: SeverityEnum; - /** The display name of the assessments generated by this assessment automation. */ - displayName?: string; - /** The description to relate to the assessments generated by this assessment automation. */ - description?: string; - /** The remediation description to relate to the assessments generated by this assessment automation. */ - remediationDescription?: string; -} - -/** Custom entity store assignment */ -export interface CustomEntityStoreAssignment extends Resource { - /** - * Azure Resource Manager metadata containing createdBy and modifiedBy information. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** The principal assigned with entity store. Format of principal is: [AAD type]=[PrincipalObjectId];[TenantId] */ - principal?: string; - /** The link to entity store database. */ - entityStoreDatabaseLink?: string; -} - -/** The resource of the configuration or data needed to onboard the machine to MDE */ -export interface MdeOnboardingData extends Resource { - /** The onboarding package used to onboard Windows machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ - onboardingPackageWindows?: Uint8Array; - /** The onboarding package used to onboard Linux machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ - onboardingPackageLinux?: Uint8Array; -} - -/** Governance assignment over a given scope */ -export interface GovernanceAssignment extends Resource { - /** The Owner for the governance assignment - e.g. user@contoso.com - see example */ - owner?: string; - /** The remediation due-date - after this date Secure Score will be affected (in case of active grace-period) */ - remediationDueDate?: Date; - /** The ETA (estimated time of arrival) for remediation (optional), see example */ - remediationEta?: RemediationEta; - /** Defines whether there is a grace period on the governance assignment */ - isGracePeriod?: boolean; - /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ - governanceEmailNotification?: GovernanceEmailNotification; - /** The additional data for the governance assignment - e.g. links to ticket (optional), see example */ - additionalData?: GovernanceAssignmentAdditionalData; -} - -/** Governance rule over a given scope */ -export interface GovernanceRule extends Resource { - /** - * The tenantId (GUID) - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly tenantId?: string; - /** Display name of the governance rule */ - displayName?: string; - /** Description of the governance rule */ - description?: string; - /** Governance rule remediation timeframe - this is the time that will affect on the grace-period duration e.g. 7.00:00:00 - means 7 days */ - remediationTimeframe?: string; - /** Defines whether there is a grace period on the governance rule */ - isGracePeriod?: boolean; - /** The governance rule priority, priority to the lower number. Rules with the same priority on the same scope will not be allowed */ - rulePriority?: number; - /** Defines whether the rule is active/inactive */ - isDisabled?: boolean; - /** The rule type of the governance rule, defines the source of the rule e.g. Integrated */ - ruleType?: GovernanceRuleType; - /** The governance rule source, what the rule affects, e.g. Assessments */ - sourceResourceType?: GovernanceRuleSourceResourceType; - /** Excluded scopes, filter out the descendants of the scope (on management scopes) */ - excludedScopes?: string[]; - /** The governance rule conditionSets - see examples */ - conditionSets?: Record[]; - /** Defines whether the rule is management scope rule (master connector as a single scope or management scope) */ - includeMemberScopes?: boolean; - /** The owner source for the governance rule - e.g. Manually by user@contoso.com - see example */ - ownerSource?: GovernanceRuleOwnerSource; - /** The email notifications settings for the governance rule, states whether to disable notifications for mangers and owners */ - governanceEmailNotification?: GovernanceRuleEmailNotification; - /** The governance rule metadata */ - metadata?: GovernanceRuleMetadata; -} - -/** Security Application over a given scope */ -export interface Application extends Resource { - /** display name of the application */ - displayName?: string; - /** description of the application */ - description?: string; - /** The application source, what it affects, e.g. Assessments */ - sourceResourceType?: ApplicationSourceResourceType; - /** The application conditionSets - see examples */ - conditionSets?: Record[]; -} - -/** The Defender for Storage resource. */ -export interface DefenderForStorageSetting extends Resource { - /** Indicates whether Defender for Storage is enabled on this storage account. */ - isEnabledPropertiesIsEnabled?: boolean; - /** Indicates whether the settings defined for this storage account should override the settings defined for the subscription. */ - overrideSubscriptionLevelSettings?: boolean; - /** Indicates whether Sensitive Data Discovery should be enabled. */ - isEnabledPropertiesSensitiveDataDiscoveryIsEnabled?: boolean; - /** - * Upon failure or partial success. Additional data describing Sensitive Data Discovery enable/disable operation. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationStatusPropertiesSensitiveDataDiscoveryOperationStatus?: OperationStatus; - /** Optional. Resource id of an Event Grid Topic to send scan results to. */ - scanResultsEventGridTopicResourceId?: string; - /** - * Upon failure or partial success. Additional data describing Malware Scanning enable/disable operation. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly operationStatusPropertiesMalwareScanningOperationStatus?: OperationStatus; - /** Indicates whether On Upload malware scanning should be enabled. */ - isEnabledPropertiesMalwareScanningOnUploadIsEnabled?: boolean; - /** Defines the max GB to be scanned per Month. Set to -1 if no capping is needed. */ - capGBPerMonth?: number; -} - -/** Security operator under a given subscription and pricing */ -export interface SecurityOperator extends Resource { - /** Identity for the resource. */ - identity?: Identity; -} - -/** Rule results. */ -export interface RuleResults extends Resource { - /** Rule results properties. */ - properties?: RuleResultsProperties; -} - -/** A vulnerability assessment scan record. */ -export interface Scan extends Resource { - /** A vulnerability assessment scan record properties. */ - properties?: ScanProperties; -} - -/** A vulnerability assessment scan result for a single rule. */ -export interface ScanResult extends Resource { - /** A vulnerability assessment scan result properties for a single rule. */ - properties?: ScanResultProperties; -} - -/** The health report resource */ -export interface HealthReport extends Resource { - /** The resource details of the health report */ - resourceDetails?: ResourceDetailsAutoGenerated; - /** The environment details of the resource */ - environmentDetails?: EnvironmentDetails; - /** The classification of the health report */ - healthDataClassification?: HealthDataClassification; - /** The status of the health report */ - status?: StatusAutoGenerated; - /** The affected defenders plans by unhealthy report */ - affectedDefendersPlans?: string[]; - /** The affected defenders sub plans by unhealthy report */ - affectedDefendersSubPlans?: string[]; - /** - * Additional data for the given health report, this field can include more details on the resource and the health scenario. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly reportAdditionalData?: { [propertyName: string]: string }; - /** A collection of the issues in the report */ - issues?: Issue[]; -} - -/** a compliance result */ -export interface ComplianceResult extends Resource { - /** - * The status of the resource regarding a single assessment - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resourceStatus?: ResourceStatus; -} - -/** The Advanced Threat Protection resource. */ -export interface AdvancedThreatProtectionSetting extends Resource { - /** Indicates whether Advanced Threat Protection is enabled. */ - isEnabled?: boolean; -} - -/** The device security group resource */ -export interface DeviceSecurityGroup extends Resource { - /** The list of custom alert threshold rules. */ - thresholdRules?: ThresholdCustomAlertRuleUnion[]; - /** The list of custom alert time-window rules. */ - timeWindowRules?: TimeWindowCustomAlertRuleUnion[]; - /** The allow-list custom alert rules. */ - allowlistRules?: AllowlistCustomAlertRuleUnion[]; - /** The deny-list custom alert rules. */ - denylistRules?: DenylistCustomAlertRule[]; -} - -/** Security analytics of your IoT Security solution */ -export interface IoTSecuritySolutionAnalyticsModel extends Resource { - /** - * Security analytics of your IoT Security solution. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - 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[]; -} - -/** Security Solution Aggregated Alert information */ -export interface IoTSecurityAggregatedAlert extends Resource, TagsResource { - /** - * 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. - * 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[]; -} - -/** IoT Security solution recommendation information. */ -export interface IoTSecurityAggregatedRecommendation - extends Resource, - TagsResource { - /** 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. - * 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; -} - -/** IoT Security solution configuration and resource information. */ -export interface IoTSecuritySolutionModel extends Resource, TagsResource { - /** The resource location. */ - location?: string; - /** - * Azure Resource Manager metadata containing createdBy and modifiedBy information. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** Workspace resource ID */ - workspace?: string; - /** Resource display name. */ - displayName?: string; - /** Status of the IoT Security solution. */ - status?: SecuritySolutionStatus; - /** List of additional options for exporting to workspace data. */ - export?: ExportData[]; - /** Disabled data sources. Disabling these data sources compromises the system. */ - disabledDataSources?: DataSource[]; - /** IoT Hub resource IDs */ - iotHubs?: string[]; - /** Properties of the IoT Security solution's user defined resources. */ - 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[]; - /** List of the configuration status for each recommendation type. */ - recommendationsConfiguration?: RecommendationConfigurationProperties[]; - /** Unmasked IP address logging status */ - unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; - /** List of additional workspaces */ - additionalWorkspaces?: AdditionalWorkspacesProperties[]; -} - -/** 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[]; -} - -/** The resource whose properties describes the allowed traffic between Azure resources */ -export interface AllowedConnectionsResource extends Resource, Location { - /** - * 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[]; -} - -export interface AdaptiveApplicationControlGroup extends Resource, Location { - /** The application control policy enforcement/protection mode of the machine group */ - enforcementMode?: EnforcementMode; - /** The protection mode of the collection/file types. Exe/Msi/Script are used for Windows, Executable is used for Linux. */ - protectionMode?: ProtectionMode; - /** - * The configuration status of the machines group or machine or rule - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly configurationStatus?: ConfigurationStatus; - /** - * The initial recommendation status of the machine group or machine - * 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?: AdaptiveApplicationControlIssueSummary[]; - /** - * The source type of the machine group - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly sourceSystem?: SourceSystem; - vmRecommendations?: VmRecommendation[]; - pathRecommendations?: PathRecommendation[]; -} - -export interface DiscoveredSecuritySolution extends Resource, Location { - /** The security family of the discovered solution */ - securityFamily: SecurityFamily; - /** The security solutions' image offer */ - offer: string; - /** The security solutions' image publisher */ - publisher: string; - /** The security solutions' image sku */ - sku: string; -} - -/** Represents a security solution external to Microsoft Defender for Cloud which sends information to an OMS workspace and whose data is displayed by Microsoft Defender for Cloud. */ -export interface ExternalSecuritySolution - extends Resource, - ExternalSecuritySolutionKindAutoGenerated, - Location {} - -export interface JitNetworkAccessPolicy - extends Resource, - KindAutoGenerated, - Location { - /** 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; -} - -/** Secure score item data model */ -export interface SecureScoreItem extends Resource { - /** - * The initiative’s name - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly displayName?: string; - /** - * The relative weight for each subscription. Used when calculating an aggregated secure score for multiple subscriptions. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly weight?: number; - /** - * Maximum score available - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly max?: number; - /** - * Current score - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly current?: number; - /** - * Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly percentage?: number; -} - -/** Information about the security control. */ -export interface SecureScoreControlDefinitionItem extends Resource { - /** - * User friendly display name of the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly displayName?: string; - /** - * User friendly description of the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly description?: string; - /** - * Maximum control score (0..10) - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly maxScore?: number; - /** - * Source object from which the control was created - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly source?: SecureScoreControlDefinitionSource; - /** - * Array of assessments metadata IDs that are included in this security control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly assessmentDefinitions?: AzureResourceLink[]; -} - -/** Details of the security control, its score, and the health status of the relevant resources. */ -export interface SecureScoreControlDetails extends Resource { - /** - * User friendly display name of the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly displayName?: string; - /** - * Number of healthy resources in the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly healthyResourceCount?: number; - /** - * Number of unhealthy resources in the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly unhealthyResourceCount?: number; - /** - * Number of not applicable resources in the control - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly notApplicableResourceCount?: number; - /** - * The relative weight for this specific control in each of your subscriptions. Used when calculating an aggregated score for this control across all of your subscriptions. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly weight?: number; - /** Information about the security control. */ - definition?: SecureScoreControlDefinitionItem; - /** - * Maximum score available - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly max?: number; - /** - * Current score - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly current?: number; - /** - * Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly percentage?: number; -} - -export interface SecuritySolution extends Resource, Location { - /** The security family of the security solution */ - securityFamily?: SecurityFamily; - /** The security family provisioning State */ - provisioningState?: ProvisioningState; - /** The security solutions' template */ - template?: string; - /** The security solutions' status */ - protectionStatus?: string; -} - -export interface SecuritySolutionsReferenceData extends Resource, Location { - /** The security family of the security solution */ - securityFamily: SecurityFamily; - /** The security solutions' vendor name */ - alertVendorName: string; - /** The security solutions' package info url */ - packageInfoUrl: string; - /** The security solutions' product name */ - productName: string; - /** The security solutions' publisher */ - publisher: string; - /** The security solutions' publisher display name */ - publisherDisplayName: string; - /** The security solutions' template */ - template: string; -} - -/** Describes the server vulnerability assessment details on a resource */ -export interface ServerVulnerabilityAssessment extends Resource { - /** - * The provisioningState of the vulnerability assessment capability on the VM - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; -} - -export interface TopologyResource extends Resource, Location { - /** - * 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[]; -} - -/** Security assessment metadata response */ -export interface SecurityAssessmentMetadataResponse 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; - categories?: Categories[]; - /** The severity level of the assessment */ - severity?: Severity; - /** The user impact of the assessment */ - userImpact?: UserImpact; - /** The implementation effort required to remediate this assessment */ - 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 */ - assessmentType?: AssessmentType; - /** Describes the partner that created the assessment */ - partnerData?: SecurityAssessmentMetadataPartnerData; - publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; - plannedDeprecationDate?: string; - tactics?: Tactics[]; - techniques?: Techniques[]; -} - -/** Security assessment on a resource - response format */ -export interface SecurityAssessmentResponse extends Resource { - /** Details of the resource that was assessed */ - 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; - /** Additional data regarding the assessment */ - additionalData?: { [propertyName: string]: string }; - /** - * Links relevant to the assessment - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly links?: AssessmentLinks; - /** Describes properties of an assessment metadata. */ - metadata?: SecurityAssessmentMetadataProperties; - /** Data regarding 3rd party partner integration */ - partnersData?: SecurityAssessmentPartnerData; - /** The result of the assessment */ - status?: AssessmentStatusResponse; -} - -/** Security assessment on a resource */ -export interface SecurityAssessment extends Resource { - /** Details of the resource that was assessed */ - 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; - /** Additional data regarding the assessment */ - additionalData?: { [propertyName: string]: string }; - /** - * Links relevant to the assessment - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly links?: AssessmentLinks; - /** Describes properties of an assessment metadata. */ - metadata?: SecurityAssessmentMetadataProperties; - /** Data regarding 3rd party partner integration */ - partnersData?: SecurityAssessmentPartnerData; - /** The result of the assessment */ - status?: AssessmentStatus; -} - -/** Security alert */ -export interface Alert extends Resource { - /** - * Schema version. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly version?: string; - /** - * Unique identifier for the detection logic (all alert instances from the same detection logic will have the same alertType). - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly alertType?: string; - /** - * Unique identifier for the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemAlertId?: string; - /** - * The name of Azure Security Center pricing tier which powering this alert. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-pricing - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly productComponentName?: string; - /** - * The display name of the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly alertDisplayName?: string; - /** - * Description of the suspicious activity that was detected. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly description?: string; - /** - * The risk level of the threat that was detected. Learn more: https://docs.microsoft.com/en-us/azure/security-center/security-center-alerts-overview#how-are-alerts-classified. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly severity?: AlertSeverity; - /** - * The kill chain related intent behind the alert. For list of supported values, and explanations of Azure Security Center's supported kill chain intents. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly intent?: Intent; - /** - * The UTC time of the first event or activity included in the alert in ISO8601 format. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly startTimeUtc?: Date; - /** - * The UTC time of the last event or activity included in the alert in ISO8601 format. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly endTimeUtc?: Date; - /** - * The resource identifiers that can be used to direct the alert to the right product exposure group (tenant, workspace, subscription etc.). There can be multiple identifiers of different type per alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resourceIdentifiers?: ResourceIdentifierUnion[]; - /** - * Manual action items to take to remediate the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly remediationSteps?: string[]; - /** - * The name of the vendor that raises the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly vendorName?: string; - /** - * The life cycle status of the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly status?: AlertStatus; - /** - * Links related to the alert - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly extendedLinks?: { [propertyName: string]: string }[]; - /** - * A direct link to the alert page in Azure Portal. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly alertUri?: string; - /** - * The UTC time the alert was generated in ISO8601 format. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly timeGeneratedUtc?: Date; - /** - * The name of the product which published this alert (Microsoft Sentinel, Microsoft Defender for Identity, Microsoft Defender for Endpoint, Microsoft Defender for Office, Microsoft Defender for Cloud Apps, and so on). - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly productName?: string; - /** - * The UTC processing end time of the alert in ISO8601 format. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly processingEndTimeUtc?: Date; - /** - * A list of entities related to the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly entities?: AlertEntity[]; - /** - * This field determines whether the alert is an incident (a compound grouping of several alerts) or a single alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly isIncident?: boolean; - /** - * Key for corelating related alerts. Alerts with the same correlation key considered to be related. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly correlationKey?: string; - /** Custom properties for the alert. */ - extendedProperties?: { [propertyName: string]: string }; - /** - * The display name of the resource most related to this alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly compromisedEntity?: string; - /** - * kill chain related techniques behind the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly techniques?: string[]; - /** - * Kill chain related sub-techniques behind the alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly subTechniques?: string[]; - /** Changing set of properties depending on the supportingEvidence type. */ - supportingEvidence?: AlertPropertiesSupportingEvidence; -} - -/** The kind of the security setting */ -export interface Setting extends Resource { - /** the kind of the settings string */ - kind: SettingKind; -} - -/** An API collection as represented by Microsoft Defender for APIs. */ -export interface ApiCollection extends Resource { - /** - * Gets the provisioning state of the API collection. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly provisioningState?: ProvisioningState; - /** - * The display name of the API collection. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly displayName?: string; - /** - * The resource Id of the resource from where this API collection was discovered. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly discoveredVia?: string; - /** - * The base URI for this API collection. All endpoints of this API collection extend this base URI. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly baseUrl?: string; - /** - * The number of API endpoints discovered in this API collection. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly numberOfApiEndpoints?: number; - /** - * The number of API endpoints in this API collection that have not received any API traffic in the last 30 days. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly numberOfInactiveApiEndpoints?: number; - /** - * The number of API endpoints in this API collection that are unauthenticated. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly numberOfUnauthenticatedApiEndpoints?: number; - /** - * The number of API endpoints in this API collection for which API traffic from the internet was observed. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly numberOfExternalApiEndpoints?: number; - /** - * The number of API endpoints in this API collection which are exposing sensitive data in their requests and/or responses. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly numberOfApiEndpointsWithSensitiveDataExposed?: number; - /** - * The highest priority sensitivity label from Microsoft Purview in this API collection. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly sensitivityLabel?: string; -} - -/** Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ -export interface Pricing extends Resource { - /** Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ - pricingTier?: PricingTier; - /** The sub-plan selected for a Standard pricing configuration, when more than one sub-plan is available. Each sub-plan enables a set of security features. When not specified, full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for resource level only 'P1' sub plan is supported. */ - subPlan?: string; - /** - * 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 freeTrialRemainingTime?: string; - /** - * Optional. If `pricingTier` is `Standard` then this property holds the date of the last time the `pricingTier` was set to `Standard`, when available (e.g 2023-03-01T12:42:42.1921106Z). - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly enablementTime?: Date; - /** If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it prevents overrides and forces this pricing configuration on all the descendants of this scope. This field is only available for subscription-level pricing. */ - enforce?: Enforce; - /** - * "inherited" = "True" indicates that the current scope inherits its pricing configuration from its parent. The ID of the parent scope that provides the inherited configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = "False" indicates that the current scope has its own pricing configuration explicitly set, and does not inherit from its parent. This field is read only and available only for resource-level pricing. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly inherited?: Inherited; - /** - * The id of the scope inherited from. "Null" if not inherited. This field is only available for resource-level pricing. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly inheritedFrom?: string; - /** - * This field is available for subscription-level only, and reflects the coverage status of the resources under the subscription. Please note: The "pricingTier" field reflects the plan status of the subscription. However, since the plan status can also be defined at the resource level, there might be misalignment between the subscription's plan status and the resource status. This field helps indicate the coverage status of the resources. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly resourcesCoverageStatus?: ResourcesCoverageStatus; - /** Optional. List of extensions offered under a plan. */ - extensions?: Extension[]; - /** - * Optional. True if the plan is deprecated. If there are replacing plans they will appear in `replacedBy` property - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly deprecated?: boolean; - /** - * Optional. List of plans that replace this plan. This property exists only if this plan is deprecated. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly replacedBy?: string[]; -} - -/** 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; - categories?: Categories[]; - /** The severity level of the assessment */ - severity?: Severity; - /** The user impact of the assessment */ - userImpact?: UserImpact; - /** The implementation effort required to remediate this assessment */ - 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 */ - assessmentType?: AssessmentType; - /** Describes the partner that created the assessment */ - partnerData?: SecurityAssessmentMetadataPartnerData; -} - -/** The logic app action that should be triggered. To learn more about Microsoft Defender for Cloud's Workflow Automation capabilities, visit https://aka.ms/ASCWorkflowAutomationLearnMore */ -export interface AutomationActionLogicApp extends AutomationAction { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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 Microsoft Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore */ -export interface AutomationActionEventHub extends AutomationAction { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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; - /** Indicates whether the trusted service is enabled or not. */ - isTrustedServiceEnabled?: boolean; -} - -/** The�Log�Analytics�Workspace�to�which�event data will be exported. Security alerts data will reside in the 'SecurityAlert' table and the assessments data will reside in the 'SecurityRecommendation' table (under the 'Security'/'SecurityCenterFree' solutions). Note that in order to view the data in the workspace, the Security Center Log Analytics free/standard solution needs to be enabled on that workspace. To learn more about Microsoft Defender for Cloud continuous export capabilities, visit https://aka.ms/ASCExportLearnMore */ -export interface AutomationActionWorkspace extends AutomationAction { - /** Polymorphic discriminator, which specifies the different types this object can be */ - actionType: "Workspace"; - /** The fully qualified Log Analytics Workspace Azure Resource ID. */ - workspaceResourceId?: string; -} - -/** The update model of security automation resource. */ -export interface AutomationUpdateModel extends Tags { - /** 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[]; -} - -/** Details of the Azure resource that was assessed */ -export interface AzureResourceDetails extends ResourceDetails { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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; -} - -/** Details of the On Premise resource that was assessed */ -export interface OnPremiseResourceDetails extends ResourceDetails { - /** Polymorphic discriminator, which specifies the different types this object can be */ - source: "OnPremise" | "OnPremiseSql"; - /** 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 resource that was assessed */ -export interface SqlServerVulnerabilityProperties extends AdditionalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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; -} - -/** Additional context fields for container registry Vulnerability assessment */ -export interface ContainerRegistryVulnerabilityProperties - extends AdditionalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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 extends AdditionalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - 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[]; -} - -/** AWS cloud account connector based credentials, the credentials is composed of access key ID and secret key, for more details, refer to Creating an IAM User in Your AWS Account (write only) */ -export interface AwsCredsAuthenticationDetailsProperties - extends AuthenticationDetailsProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - authenticationType: "awsCreds"; - /** - * The ID of the cloud account - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly accountId?: string; - /** Public key element of the AWS credential object (write only) */ - awsAccessKeyId: string; - /** Secret key element of the AWS credential object (write only) */ - awsSecretAccessKey: string; -} - -/** AWS cloud account connector based assume role, the role enables delegating access to your AWS resources. The role is composed of role Amazon Resource Name (ARN) and external ID. For more details, refer to Creating a Role to Delegate Permissions to an IAM User (write only) */ -export interface AwAssumeRoleAuthenticationDetailsProperties - extends AuthenticationDetailsProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - authenticationType: "awsAssumeRole"; - /** - * The ID of the cloud account - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly accountId?: string; - /** Assumed role ID is an identifier that you can use to create temporary security credentials. */ - awsAssumeRoleArn: string; - /** A unique identifier that is required when you assume a role in another account. */ - awsExternalId: string; -} - -/** GCP cloud account connector based service to service credentials, the credentials are composed of the organization ID and a JSON API key (write only) */ -export interface GcpCredentialsDetailsProperties - extends AuthenticationDetailsProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - authenticationType: "gcpCredentials"; - /** The organization ID of the GCP cloud account */ - organizationId: string; - /** Type field of the API key (write only) */ - type: string; - /** Project ID field of the API key (write only) */ - projectId: string; - /** Private key ID field of the API key (write only) */ - privateKeyId: string; - /** Private key field of the API key (write only) */ - privateKey: string; - /** Client email field of the API key (write only) */ - clientEmail: string; - /** Client ID field of the API key (write only) */ - clientId: string; - /** Auth URI field of the API key (write only) */ - authUri: string; - /** Token URI field of the API key (write only) */ - tokenUri: string; - /** Auth provider x509 certificate URL field of the API key (write only) */ - authProviderX509CertUrl: string; - /** Client x509 certificate URL field of the API key (write only) */ - clientX509CertUrl: string; -} - -/** Alert notification source */ -export interface NotificationsSourceAlert extends NotificationsSource { - /** Polymorphic discriminator, which specifies the different types this object can be */ - sourceType: "Alert"; - /** Defines the minimal alert severity which will be sent as email notifications */ - minimalSeverity?: MinimalSeverity; -} - -/** Attack path notification source */ -export interface NotificationsSourceAttackPath extends NotificationsSource { - /** Polymorphic discriminator, which specifies the different types this object can be */ - sourceType: "AttackPath"; - /** Defines the minimal attach path risk level which will be sent as email notifications */ - minimalRiskLevel?: MinimalRiskLevel; -} - -/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ -export interface ProxyResource extends ResourceAutoGenerated {} - -/** The CSPM monitoring for AWS offering */ -export interface CspmMonitorAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "CspmMonitorAws"; - /** The native cloud connection configuration */ - nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection; -} - -/** The Defender for Containers AWS offering */ -export interface DefenderForContainersAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForContainersAws"; - /** The kubernetes service connection configuration */ - kubernetesService?: DefenderForContainersAwsOfferingKubernetesService; - /** The kubernetes to scuba connection configuration */ - kubernetesScubaReader?: DefenderForContainersAwsOfferingKubernetesScubaReader; - /** The cloudwatch to kinesis connection configuration */ - cloudWatchToKinesis?: DefenderForContainersAwsOfferingCloudWatchToKinesis; - /** The kinesis to s3 connection configuration */ - kinesisToS3?: DefenderForContainersAwsOfferingKinesisToS3; - /** The container vulnerability assessment configuration */ - containerVulnerabilityAssessment?: DefenderForContainersAwsOfferingContainerVulnerabilityAssessment; - /** The container vulnerability assessment task configuration */ - containerVulnerabilityAssessmentTask?: DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask; - /** Enable container vulnerability assessment feature */ - enableContainerVulnerabilityAssessment?: boolean; - /** Is audit logs pipeline auto provisioning enabled */ - autoProvisioning?: boolean; - /** The retention time in days of kube audit logs set on the CloudWatch log group */ - kubeAuditRetentionTime?: number; - /** The externalId used by the data reader to prevent the confused deputy attack */ - scubaExternalId?: string; - /** The Microsoft Defender container image assessment configuration */ - mdcContainersImageAssessment?: DefenderForContainersAwsOfferingMdcContainersImageAssessment; - /** The Microsoft Defender container agentless discovery K8s configuration */ - mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S; -} - -/** The Defender for Servers AWS offering */ -export interface DefenderForServersAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForServersAws"; - /** The Defender for servers connection configuration */ - defenderForServers?: DefenderForServersAwsOfferingDefenderForServers; - /** The ARC autoprovisioning configuration */ - arcAutoProvisioning?: DefenderForServersAwsOfferingArcAutoProvisioning; - /** The Vulnerability Assessment autoprovisioning configuration */ - vaAutoProvisioning?: DefenderForServersAwsOfferingVaAutoProvisioning; - /** The Microsoft Defender for Endpoint autoprovisioning configuration */ - mdeAutoProvisioning?: DefenderForServersAwsOfferingMdeAutoProvisioning; - /** configuration for the servers offering subPlan */ - subPlan?: DefenderForServersAwsOfferingSubPlan; - /** The Microsoft Defender for Server VM scanning configuration */ - vmScanners?: DefenderForServersAwsOfferingVmScanners; -} - -/** The Defender for Databases AWS offering */ -export interface DefenderFoDatabasesAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForDatabasesAws"; - /** The ARC autoprovisioning configuration */ - arcAutoProvisioning?: DefenderFoDatabasesAwsOfferingArcAutoProvisioning; - /** The RDS configuration */ - rds?: DefenderFoDatabasesAwsOfferingRds; - /** The databases data security posture management (DSPM) configuration */ - databasesDspm?: DefenderFoDatabasesAwsOfferingDatabasesDspm; -} - -/** The information protection for AWS offering */ -export interface InformationProtectionAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "InformationProtectionAws"; - /** The native cloud connection configuration */ - informationProtection?: InformationProtectionAwsOfferingInformationProtection; -} - -/** The CSPM monitoring for GCP offering */ -export interface CspmMonitorGcpOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "CspmMonitorGcp"; - /** The native cloud connection configuration */ - nativeCloudConnection?: CspmMonitorGcpOfferingNativeCloudConnection; -} - -/** The Defender for Servers GCP offering configurations */ -export interface DefenderForServersGcpOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForServersGcp"; - /** The Defender for servers connection configuration */ - defenderForServers?: DefenderForServersGcpOfferingDefenderForServers; - /** The ARC autoprovisioning configuration */ - arcAutoProvisioning?: DefenderForServersGcpOfferingArcAutoProvisioning; - /** The Vulnerability Assessment autoprovisioning configuration */ - vaAutoProvisioning?: DefenderForServersGcpOfferingVaAutoProvisioning; - /** The Microsoft Defender for Endpoint autoprovisioning configuration */ - mdeAutoProvisioning?: DefenderForServersGcpOfferingMdeAutoProvisioning; - /** configuration for the servers offering subPlan */ - subPlan?: DefenderForServersGcpOfferingSubPlan; - /** The Microsoft Defender for Server VM scanning configuration */ - vmScanners?: DefenderForServersGcpOfferingVmScanners; -} - -/** The Defender for Databases GCP offering configurations */ -export interface DefenderForDatabasesGcpOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForDatabasesGcp"; - /** The ARC autoprovisioning configuration */ - arcAutoProvisioning?: DefenderForDatabasesGcpOfferingArcAutoProvisioning; - /** The native cloud connection configuration */ - defenderForDatabasesArcAutoProvisioning?: DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning; -} - -/** The containers GCP offering */ -export interface DefenderForContainersGcpOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForContainersGcp"; - /** The native cloud connection configuration */ - nativeCloudConnection?: DefenderForContainersGcpOfferingNativeCloudConnection; - /** The native cloud connection configuration */ - dataPipelineNativeCloudConnection?: DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection; - /** Is audit logs data collection enabled */ - auditLogsAutoProvisioningFlag?: boolean; - /** Is Microsoft Defender for Cloud Kubernetes agent auto provisioning enabled */ - defenderAgentAutoProvisioningFlag?: boolean; - /** Is Policy Kubernetes agent auto provisioning enabled */ - policyAgentAutoProvisioningFlag?: boolean; - /** The Microsoft Defender Container image assessment configuration */ - mdcContainersImageAssessment?: DefenderForContainersGcpOfferingMdcContainersImageAssessment; - /** The Microsoft Defender Container agentless discovery configuration */ - mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S; -} - -/** The CSPM monitoring for github offering */ -export interface CspmMonitorGithubOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "CspmMonitorGithub"; -} - -/** The CSPM monitoring for AzureDevOps offering */ -export interface CspmMonitorAzureDevOpsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "CspmMonitorAzureDevOps"; -} - -/** The CSPM P1 for AWS offering */ -export interface DefenderCspmAwsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderCspmAws"; - /** The Microsoft Defender for Server VM scanning configuration */ - vmScanners?: DefenderCspmAwsOfferingVmScanners; - /** The Microsoft Defender Data Sensitivity discovery configuration */ - dataSensitivityDiscovery?: DefenderCspmAwsOfferingDataSensitivityDiscovery; - /** The databases DSPM configuration */ - databasesDspm?: DefenderCspmAwsOfferingDatabasesDspm; - /** Defenders CSPM Cloud infrastructure entitlement management (CIEM) offering configurations */ - ciem?: DefenderCspmAwsOfferingCiem; - /** The Microsoft Defender container image assessment configuration */ - mdcContainersImageAssessment?: DefenderCspmAwsOfferingMdcContainersImageAssessment; - /** The Microsoft Defender container agentless discovery K8s configuration */ - mdcContainersAgentlessDiscoveryK8S?: DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S; -} - -/** The CSPM P1 for GCP offering */ -export interface DefenderCspmGcpOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderCspmGcp"; - /** GCP Defenders CSPM Cloud infrastructure entitlement management (CIEM) discovery offering configurations */ - ciemDiscovery?: DefenderCspmGcpOfferingCiemDiscovery; - /** The Microsoft Defender for Server VM scanning configuration */ - vmScanners?: DefenderCspmGcpOfferingVmScanners; - /** The Microsoft Defender Data Sensitivity discovery configuration */ - dataSensitivityDiscovery?: DefenderCspmGcpOfferingDataSensitivityDiscovery; - /** The Microsoft Defender Container image assessment configuration */ - mdcContainersImageAssessment?: DefenderCspmGcpOfferingMdcContainersImageAssessment; - /** The Microsoft Defender Container agentless discovery configuration */ - mdcContainersAgentlessDiscoveryK8S?: DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S; -} - -/** The Defender for DevOps for Github offering */ -export interface DefenderForDevOpsGithubOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForDevOpsGithub"; -} - -/** The Defender for DevOps for Azure DevOps offering */ -export interface DefenderForDevOpsAzureDevOpsOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForDevOpsAzureDevOps"; -} - -/** The CSPM (Cloud security posture management) monitoring for gitlab offering */ -export interface CspmMonitorGitLabOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "CspmMonitorGitLab"; -} - -/** The Defender for DevOps for Gitlab offering */ -export interface DefenderForDevOpsGitLabOffering extends CloudOffering { - /** Polymorphic discriminator, which specifies the different types this object can be */ - offeringType: "DefenderForDevOpsGitLab"; -} - -/** The AWS connector environment data */ -export interface AwsEnvironmentData extends EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: "AwsAccount"; - /** The AWS account's organizational data */ - organizationalData?: AwsOrganizationalDataUnion; - /** list of regions to scan */ - regions?: string[]; - /** - * The AWS account name - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly accountName?: string; - /** Scan interval in hours (value should be between 1-hour to 24-hours) */ - scanInterval?: number; -} - -/** The GCP project connector environment data */ -export interface GcpProjectEnvironmentData extends EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: "GcpProject"; - /** The Gcp project's organizational data */ - organizationalData?: GcpOrganizationalDataUnion; - /** The Gcp project's details */ - projectDetails?: GcpProjectDetails; - /** Scan interval in hours (value should be between 1-hour to 24-hours) */ - scanInterval?: number; -} - -/** The github scope connector's environment data */ -export interface GithubScopeEnvironmentData extends EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: "GithubScope"; -} - -/** The AzureDevOps scope connector's environment data */ -export interface AzureDevOpsScopeEnvironmentData extends EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: "AzureDevOpsScope"; -} - -/** The GitLab scope connector's environment data */ -export interface GitlabScopeEnvironmentData extends EnvironmentData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - environmentType: "GitlabScope"; -} - -/** A custom alert rule that checks if a value (depends on the custom alert type) is within the given range. */ -export interface ThresholdCustomAlertRule extends CustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: - | "ThresholdCustomAlertRule" - | "TimeWindowCustomAlertRule" - | "ActiveConnectionsNotInAllowedRange" - | "AmqpC2DMessagesNotInAllowedRange" - | "MqttC2DMessagesNotInAllowedRange" - | "HttpC2DMessagesNotInAllowedRange" - | "AmqpC2DRejectedMessagesNotInAllowedRange" - | "MqttC2DRejectedMessagesNotInAllowedRange" - | "HttpC2DRejectedMessagesNotInAllowedRange" - | "AmqpD2CMessagesNotInAllowedRange" - | "MqttD2CMessagesNotInAllowedRange" - | "HttpD2CMessagesNotInAllowedRange" - | "DirectMethodInvokesNotInAllowedRange" - | "FailedLocalLoginsNotInAllowedRange" - | "FileUploadsNotInAllowedRange" - | "QueuePurgesNotInAllowedRange" - | "TwinUpdatesNotInAllowedRange" - | "UnauthorizedOperationsNotInAllowedRange"; - /** The minimum threshold. */ - minThreshold: number; - /** The maximum threshold. */ - maxThreshold: number; -} - -/** A List custom alert rule. */ -export interface ListCustomAlertRule extends CustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: - | "ListCustomAlertRule" - | "AllowlistCustomAlertRule" - | "DenylistCustomAlertRule" - | "ConnectionToIpNotAllowed" - | "ConnectionFromIpNotAllowed" - | "LocalUserNotAllowed" - | "ProcessNotAllowed"; - /** - * The value type of the items in the list. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly valueType?: ValueType; -} - -export interface UpdateIotSecuritySolutionData extends TagsResource { - /** Properties of the IoT Security solution's user defined resources. */ - userDefinedResources?: UserDefinedResourcesProperties; - /** List of the configuration status for each recommendation type. */ - recommendationsConfiguration?: RecommendationConfigurationProperties[]; -} - -/** Describes properties of an assessment metadata response. */ -export interface SecurityAssessmentMetadataPropertiesResponse - extends SecurityAssessmentMetadataProperties { - publishDates?: SecurityAssessmentMetadataPropertiesResponsePublishDates; - plannedDeprecationDate?: string; - tactics?: Tactics[]; - techniques?: Techniques[]; -} - -/** The result of the assessment */ -export interface AssessmentStatusResponse extends AssessmentStatus { - /** - * The time that the assessment was created and first evaluated. Returned as UTC time in ISO 8601 format - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly firstEvaluationDate?: Date; - /** - * The time that the status of the assessment last changed. Returned as UTC time in ISO 8601 format - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly statusChangeDate?: Date; -} - -/** Describes properties of an assessment. */ -export interface SecurityAssessmentPropertiesResponse - extends SecurityAssessmentPropertiesBase { - /** The result of the assessment */ - status: AssessmentStatusResponse; -} - -/** Describes properties of an assessment. */ -export interface SecurityAssessmentProperties - extends SecurityAssessmentPropertiesBase { - /** The result of the assessment */ - status: AssessmentStatus; -} - -/** Azure resource identifier. */ -export interface AzureResourceIdentifier extends ResourceIdentifier { - /** Polymorphic discriminator, which specifies the different types this object can be */ - type: "AzureResource"; - /** - * ARM resource identifier for the cloud resource being alerted on - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly azureResourceId?: string; -} - -/** Represents a Log Analytics workspace scope identifier. */ -export interface LogAnalyticsIdentifier extends ResourceIdentifier { - /** Polymorphic discriminator, which specifies the different types this object can be */ - type: "LogAnalytics"; - /** - * The LogAnalytics workspace id that stores this alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly workspaceId?: string; - /** - * The azure subscription id for the LogAnalytics workspace storing this alert. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly workspaceSubscriptionId?: string; - /** - * The azure resource group for the LogAnalytics workspace storing this alert - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly workspaceResourceGroup?: string; - /** - * (optional) The LogAnalytics agent id reporting the event that this alert is based on. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly agentId?: string; -} - -/** Simulate alerts according to this bundles. */ -export interface AlertSimulatorBundlesRequestProperties - extends AlertSimulatorRequestProperties { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "Bundles"; - /** Bundles list. */ - bundles?: BundleType[]; -} - -/** A base vulnerability assessments setting on servers in the defined scope. */ -export interface ServerVulnerabilityAssessmentsSetting - extends ResourceAutoGenerated2 { - /** The kind of the server vulnerability assessments setting. */ - kind: ServerVulnerabilityAssessmentsSettingKind; -} - -/** The AWS organization data for the master account */ -export interface AwsOrganizationalDataMaster extends AwsOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Organization"; - /** If the multi cloud account is of membership type organization, this will be the name of the onboarding stackset */ - stacksetName?: string; - /** If the multi cloud account is of membership type organization, list of accounts excluded from offering */ - excludedAccountIds?: string[]; -} - -/** The AWS organization data for the member account */ -export interface AwsOrganizationalDataMember extends AwsOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Member"; - /** If the multi cloud account is not of membership type organization, this will be the ID of the account's parent */ - parentHierarchyId?: string; -} - -/** The gcpOrganization data for the parent account */ -export interface GcpOrganizationalDataOrganization - extends GcpOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Organization"; - /** If the multi cloud account is of membership type organization, list of accounts excluded from offering */ - excludedProjectNumbers?: string[]; - /** The service account email address which represents the organization level permissions container. */ - serviceAccountEmailAddress?: string; - /** The GCP workload identity provider id which represents the permissions required to auto provision security connectors */ - workloadIdentityProviderId?: string; - /** - * GCP organization name - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly organizationName?: string; -} - -/** The gcpOrganization data for the member account */ -export interface GcpOrganizationalDataMember extends GcpOrganizationalData { - /** Polymorphic discriminator, which specifies the different types this object can be */ - organizationMembershipType: "Member"; - /** If the multi cloud account is not of membership type organization, this will be the ID of the project's parent */ - parentHierarchyId?: string; - /** The GCP management project number from organizational onboarding */ - managementProjectNumber?: string; -} - -/** The external security solution properties for CEF solutions */ -export interface CefSolutionProperties - extends ExternalSecuritySolutionProperties { - hostname?: string; - agent?: string; - lastEventReceived?: string; -} - -/** The external security solution properties for ATA solutions */ -export interface AtaSolutionProperties - extends ExternalSecuritySolutionProperties { - lastEventReceived?: string; -} - -/** The external security solution properties for AAD solutions */ -export interface AadSolutionProperties - extends ExternalSecuritySolutionProperties, - AadConnectivityStateAutoGenerated {} - -/** 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 security connector resource. */ -export interface SecurityConnector extends TrackedResource { - /** - * Azure Resource Manager metadata containing createdBy and modifiedBy information. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** The multi cloud resource identifier (account id in case of AWS connector, project number in case of GCP connector). */ - hierarchyIdentifier?: string; - /** - * The date on which the trial period will end, if applicable. Trial period exists for 30 days after upgrading to payed offerings. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly hierarchyIdentifierTrialEndDate?: Date; - /** The multi cloud resource's cloud name. */ - environmentName?: CloudName; - /** A collection of offerings for the security connector. */ - offerings?: CloudOfferingUnion[]; - /** The security connector environment data. */ - environmentData?: EnvironmentDataUnion; -} - -/** Represents a security solution which sends CEF logs to an OMS workspace */ -export interface CefExternalSecuritySolution extends ExternalSecuritySolution { - /** The external security solution properties for CEF solutions */ - properties?: CefSolutionProperties; -} - -/** Represents an ATA security solution which sends logs to an OMS workspace */ -export interface AtaExternalSecuritySolution extends ExternalSecuritySolution { - /** The external security solution properties for ATA solutions */ - properties?: AtaSolutionProperties; -} - -/** Represents an AAD identity protection solution which sends logs to an OMS workspace. */ -export interface AadExternalSecuritySolution extends ExternalSecuritySolution { - /** The external security solution properties for AAD solutions */ - properties?: AadSolutionProperties; -} - -/** Represents a data export setting */ -export interface DataExportSettings extends Setting { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "DataExportSettings"; - /** Is the data export setting enabled */ - enabled?: boolean; -} - -/** Represents an alert sync setting */ -export interface AlertSyncSettings extends Setting { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "AlertSyncSettings"; - /** Is the alert sync setting enabled */ - enabled?: boolean; -} - -/** Details of the On Premise Sql resource that was assessed */ -export interface OnPremiseSqlResourceDetails extends OnPremiseResourceDetails { - /** Polymorphic discriminator, which specifies the different types this object can be */ - source: "OnPremiseSql"; - /** The Sql server name installed on the machine */ - serverName: string; - /** The Sql database name installed on the machine */ - databaseName: string; -} - -/** Azure DevOps Organization resource. */ -export interface AzureDevOpsOrg extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** Azure DevOps Organization properties. */ - properties?: AzureDevOpsOrgProperties; -} - -/** Azure DevOps Project resource. */ -export interface AzureDevOpsProject extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** Azure DevOps Project properties. */ - properties?: AzureDevOpsProjectProperties; -} - -/** Azure DevOps Repository resource. */ -export interface AzureDevOpsRepository extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** Azure DevOps Repository properties. */ - properties?: AzureDevOpsRepositoryProperties; -} - -/** DevOps Configuration resource. */ -export interface DevOpsConfiguration extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** DevOps Configuration properties. */ - properties?: DevOpsConfigurationProperties; -} - -/** GitHub Owner resource. */ -export interface GitHubOwner extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** GitHub Owner properties. */ - properties?: GitHubOwnerProperties; -} - -/** GitHub Repository resource. */ -export interface GitHubRepository extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** GitHub Repository properties. */ - properties?: GitHubRepositoryProperties; -} - -/** GitLab Group resource. */ -export interface GitLabGroup extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** GitLab Group properties. */ - properties?: GitLabGroupProperties; -} - -/** GitLab Project resource. */ -export interface GitLabProject extends ProxyResource { - /** - * Metadata pertaining to creation and last modification of the resource. - * NOTE: This property will not be serialized. It can only be populated by the server. - */ - readonly systemData?: SystemData; - /** GitLab Project properties. */ - properties?: GitLabProjectProperties; -} - -/** 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 extends ThresholdCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: - | "TimeWindowCustomAlertRule" - | "ActiveConnectionsNotInAllowedRange" - | "AmqpC2DMessagesNotInAllowedRange" - | "MqttC2DMessagesNotInAllowedRange" - | "HttpC2DMessagesNotInAllowedRange" - | "AmqpC2DRejectedMessagesNotInAllowedRange" - | "MqttC2DRejectedMessagesNotInAllowedRange" - | "HttpC2DRejectedMessagesNotInAllowedRange" - | "AmqpD2CMessagesNotInAllowedRange" - | "MqttD2CMessagesNotInAllowedRange" - | "HttpD2CMessagesNotInAllowedRange" - | "DirectMethodInvokesNotInAllowedRange" - | "FailedLocalLoginsNotInAllowedRange" - | "FileUploadsNotInAllowedRange" - | "QueuePurgesNotInAllowedRange" - | "TwinUpdatesNotInAllowedRange" - | "UnauthorizedOperationsNotInAllowedRange"; - /** The time window size in iso8601 format. */ - timeWindowSize: string; -} - -/** A custom alert rule that checks if a value (depends on the custom alert type) is allowed. */ -export interface AllowlistCustomAlertRule extends ListCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: - | "AllowlistCustomAlertRule" - | "ConnectionToIpNotAllowed" - | "ConnectionFromIpNotAllowed" - | "LocalUserNotAllowed" - | "ProcessNotAllowed"; - /** The values to allow. The format of the values depends on the rule type. */ - allowlistValues: string[]; -} - -/** A custom alert rule that checks if a value (depends on the custom alert type) is denied. */ -export interface DenylistCustomAlertRule extends ListCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "DenylistCustomAlertRule"; - /** The values to deny. The format of the values depends on the rule type. */ - denylistValues: string[]; -} - -/** A vulnerability assessments setting on Azure servers in the defined scope. */ -export interface AzureServersSetting - extends ServerVulnerabilityAssessmentsSetting { - /** Polymorphic discriminator, which specifies the different types this object can be */ - kind: "AzureServersSetting"; - /** The selected vulnerability assessments provider on Azure servers in the defined scope. */ - selectedProvider?: ServerVulnerabilityAssessmentsAzureSettingSelectedProvider; -} - -/** Number of active connections is not in allowed range. */ -export interface ActiveConnectionsNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "ActiveConnectionsNotInAllowedRange"; -} - -/** Number of cloud to device messages (AMQP protocol) is not in allowed range. */ -export interface AmqpC2DMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "AmqpC2DMessagesNotInAllowedRange"; -} - -/** Number of cloud to device messages (MQTT protocol) is not in allowed range. */ -export interface MqttC2DMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "MqttC2DMessagesNotInAllowedRange"; -} - -/** Number of cloud to device messages (HTTP protocol) is not in allowed range. */ -export interface HttpC2DMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "HttpC2DMessagesNotInAllowedRange"; -} - -/** Number of rejected cloud to device messages (AMQP protocol) is not in allowed range. */ -export interface AmqpC2DRejectedMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "AmqpC2DRejectedMessagesNotInAllowedRange"; -} - -/** Number of rejected cloud to device messages (MQTT protocol) is not in allowed range. */ -export interface MqttC2DRejectedMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "MqttC2DRejectedMessagesNotInAllowedRange"; -} - -/** Number of rejected cloud to device messages (HTTP protocol) is not in allowed range. */ -export interface HttpC2DRejectedMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "HttpC2DRejectedMessagesNotInAllowedRange"; -} - -/** Number of device to cloud messages (AMQP protocol) is not in allowed range. */ -export interface AmqpD2CMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "AmqpD2CMessagesNotInAllowedRange"; -} - -/** Number of device to cloud messages (MQTT protocol) is not in allowed range. */ -export interface MqttD2CMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "MqttD2CMessagesNotInAllowedRange"; -} - -/** Number of device to cloud messages (HTTP protocol) is not in allowed range. */ -export interface HttpD2CMessagesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "HttpD2CMessagesNotInAllowedRange"; -} - -/** Number of direct method invokes is not in allowed range. */ -export interface DirectMethodInvokesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "DirectMethodInvokesNotInAllowedRange"; -} - -/** Number of failed local logins is not in allowed range. */ -export interface FailedLocalLoginsNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "FailedLocalLoginsNotInAllowedRange"; -} - -/** Number of file uploads is not in allowed range. */ -export interface FileUploadsNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "FileUploadsNotInAllowedRange"; -} - -/** Number of device queue purges is not in allowed range. */ -export interface QueuePurgesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "QueuePurgesNotInAllowedRange"; -} - -/** Number of twin updates is not in allowed range. */ -export interface TwinUpdatesNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "TwinUpdatesNotInAllowedRange"; -} - -/** Number of unauthorized operations is not in allowed range. */ -export interface UnauthorizedOperationsNotInAllowedRange - extends TimeWindowCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "UnauthorizedOperationsNotInAllowedRange"; -} - -/** Outbound connection to an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation. */ -export interface ConnectionToIpNotAllowed extends AllowlistCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "ConnectionToIpNotAllowed"; -} - -/** Inbound connection from an ip that isn't allowed. Allow list consists of ipv4 or ipv6 range in CIDR notation. */ -export interface ConnectionFromIpNotAllowed extends AllowlistCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "ConnectionFromIpNotAllowed"; -} - -/** Login by a local user that isn't allowed. Allow list consists of login names to allow. */ -export interface LocalUserNotAllowed extends AllowlistCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "LocalUserNotAllowed"; -} - -/** Execution of a process that isn't allowed. Allow list consists of process names to allow. */ -export interface ProcessNotAllowed extends AllowlistCustomAlertRule { - /** Polymorphic discriminator, which specifies the different types this object can be */ - ruleType: "ProcessNotAllowed"; -} - -/** Defines headers for GovernanceRules_delete operation. */ -export interface GovernanceRulesDeleteHeaders { - /** Location URL for the deletion status */ - location?: string; -} - -/** Defines headers for GovernanceRules_execute operation. */ -export interface GovernanceRulesExecuteHeaders { - /** Location URL for the execution status */ - location?: string; -} - -/** Defines headers for GovernanceRules_operationResults operation. */ -export interface GovernanceRulesOperationResultsHeaders { - /** Location URL for the execution status */ - location?: string; -} - -/** Defines headers for APICollections_onboardAzureApiManagementApi operation. */ -export interface APICollectionsOnboardAzureApiManagementApiHeaders { - location?: string; -} - -/** Known values of {@link TaskUpdateActionType} that the service accepts. */ -export enum KnownTaskUpdateActionType { - /** Activate */ - Activate = "Activate", - /** Dismiss */ - Dismiss = "Dismiss", - /** Start */ - Start = "Start", - /** Resolve */ - Resolve = "Resolve", - /** Close */ - Close = "Close", -} - -/** - * Defines values for TaskUpdateActionType. \ - * {@link KnownTaskUpdateActionType} can be used interchangeably with TaskUpdateActionType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Activate** \ - * **Dismiss** \ - * **Start** \ - * **Resolve** \ - * **Close** - */ -export type TaskUpdateActionType = string; - -/** Known values of {@link AutoProvision} that the service accepts. */ -export enum KnownAutoProvision { - /** Install missing security agent on VMs automatically */ - On = "On", - /** Do not install security agent on the VMs automatically */ - Off = "Off", -} - -/** - * Defines values for AutoProvision. \ - * {@link KnownAutoProvision} can be used interchangeably with AutoProvision, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **On**: Install missing security agent on VMs automatically \ - * **Off**: Do not install security agent on the VMs automatically - */ -export type AutoProvision = string; - -/** Known values of {@link InformationProtectionPolicyName} that the service accepts. */ -export enum KnownInformationProtectionPolicyName { - /** Effective */ - Effective = "effective", - /** Custom */ - Custom = "custom", -} - -/** - * Defines values for InformationProtectionPolicyName. \ - * {@link KnownInformationProtectionPolicyName} can be used interchangeably with InformationProtectionPolicyName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **effective** \ - * **custom** - */ -export type InformationProtectionPolicyName = string; - -/** Known values of {@link EventSource} that the service accepts. */ -export enum KnownEventSource { - /** Assessments */ - Assessments = "Assessments", - /** AssessmentsSnapshot */ - AssessmentsSnapshot = "AssessmentsSnapshot", - /** SubAssessments */ - SubAssessments = "SubAssessments", - /** SubAssessmentsSnapshot */ - SubAssessmentsSnapshot = "SubAssessmentsSnapshot", - /** Alerts */ - Alerts = "Alerts", - /** SecureScores */ - SecureScores = "SecureScores", - /** SecureScoresSnapshot */ - SecureScoresSnapshot = "SecureScoresSnapshot", - /** SecureScoreControls */ - SecureScoreControls = "SecureScoreControls", - /** SecureScoreControlsSnapshot */ - SecureScoreControlsSnapshot = "SecureScoreControlsSnapshot", - /** RegulatoryComplianceAssessment */ - RegulatoryComplianceAssessment = "RegulatoryComplianceAssessment", - /** RegulatoryComplianceAssessmentSnapshot */ - RegulatoryComplianceAssessmentSnapshot = "RegulatoryComplianceAssessmentSnapshot", - /** AttackPaths */ - AttackPaths = "AttackPaths", - /** AttackPathsSnapshot */ - AttackPathsSnapshot = "AttackPathsSnapshot", -} - -/** - * Defines values for EventSource. \ - * {@link KnownEventSource} can be used interchangeably with EventSource, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Assessments** \ - * **AssessmentsSnapshot** \ - * **SubAssessments** \ - * **SubAssessmentsSnapshot** \ - * **Alerts** \ - * **SecureScores** \ - * **SecureScoresSnapshot** \ - * **SecureScoreControls** \ - * **SecureScoreControlsSnapshot** \ - * **RegulatoryComplianceAssessment** \ - * **RegulatoryComplianceAssessmentSnapshot** \ - * **AttackPaths** \ - * **AttackPathsSnapshot** - */ -export type EventSource = string; - -/** Known values of {@link PropertyType} that the service accepts. */ -export enum KnownPropertyType { - /** String */ - String = "String", - /** Integer */ - Integer = "Integer", - /** Number */ - Number = "Number", - /** Boolean */ - Boolean = "Boolean", -} - -/** - * Defines values for PropertyType. \ - * {@link KnownPropertyType} can be used interchangeably with PropertyType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **String** \ - * **Integer** \ - * **Number** \ - * **Boolean** - */ -export type PropertyType = string; - -/** Known values of {@link Operator} that the service accepts. */ -export enum KnownOperator { - /** Applies for decimal and non-decimal operands */ - Equals = "Equals", - /** Applies only for decimal operands */ - GreaterThan = "GreaterThan", - /** Applies only for decimal operands */ - GreaterThanOrEqualTo = "GreaterThanOrEqualTo", - /** Applies only for decimal operands */ - LesserThan = "LesserThan", - /** Applies only for decimal operands */ - LesserThanOrEqualTo = "LesserThanOrEqualTo", - /** Applies for decimal and non-decimal operands */ - NotEquals = "NotEquals", - /** Applies only for non-decimal operands */ - Contains = "Contains", - /** Applies only for non-decimal operands */ - StartsWith = "StartsWith", - /** Applies only for non-decimal operands */ - EndsWith = "EndsWith", -} - -/** - * Defines values for Operator. \ - * {@link KnownOperator} can be used interchangeably with Operator, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Equals**: Applies for decimal and non-decimal operands \ - * **GreaterThan**: Applies only for decimal operands \ - * **GreaterThanOrEqualTo**: Applies only for decimal operands \ - * **LesserThan**: Applies only for decimal operands \ - * **LesserThanOrEqualTo**: Applies only for decimal operands \ - * **NotEquals**: Applies for decimal and non-decimal operands \ - * **Contains**: Applies only for non-decimal operands \ - * **StartsWith**: Applies only for non-decimal operands \ - * **EndsWith**: Applies only for non-decimal operands - */ -export type Operator = string; - -/** Known values of {@link ActionType} that the service accepts. */ -export enum KnownActionType { - /** LogicApp */ - LogicApp = "LogicApp", - /** EventHub */ - EventHub = "EventHub", - /** Workspace */ - Workspace = "Workspace", -} - -/** - * Defines values for ActionType. \ - * {@link KnownActionType} can be used interchangeably with ActionType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **LogicApp** \ - * **EventHub** \ - * **Workspace** - */ -export type ActionType = string; - -/** Known values of {@link State} that the service accepts. */ -export enum KnownState { - /** All supported regulatory compliance controls in the given standard have a passed state */ - Passed = "Passed", - /** At least one supported regulatory compliance control in the given standard has a state of failed */ - Failed = "Failed", - /** All supported regulatory compliance controls in the given standard have a state of skipped */ - Skipped = "Skipped", - /** No supported regulatory compliance data for the given standard */ - Unsupported = "Unsupported", -} - -/** - * Defines values for State. \ - * {@link KnownState} can be used interchangeably with State, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Passed**: All supported regulatory compliance controls in the given standard have a passed state \ - * **Failed**: At least one supported regulatory compliance control in the given standard has a state of failed \ - * **Skipped**: All supported regulatory compliance controls in the given standard have a state of skipped \ - * **Unsupported**: No supported regulatory compliance data for the given standard - */ -export type State = string; - -/** Known values of {@link SubAssessmentStatusCode} that the service accepts. */ -export enum KnownSubAssessmentStatusCode { - /** The resource is healthy */ - Healthy = "Healthy", - /** The resource has a security issue that needs to be addressed */ - Unhealthy = "Unhealthy", - /** Assessment for this resource did not happen */ - NotApplicable = "NotApplicable", -} - -/** - * Defines values for SubAssessmentStatusCode. \ - * {@link KnownSubAssessmentStatusCode} can be used interchangeably with SubAssessmentStatusCode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Healthy**: The resource is healthy \ - * **Unhealthy**: The resource has a security issue that needs to be addressed \ - * **NotApplicable**: Assessment for this resource did not happen - */ -export type SubAssessmentStatusCode = string; - -/** Known values of {@link Severity} that the service accepts. */ -export enum KnownSeverity { - /** Low */ - Low = "Low", - /** Medium */ - Medium = "Medium", - /** High */ - High = "High", -} - -/** - * Defines values for Severity. \ - * {@link KnownSeverity} can be used interchangeably with Severity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Low** \ - * **Medium** \ - * **High** - */ -export type Severity = string; - -/** Known values of {@link Source} that the service accepts. */ -export enum KnownSource { - /** Resource is in Azure */ - Azure = "Azure", - /** Resource in an on premise machine connected to Azure cloud */ - OnPremise = "OnPremise", - /** SQL Resource in an on premise machine connected to Azure cloud */ - OnPremiseSql = "OnPremiseSql", -} - -/** - * Defines values for Source. \ - * {@link KnownSource} can be used interchangeably with Source, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Azure**: Resource is in Azure \ - * **OnPremise**: Resource in an on premise machine connected to Azure cloud \ - * **OnPremiseSql**: SQL Resource in an on premise machine connected to Azure cloud - */ -export type Source = string; - -/** Known values of {@link AssessedResourceType} that the service accepts. */ -export enum KnownAssessedResourceType { - /** SqlServerVulnerability */ - SqlServerVulnerability = "SqlServerVulnerability", - /** ContainerRegistryVulnerability */ - ContainerRegistryVulnerability = "ContainerRegistryVulnerability", - /** ServerVulnerability */ - ServerVulnerability = "ServerVulnerability", -} - -/** - * Defines values for AssessedResourceType. \ - * {@link KnownAssessedResourceType} can be used interchangeably with AssessedResourceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **SqlServerVulnerability** \ - * **ContainerRegistryVulnerability** \ - * **ServerVulnerability** - */ -export type AssessedResourceType = string; - -/** Known values of {@link HybridComputeProvisioningState} that the service accepts. */ -export enum KnownHybridComputeProvisioningState { - /** Valid service principal details. */ - Valid = "Valid", - /** Invalid service principal details. */ - Invalid = "Invalid", - /** the service principal details are expired */ - Expired = "Expired", -} - -/** - * Defines values for HybridComputeProvisioningState. \ - * {@link KnownHybridComputeProvisioningState} can be used interchangeably with HybridComputeProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Valid**: Valid service principal details. \ - * **Invalid**: Invalid service principal details. \ - * **Expired**: the service principal details are expired - */ -export type HybridComputeProvisioningState = string; - -/** Known values of {@link AuthenticationProvisioningState} that the service accepts. */ -export enum KnownAuthenticationProvisioningState { - /** Valid connector */ - Valid = "Valid", - /** Invalid connector */ - Invalid = "Invalid", - /** the connection has expired */ - Expired = "Expired", - /** Incorrect policy of the connector */ - IncorrectPolicy = "IncorrectPolicy", -} - -/** - * Defines values for AuthenticationProvisioningState. \ - * {@link KnownAuthenticationProvisioningState} can be used interchangeably with AuthenticationProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Valid**: Valid connector \ - * **Invalid**: Invalid connector \ - * **Expired**: the connection has expired \ - * **IncorrectPolicy**: Incorrect policy of the connector - */ -export type AuthenticationProvisioningState = string; - -/** Known values of {@link PermissionProperty} that the service accepts. */ -export enum KnownPermissionProperty { - /** This permission provides read only access to AWS Security Hub resources. */ - AWSAWSSecurityHubReadOnlyAccess = "AWS::AWSSecurityHubReadOnlyAccess", - /** This permission grants access to read security configuration metadata. */ - AWSSecurityAudit = "AWS::SecurityAudit", - /** The permission provides for EC2 Automation service to execute activities defined within Automation documents. */ - AWSAmazonSSMAutomationRole = "AWS::AmazonSSMAutomationRole", - /** This permission provides read only access to GCP Security Command Center. */ - GCPSecurityCenterAdminViewer = "GCP::Security Center Admin Viewer", -} - -/** - * Defines values for PermissionProperty. \ - * {@link KnownPermissionProperty} can be used interchangeably with PermissionProperty, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AWS::AWSSecurityHubReadOnlyAccess**: This permission provides read only access to AWS Security Hub resources. \ - * **AWS::SecurityAudit**: This permission grants access to read security configuration metadata. \ - * **AWS::AmazonSSMAutomationRole**: The permission provides for EC2 Automation service to execute activities defined within Automation documents. \ - * **GCP::Security Center Admin Viewer**: This permission provides read only access to GCP Security Command Center. - */ -export type PermissionProperty = string; - -/** Known values of {@link AuthenticationType} that the service accepts. */ -export enum KnownAuthenticationType { - /** AWS cloud account connector user credentials authentication */ - AwsCreds = "awsCreds", - /** AWS account connector assume role authentication */ - AwsAssumeRole = "awsAssumeRole", - /** GCP account connector service to service authentication */ - GcpCredentials = "gcpCredentials", -} - -/** - * Defines values for AuthenticationType. \ - * {@link KnownAuthenticationType} can be used interchangeably with AuthenticationType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **awsCreds**: AWS cloud account connector user credentials authentication \ - * **awsAssumeRole**: AWS account connector assume role authentication \ - * **gcpCredentials**: GCP account connector service to service authentication - */ -export type AuthenticationType = string; - -/** Known values of {@link SourceType} that the service accepts. */ -export enum KnownSourceType { - /** Alert */ - Alert = "Alert", - /** AttackPath */ - AttackPath = "AttackPath", -} - -/** - * Defines values for SourceType. \ - * {@link KnownSourceType} can be used interchangeably with SourceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Alert** \ - * **AttackPath** - */ -export type SourceType = string; - -/** Known values of {@link SecurityContactRole} that the service accepts. */ -export enum KnownSecurityContactRole { - /** If enabled, send notification on new alerts to the account admins */ - AccountAdmin = "AccountAdmin", - /** If enabled, send notification on new alerts to the service admins */ - ServiceAdmin = "ServiceAdmin", - /** If enabled, send notification on new alerts to the subscription owners */ - Owner = "Owner", - /** If enabled, send notification on new alerts to the subscription contributors */ - Contributor = "Contributor", -} - -/** - * Defines values for SecurityContactRole. \ - * {@link KnownSecurityContactRole} can be used interchangeably with SecurityContactRole, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AccountAdmin**: If enabled, send notification on new alerts to the account admins \ - * **ServiceAdmin**: If enabled, send notification on new alerts to the service admins \ - * **Owner**: If enabled, send notification on new alerts to the subscription owners \ - * **Contributor**: If enabled, send notification on new alerts to the subscription contributors - */ -export type SecurityContactRole = string; - -/** Known values of {@link SecurityContactName} that the service accepts. */ -export enum KnownSecurityContactName { - /** The single applicable name of the security contact object */ - Default = "default", -} - -/** - * Defines values for SecurityContactName. \ - * {@link KnownSecurityContactName} can be used interchangeably with SecurityContactName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **default**: The single applicable name of the security contact object - */ -export type SecurityContactName = string; - -/** Known values of {@link EndOfSupportStatus} that the service accepts. */ -export enum KnownEndOfSupportStatus { - /** None */ - None = "None", - /** NoLongerSupported */ - NoLongerSupported = "noLongerSupported", - /** VersionNoLongerSupported */ - VersionNoLongerSupported = "versionNoLongerSupported", - /** UpcomingNoLongerSupported */ - UpcomingNoLongerSupported = "upcomingNoLongerSupported", - /** UpcomingVersionNoLongerSupported */ - UpcomingVersionNoLongerSupported = "upcomingVersionNoLongerSupported", -} - -/** - * Defines values for EndOfSupportStatus. \ - * {@link KnownEndOfSupportStatus} can be used interchangeably with EndOfSupportStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **noLongerSupported** \ - * **versionNoLongerSupported** \ - * **upcomingNoLongerSupported** \ - * **upcomingVersionNoLongerSupported** - */ -export type EndOfSupportStatus = string; - -/** Known values of {@link CreatedByType} that the service accepts. */ -export enum KnownCreatedByType { - /** User */ - User = "User", - /** Application */ - Application = "Application", - /** ManagedIdentity */ - ManagedIdentity = "ManagedIdentity", - /** Key */ - Key = "Key", -} - -/** - * Defines values for CreatedByType. \ - * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **User** \ - * **Application** \ - * **ManagedIdentity** \ - * **Key** - */ -export type CreatedByType = string; - -/** Known values of {@link SupportedCloudEnum} that the service accepts. */ -export enum KnownSupportedCloudEnum { - /** AWS */ - AWS = "AWS", - /** GCP */ - GCP = "GCP", -} - -/** - * Defines values for SupportedCloudEnum. \ - * {@link KnownSupportedCloudEnum} can be used interchangeably with SupportedCloudEnum, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AWS** \ - * **GCP** - */ -export type SupportedCloudEnum = string; - -/** Known values of {@link SeverityEnum} that the service accepts. */ -export enum KnownSeverityEnum { - /** High */ - High = "High", - /** Medium */ - Medium = "Medium", - /** Low */ - Low = "Low", -} - -/** - * Defines values for SeverityEnum. \ - * {@link KnownSeverityEnum} can be used interchangeably with SeverityEnum, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **High** \ - * **Medium** \ - * **Low** - */ -export type SeverityEnum = string; - -/** Known values of {@link GovernanceRuleType} that the service accepts. */ -export enum KnownGovernanceRuleType { - /** The source of the rule type definition is integrated */ - Integrated = "Integrated", - /** The source of the rule type definition is ServiceNow */ - ServiceNow = "ServiceNow", -} - -/** - * Defines values for GovernanceRuleType. \ - * {@link KnownGovernanceRuleType} can be used interchangeably with GovernanceRuleType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Integrated**: The source of the rule type definition is integrated \ - * **ServiceNow**: The source of the rule type definition is ServiceNow - */ -export type GovernanceRuleType = string; - -/** Known values of {@link GovernanceRuleSourceResourceType} that the service accepts. */ -export enum KnownGovernanceRuleSourceResourceType { - /** The source of the governance rule is assessments */ - Assessments = "Assessments", -} - -/** - * Defines values for GovernanceRuleSourceResourceType. \ - * {@link KnownGovernanceRuleSourceResourceType} can be used interchangeably with GovernanceRuleSourceResourceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Assessments**: The source of the governance rule is assessments - */ -export type GovernanceRuleSourceResourceType = string; - -/** Known values of {@link GovernanceRuleOwnerSourceType} that the service accepts. */ -export enum KnownGovernanceRuleOwnerSourceType { - /** The rule source type defined using resource tag */ - ByTag = "ByTag", - /** The rule source type defined manually */ - Manually = "Manually", -} - -/** - * Defines values for GovernanceRuleOwnerSourceType. \ - * {@link KnownGovernanceRuleOwnerSourceType} can be used interchangeably with GovernanceRuleOwnerSourceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **ByTag**: The rule source type defined using resource tag \ - * **Manually**: The rule source type defined manually - */ -export type GovernanceRuleOwnerSourceType = string; - -/** Known values of {@link OperationResult} that the service accepts. */ -export enum KnownOperationResult { - /** The operation succeeded */ - Succeeded = "Succeeded", - /** The operation failed */ - Failed = "Failed", - /** The operation canceled */ - Canceled = "Canceled", -} - -/** - * Defines values for OperationResult. \ - * {@link KnownOperationResult} can be used interchangeably with OperationResult, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded**: The operation succeeded \ - * **Failed**: The operation failed \ - * **Canceled**: The operation canceled - */ -export type OperationResult = string; - -/** Known values of {@link ApplicationSourceResourceType} that the service accepts. */ -export enum KnownApplicationSourceResourceType { - /** The source of the application is assessments */ - Assessments = "Assessments", -} - -/** - * Defines values for ApplicationSourceResourceType. \ - * {@link KnownApplicationSourceResourceType} can be used interchangeably with ApplicationSourceResourceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Assessments**: The source of the application is assessments - */ -export type ApplicationSourceResourceType = string; - -/** Known values of {@link SettingName} that the service accepts. */ -export enum KnownSettingName { - /** Name of the Defender for Storage Settings name. */ - Current = "current", -} - -/** - * Defines values for SettingName. \ - * {@link KnownSettingName} can be used interchangeably with SettingName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **current**: Name of the Defender for Storage Settings name. - */ -export type SettingName = string; - -/** Known values of {@link ScanTriggerType} that the service accepts. */ -export enum KnownScanTriggerType { - /** OnDemand */ - OnDemand = "OnDemand", - /** Recurring */ - Recurring = "Recurring", -} - -/** - * Defines values for ScanTriggerType. \ - * {@link KnownScanTriggerType} can be used interchangeably with ScanTriggerType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **OnDemand**: OnDemand \ - * **Recurring**: Recurring - */ -export type ScanTriggerType = string; - -/** Known values of {@link ScanState} that the service accepts. */ -export enum KnownScanState { - /** Failed */ - Failed = "Failed", - /** FailedToRun */ - FailedToRun = "FailedToRun", - /** InProgress */ - InProgress = "InProgress", - /** Passed */ - Passed = "Passed", -} - -/** - * Defines values for ScanState. \ - * {@link KnownScanState} can be used interchangeably with ScanState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Failed**: Failed \ - * **FailedToRun**: FailedToRun \ - * **InProgress**: InProgress \ - * **Passed**: Passed - */ -export type ScanState = string; - -/** Known values of {@link RuleStatus} that the service accepts. */ -export enum KnownRuleStatus { - /** NonFinding */ - NonFinding = "NonFinding", - /** Finding */ - Finding = "Finding", - /** InternalError */ - InternalError = "InternalError", -} - -/** - * Defines values for RuleStatus. \ - * {@link KnownRuleStatus} can be used interchangeably with RuleStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **NonFinding**: NonFinding \ - * **Finding**: Finding \ - * **InternalError**: InternalError - */ -export type RuleStatus = string; - -/** Known values of {@link RuleSeverity} that the service accepts. */ -export enum KnownRuleSeverity { - /** High */ - High = "High", - /** Medium */ - Medium = "Medium", - /** Low */ - Low = "Low", - /** Informational */ - Informational = "Informational", - /** Obsolete */ - Obsolete = "Obsolete", -} - -/** - * Defines values for RuleSeverity. \ - * {@link KnownRuleSeverity} can be used interchangeably with RuleSeverity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **High**: High \ - * **Medium**: Medium \ - * **Low**: Low \ - * **Informational**: Informational \ - * **Obsolete**: Obsolete - */ -export type RuleSeverity = string; - -/** Known values of {@link RuleType} that the service accepts. */ -export enum KnownRuleType { - /** Binary */ - Binary = "Binary", - /** BaselineExpected */ - BaselineExpected = "BaselineExpected", - /** PositiveList */ - PositiveList = "PositiveList", - /** NegativeList */ - NegativeList = "NegativeList", -} - -/** - * Defines values for RuleType. \ - * {@link KnownRuleType} can be used interchangeably with RuleType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Binary**: Binary \ - * **BaselineExpected**: BaselineExpected \ - * **PositiveList**: PositiveList \ - * **NegativeList**: NegativeList - */ -export type RuleType = string; - -/** Known values of {@link MipIntegrationStatus} that the service accepts. */ -export enum KnownMipIntegrationStatus { - /** Ok */ - Ok = "Ok", - /** NoConsent */ - NoConsent = "noConsent", - /** NoAutoLabelingRules */ - NoAutoLabelingRules = "noAutoLabelingRules", - /** NoMipLabels */ - NoMipLabels = "noMipLabels", -} - -/** - * Defines values for MipIntegrationStatus. \ - * {@link KnownMipIntegrationStatus} can be used interchangeably with MipIntegrationStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Ok** \ - * **noConsent** \ - * **noAutoLabelingRules** \ - * **noMipLabels** - */ -export type MipIntegrationStatus = string; - -/** Known values of {@link StatusName} that the service accepts. */ -export enum KnownStatusName { - /** Healthy */ - Healthy = "Healthy", - /** NotHealthy */ - NotHealthy = "NotHealthy", - /** NotApplicable */ - NotApplicable = "NotApplicable", -} - -/** - * Defines values for StatusName. \ - * {@link KnownStatusName} can be used interchangeably with StatusName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Healthy** \ - * **NotHealthy** \ - * **NotApplicable** - */ -export type StatusName = string; - -/** Known values of {@link DevOpsProvisioningState} that the service accepts. */ -export enum KnownDevOpsProvisioningState { - /** Succeeded */ - Succeeded = "Succeeded", - /** Failed */ - Failed = "Failed", - /** Canceled */ - Canceled = "Canceled", - /** Pending */ - Pending = "Pending", - /** PendingDeletion */ - PendingDeletion = "PendingDeletion", - /** DeletionSuccess */ - DeletionSuccess = "DeletionSuccess", - /** DeletionFailure */ - DeletionFailure = "DeletionFailure", -} - -/** - * Defines values for DevOpsProvisioningState. \ - * {@link KnownDevOpsProvisioningState} can be used interchangeably with DevOpsProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded** \ - * **Failed** \ - * **Canceled** \ - * **Pending** \ - * **PendingDeletion** \ - * **DeletionSuccess** \ - * **DeletionFailure** - */ -export type DevOpsProvisioningState = string; - -/** Known values of {@link OnboardingState} that the service accepts. */ -export enum KnownOnboardingState { - /** NotApplicable */ - NotApplicable = "NotApplicable", - /** OnboardedByOtherConnector */ - OnboardedByOtherConnector = "OnboardedByOtherConnector", - /** Onboarded */ - Onboarded = "Onboarded", - /** NotOnboarded */ - NotOnboarded = "NotOnboarded", -} - -/** - * Defines values for OnboardingState. \ - * {@link KnownOnboardingState} can be used interchangeably with OnboardingState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **NotApplicable** \ - * **OnboardedByOtherConnector** \ - * **Onboarded** \ - * **NotOnboarded** - */ -export type OnboardingState = string; - -/** Known values of {@link ActionableRemediationState} that the service accepts. */ -export enum KnownActionableRemediationState { - /** None */ - None = "None", - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for ActionableRemediationState. \ - * {@link KnownActionableRemediationState} can be used interchangeably with ActionableRemediationState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **None** \ - * **Disabled** \ - * **Enabled** - */ -export type ActionableRemediationState = string; - -/** Known values of {@link RuleCategory} that the service accepts. */ -export enum KnownRuleCategory { - /** Code */ - Code = "Code", - /** Artifacts */ - Artifacts = "Artifacts", - /** Dependencies */ - Dependencies = "Dependencies", - /** Secrets */ - Secrets = "Secrets", - /** IaC */ - IaC = "IaC", - /** Containers */ - Containers = "Containers", -} - -/** - * Defines values for RuleCategory. \ - * {@link KnownRuleCategory} can be used interchangeably with RuleCategory, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Code** \ - * **Artifacts** \ - * **Dependencies** \ - * **Secrets** \ - * **IaC** \ - * **Containers** - */ -export type RuleCategory = string; - -/** Known values of {@link AnnotateDefaultBranchState} that the service accepts. */ -export enum KnownAnnotateDefaultBranchState { - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for AnnotateDefaultBranchState. \ - * {@link KnownAnnotateDefaultBranchState} can be used interchangeably with AnnotateDefaultBranchState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled** \ - * **Enabled** - */ -export type AnnotateDefaultBranchState = string; - -/** Known values of {@link InheritFromParentState} that the service accepts. */ -export enum KnownInheritFromParentState { - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for InheritFromParentState. \ - * {@link KnownInheritFromParentState} can be used interchangeably with InheritFromParentState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled** \ - * **Enabled** - */ -export type InheritFromParentState = string; - -/** Known values of {@link AutoDiscovery} that the service accepts. */ -export enum KnownAutoDiscovery { - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", - /** NotApplicable */ - NotApplicable = "NotApplicable", -} - -/** - * Defines values for AutoDiscovery. \ - * {@link KnownAutoDiscovery} can be used interchangeably with AutoDiscovery, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled** \ - * **Enabled** \ - * **NotApplicable** - */ -export type AutoDiscovery = string; - -/** Known values of {@link CloudName} that the service accepts. */ -export enum KnownCloudName { - /** Azure */ - Azure = "Azure", - /** AWS */ - AWS = "AWS", - /** GCP */ - GCP = "GCP", - /** Github */ - Github = "Github", - /** AzureDevOps */ - AzureDevOps = "AzureDevOps", - /** GitLab */ - GitLab = "GitLab", -} - -/** - * Defines values for CloudName. \ - * {@link KnownCloudName} can be used interchangeably with CloudName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Azure** \ - * **AWS** \ - * **GCP** \ - * **Github** \ - * **AzureDevOps** \ - * **GitLab** - */ -export type CloudName = string; - -/** Known values of {@link OfferingType} that the service accepts. */ -export enum KnownOfferingType { - /** CspmMonitorAws */ - CspmMonitorAws = "CspmMonitorAws", - /** DefenderForContainersAws */ - DefenderForContainersAws = "DefenderForContainersAws", - /** DefenderForServersAws */ - DefenderForServersAws = "DefenderForServersAws", - /** DefenderForDatabasesAws */ - DefenderForDatabasesAws = "DefenderForDatabasesAws", - /** InformationProtectionAws */ - InformationProtectionAws = "InformationProtectionAws", - /** CspmMonitorGcp */ - CspmMonitorGcp = "CspmMonitorGcp", - /** CspmMonitorGithub */ - CspmMonitorGithub = "CspmMonitorGithub", - /** CspmMonitorAzureDevOps */ - CspmMonitorAzureDevOps = "CspmMonitorAzureDevOps", - /** DefenderForServersGcp */ - DefenderForServersGcp = "DefenderForServersGcp", - /** DefenderForContainersGcp */ - DefenderForContainersGcp = "DefenderForContainersGcp", - /** DefenderForDatabasesGcp */ - DefenderForDatabasesGcp = "DefenderForDatabasesGcp", - /** DefenderCspmAws */ - DefenderCspmAws = "DefenderCspmAws", - /** DefenderCspmGcp */ - DefenderCspmGcp = "DefenderCspmGcp", - /** DefenderForDevOpsGithub */ - DefenderForDevOpsGithub = "DefenderForDevOpsGithub", - /** DefenderForDevOpsAzureDevOps */ - DefenderForDevOpsAzureDevOps = "DefenderForDevOpsAzureDevOps", - /** CspmMonitorGitLab */ - CspmMonitorGitLab = "CspmMonitorGitLab", - /** DefenderForDevOpsGitLab */ - DefenderForDevOpsGitLab = "DefenderForDevOpsGitLab", -} - -/** - * Defines values for OfferingType. \ - * {@link KnownOfferingType} can be used interchangeably with OfferingType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **CspmMonitorAws** \ - * **DefenderForContainersAws** \ - * **DefenderForServersAws** \ - * **DefenderForDatabasesAws** \ - * **InformationProtectionAws** \ - * **CspmMonitorGcp** \ - * **CspmMonitorGithub** \ - * **CspmMonitorAzureDevOps** \ - * **DefenderForServersGcp** \ - * **DefenderForContainersGcp** \ - * **DefenderForDatabasesGcp** \ - * **DefenderCspmAws** \ - * **DefenderCspmGcp** \ - * **DefenderForDevOpsGithub** \ - * **DefenderForDevOpsAzureDevOps** \ - * **CspmMonitorGitLab** \ - * **DefenderForDevOpsGitLab** - */ -export type OfferingType = string; - -/** Known values of {@link EnvironmentType} that the service accepts. */ -export enum KnownEnvironmentType { - /** AwsAccount */ - AwsAccount = "AwsAccount", - /** GcpProject */ - GcpProject = "GcpProject", - /** GithubScope */ - GithubScope = "GithubScope", - /** AzureDevOpsScope */ - AzureDevOpsScope = "AzureDevOpsScope", - /** GitlabScope */ - GitlabScope = "GitlabScope", -} - -/** - * Defines values for EnvironmentType. \ - * {@link KnownEnvironmentType} can be used interchangeably with EnvironmentType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AwsAccount** \ - * **GcpProject** \ - * **GithubScope** \ - * **AzureDevOpsScope** \ - * **GitlabScope** - */ -export type EnvironmentType = string; - -/** Known values of {@link ResourceStatus} that the service accepts. */ -export enum KnownResourceStatus { - /** This assessment on the resource is healthy */ - Healthy = "Healthy", - /** This assessment is not applicable to this resource */ - NotApplicable = "NotApplicable", - /** This assessment is turned off by policy on this subscription */ - OffByPolicy = "OffByPolicy", - /** This assessment on the resource is not healthy */ - NotHealthy = "NotHealthy", -} - -/** - * Defines values for ResourceStatus. \ - * {@link KnownResourceStatus} can be used interchangeably with ResourceStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Healthy**: This assessment on the resource is healthy \ - * **NotApplicable**: This assessment is not applicable to this resource \ - * **OffByPolicy**: This assessment is turned off by policy on this subscription \ - * **NotHealthy**: This assessment on the resource is not healthy - */ -export type ResourceStatus = string; - -/** Known values of {@link ValueType} that the service accepts. */ -export enum KnownValueType { - /** An IP range in CIDR format (e.g. '192.168.0.1\/8'). */ - IpCidr = "IpCidr", - /** Any string value. */ - String = "String", -} - -/** - * Defines values for ValueType. \ - * {@link KnownValueType} can be used interchangeably with ValueType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **IpCidr**: An IP range in CIDR format (e.g. '192.168.0.1\/8'). \ - * **String**: Any string value. - */ -export type ValueType = string; - -/** Known values of {@link ReportedSeverity} that the service accepts. */ -export enum KnownReportedSeverity { - /** Informational */ - Informational = "Informational", - /** Low */ - Low = "Low", - /** Medium */ - Medium = "Medium", - /** High */ - High = "High", -} - -/** - * Defines values for ReportedSeverity. \ - * {@link KnownReportedSeverity} can be used interchangeably with ReportedSeverity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Informational** \ - * **Low** \ - * **Medium** \ - * **High** - */ -export type ReportedSeverity = string; - -/** Known values of {@link SecuritySolutionStatus} that the service accepts. */ -export enum KnownSecuritySolutionStatus { - /** Enabled */ - Enabled = "Enabled", - /** Disabled */ - Disabled = "Disabled", -} - -/** - * Defines values for SecuritySolutionStatus. \ - * {@link KnownSecuritySolutionStatus} can be used interchangeably with SecuritySolutionStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Enabled** \ - * **Disabled** - */ -export type SecuritySolutionStatus = string; - -/** Known values of {@link ExportData} that the service accepts. */ -export enum KnownExportData { - /** Agent raw events */ - RawEvents = "RawEvents", -} - -/** - * Defines values for ExportData. \ - * {@link KnownExportData} can be used interchangeably with ExportData, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **RawEvents**: Agent raw events - */ -export type ExportData = string; - -/** Known values of {@link DataSource} that the service accepts. */ -export enum KnownDataSource { - /** Devices twin data */ - TwinData = "TwinData", -} - -/** - * Defines values for DataSource. \ - * {@link KnownDataSource} can be used interchangeably with DataSource, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **TwinData**: Devices twin data - */ -export type DataSource = string; - -/** Known values of {@link RecommendationType} that the service accepts. */ -export enum KnownRecommendationType { - /** Authentication schema used for pull an edge module from an ACR repository does not use Service Principal Authentication. */ - IoTAcrauthentication = "IoT_ACRAuthentication", - /** IoT agent message size capacity is currently underutilized, causing an increase in the number of sent messages. Adjust message intervals for better utilization. */ - IoTAgentSendsUnutilizedMessages = "IoT_AgentSendsUnutilizedMessages", - /** Identified security related system configuration issues. */ - IoTBaseline = "IoT_Baseline", - /** You can optimize Edge Hub memory usage by turning off protocol heads for any protocols not used by Edge modules in your solution. */ - IoTEdgeHubMemOptimize = "IoT_EdgeHubMemOptimize", - /** Logging is disabled for this edge module. */ - IoTEdgeLoggingOptions = "IoT_EdgeLoggingOptions", - /** A minority within a device security group has inconsistent Edge Module settings with the rest of their group. */ - IoTInconsistentModuleSettings = "IoT_InconsistentModuleSettings", - /** Install the Azure Security of Things Agent. */ - IoTInstallAgent = "IoT_InstallAgent", - /** IP Filter Configuration should have rules defined for allowed traffic and should deny all other traffic by default. */ - IoTIpfilterDenyAll = "IoT_IPFilter_DenyAll", - /** An Allow IP Filter rules source IP range is too large. Overly permissive rules might expose your IoT hub to malicious intenders. */ - IoTIpfilterPermissiveRule = "IoT_IPFilter_PermissiveRule", - /** A listening endpoint was found on the device. */ - IoTOpenPorts = "IoT_OpenPorts", - /** An Allowed firewall policy was found (INPUT\/OUTPUT). The policy should Deny all traffic by default and define rules to allow necessary communication to\/from the device. */ - IoTPermissiveFirewallPolicy = "IoT_PermissiveFirewallPolicy", - /** A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. */ - IoTPermissiveInputFirewallRules = "IoT_PermissiveInputFirewallRules", - /** A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. */ - IoTPermissiveOutputFirewallRules = "IoT_PermissiveOutputFirewallRules", - /** Edge module is configured to run in privileged mode, with extensive Linux capabilities or with host-level network access (send\/receive data to host machine). */ - IoTPrivilegedDockerOptions = "IoT_PrivilegedDockerOptions", - /** Same authentication credentials to the IoT Hub used by multiple devices. This could indicate an illegitimate device impersonating a legitimate device. It also exposes the risk of device impersonation by an attacker. */ - IoTSharedCredentials = "IoT_SharedCredentials", - /** Insecure TLS configurations detected. Immediate upgrade recommended. */ - IoTVulnerableTLSCipherSuite = "IoT_VulnerableTLSCipherSuite", -} - -/** - * Defines values for RecommendationType. \ - * {@link KnownRecommendationType} can be used interchangeably with RecommendationType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **IoT_ACRAuthentication**: Authentication schema used for pull an edge module from an ACR repository does not use Service Principal Authentication. \ - * **IoT_AgentSendsUnutilizedMessages**: IoT agent message size capacity is currently underutilized, causing an increase in the number of sent messages. Adjust message intervals for better utilization. \ - * **IoT_Baseline**: Identified security related system configuration issues. \ - * **IoT_EdgeHubMemOptimize**: You can optimize Edge Hub memory usage by turning off protocol heads for any protocols not used by Edge modules in your solution. \ - * **IoT_EdgeLoggingOptions**: Logging is disabled for this edge module. \ - * **IoT_InconsistentModuleSettings**: A minority within a device security group has inconsistent Edge Module settings with the rest of their group. \ - * **IoT_InstallAgent**: Install the Azure Security of Things Agent. \ - * **IoT_IPFilter_DenyAll**: IP Filter Configuration should have rules defined for allowed traffic and should deny all other traffic by default. \ - * **IoT_IPFilter_PermissiveRule**: An Allow IP Filter rules source IP range is too large. Overly permissive rules might expose your IoT hub to malicious intenders. \ - * **IoT_OpenPorts**: A listening endpoint was found on the device. \ - * **IoT_PermissiveFirewallPolicy**: An Allowed firewall policy was found (INPUT\/OUTPUT). The policy should Deny all traffic by default and define rules to allow necessary communication to\/from the device. \ - * **IoT_PermissiveInputFirewallRules**: A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. \ - * **IoT_PermissiveOutputFirewallRules**: A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. \ - * **IoT_PrivilegedDockerOptions**: Edge module is configured to run in privileged mode, with extensive Linux capabilities or with host-level network access (send\/receive data to host machine). \ - * **IoT_SharedCredentials**: Same authentication credentials to the IoT Hub used by multiple devices. This could indicate an illegitimate device impersonating a legitimate device. It also exposes the risk of device impersonation by an attacker. \ - * **IoT_VulnerableTLSCipherSuite**: Insecure TLS configurations detected. Immediate upgrade recommended. - */ -export type RecommendationType = string; - -/** Known values of {@link RecommendationConfigStatus} that the service accepts. */ -export enum KnownRecommendationConfigStatus { - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for RecommendationConfigStatus. \ - * {@link KnownRecommendationConfigStatus} can be used interchangeably with RecommendationConfigStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled** \ - * **Enabled** - */ -export type RecommendationConfigStatus = string; - -/** Known values of {@link UnmaskedIpLoggingStatus} that the service accepts. */ -export enum KnownUnmaskedIpLoggingStatus { - /** Unmasked IP logging is disabled */ - Disabled = "Disabled", - /** Unmasked IP logging is enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for UnmaskedIpLoggingStatus. \ - * {@link KnownUnmaskedIpLoggingStatus} can be used interchangeably with UnmaskedIpLoggingStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled**: Unmasked IP logging is disabled \ - * **Enabled**: Unmasked IP logging is enabled - */ -export type UnmaskedIpLoggingStatus = string; - -/** Known values of {@link AdditionalWorkspaceType} that the service accepts. */ -export enum KnownAdditionalWorkspaceType { - /** Sentinel */ - Sentinel = "Sentinel", -} - -/** - * Defines values for AdditionalWorkspaceType. \ - * {@link KnownAdditionalWorkspaceType} can be used interchangeably with AdditionalWorkspaceType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Sentinel** - */ -export type AdditionalWorkspaceType = string; - -/** Known values of {@link AdditionalWorkspaceDataType} that the service accepts. */ -export enum KnownAdditionalWorkspaceDataType { - /** Alerts */ - Alerts = "Alerts", - /** RawEvents */ - RawEvents = "RawEvents", -} - -/** - * Defines values for AdditionalWorkspaceDataType. \ - * {@link KnownAdditionalWorkspaceDataType} can be used interchangeably with AdditionalWorkspaceDataType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Alerts** \ - * **RawEvents** - */ -export type AdditionalWorkspaceDataType = string; - -/** Known values of {@link Direction} that the service accepts. */ -export enum KnownDirection { - /** Inbound */ - Inbound = "Inbound", - /** Outbound */ - Outbound = "Outbound", -} - -/** - * Defines values for Direction. \ - * {@link KnownDirection} can be used interchangeably with Direction, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Inbound** \ - * **Outbound** - */ -export type Direction = string; - -/** Known values of {@link TransportProtocol} that the service accepts. */ -export enum KnownTransportProtocol { - /** TCP */ - TCP = "TCP", - /** UDP */ - UDP = "UDP", -} - -/** - * Defines values for TransportProtocol. \ - * {@link KnownTransportProtocol} can be used interchangeably with TransportProtocol, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **TCP** \ - * **UDP** - */ -export type TransportProtocol = string; - -/** Known values of {@link ConnectionType} that the service accepts. */ -export enum KnownConnectionType { - /** Internal */ - Internal = "Internal", - /** External */ - External = "External", -} - -/** - * Defines values for ConnectionType. \ - * {@link KnownConnectionType} can be used interchangeably with ConnectionType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Internal** \ - * **External** - */ -export type ConnectionType = string; - -/** Known values of {@link EnforcementMode} that the service accepts. */ -export enum KnownEnforcementMode { - /** Audit */ - Audit = "Audit", - /** Enforce */ - Enforce = "Enforce", - /** None */ - None = "None", -} - -/** - * Defines values for EnforcementMode. \ - * {@link KnownEnforcementMode} can be used interchangeably with EnforcementMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Audit** \ - * **Enforce** \ - * **None** - */ -export type EnforcementMode = string; - -/** Known values of {@link ConfigurationStatus} that the service accepts. */ -export enum KnownConfigurationStatus { - /** Configured */ - Configured = "Configured", - /** NotConfigured */ - NotConfigured = "NotConfigured", - /** InProgress */ - InProgress = "InProgress", - /** Failed */ - Failed = "Failed", - /** NoStatus */ - NoStatus = "NoStatus", -} - -/** - * Defines values for ConfigurationStatus. \ - * {@link KnownConfigurationStatus} can be used interchangeably with ConfigurationStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Configured** \ - * **NotConfigured** \ - * **InProgress** \ - * **Failed** \ - * **NoStatus** - */ -export type ConfigurationStatus = string; - -/** Known values of {@link RecommendationStatus} that the service accepts. */ -export enum KnownRecommendationStatus { - /** Recommended */ - Recommended = "Recommended", - /** NotRecommended */ - NotRecommended = "NotRecommended", - /** NotAvailable */ - NotAvailable = "NotAvailable", - /** NoStatus */ - NoStatus = "NoStatus", -} - -/** - * Defines values for RecommendationStatus. \ - * {@link KnownRecommendationStatus} can be used interchangeably with RecommendationStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Recommended** \ - * **NotRecommended** \ - * **NotAvailable** \ - * **NoStatus** - */ -export type RecommendationStatus = string; - -/** Known values of {@link AdaptiveApplicationControlIssue} that the service accepts. */ -export enum KnownAdaptiveApplicationControlIssue { - /** ViolationsAudited */ - ViolationsAudited = "ViolationsAudited", - /** ViolationsBlocked */ - ViolationsBlocked = "ViolationsBlocked", - /** MsiAndScriptViolationsAudited */ - MsiAndScriptViolationsAudited = "MsiAndScriptViolationsAudited", - /** MsiAndScriptViolationsBlocked */ - MsiAndScriptViolationsBlocked = "MsiAndScriptViolationsBlocked", - /** ExecutableViolationsAudited */ - ExecutableViolationsAudited = "ExecutableViolationsAudited", - /** RulesViolatedManually */ - RulesViolatedManually = "RulesViolatedManually", -} - -/** - * Defines values for AdaptiveApplicationControlIssue. \ - * {@link KnownAdaptiveApplicationControlIssue} can be used interchangeably with AdaptiveApplicationControlIssue, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **ViolationsAudited** \ - * **ViolationsBlocked** \ - * **MsiAndScriptViolationsAudited** \ - * **MsiAndScriptViolationsBlocked** \ - * **ExecutableViolationsAudited** \ - * **RulesViolatedManually** - */ -export type AdaptiveApplicationControlIssue = string; - -/** Known values of {@link SourceSystem} that the service accepts. */ -export enum KnownSourceSystem { - /** AzureAppLocker */ - AzureAppLocker = "Azure_AppLocker", - /** AzureAuditD */ - AzureAuditD = "Azure_AuditD", - /** NonAzureAppLocker */ - NonAzureAppLocker = "NonAzure_AppLocker", - /** NonAzureAuditD */ - NonAzureAuditD = "NonAzure_AuditD", - /** None */ - None = "None", -} - -/** - * Defines values for SourceSystem. \ - * {@link KnownSourceSystem} can be used interchangeably with SourceSystem, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Azure_AppLocker** \ - * **Azure_AuditD** \ - * **NonAzure_AppLocker** \ - * **NonAzure_AuditD** \ - * **None** - */ -export type SourceSystem = string; - -/** Known values of {@link RecommendationAction} that the service accepts. */ -export enum KnownRecommendationAction { - /** Recommended */ - Recommended = "Recommended", - /** Add */ - Add = "Add", - /** Remove */ - Remove = "Remove", -} - -/** - * Defines values for RecommendationAction. \ - * {@link KnownRecommendationAction} can be used interchangeably with RecommendationAction, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Recommended** \ - * **Add** \ - * **Remove** - */ -export type RecommendationAction = string; - -/** Known values of {@link EnforcementSupport} that the service accepts. */ -export enum KnownEnforcementSupport { - /** Supported */ - Supported = "Supported", - /** NotSupported */ - NotSupported = "NotSupported", - /** Unknown */ - Unknown = "Unknown", -} - -/** - * Defines values for EnforcementSupport. \ - * {@link KnownEnforcementSupport} can be used interchangeably with EnforcementSupport, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Supported** \ - * **NotSupported** \ - * **Unknown** - */ -export type EnforcementSupport = string; - -/** Known values of {@link FileType} that the service accepts. */ -export enum KnownFileType { - /** Exe */ - Exe = "Exe", - /** Dll */ - Dll = "Dll", - /** Msi */ - Msi = "Msi", - /** Script */ - Script = "Script", - /** Executable */ - Executable = "Executable", - /** Unknown */ - Unknown = "Unknown", -} - -/** - * Defines values for FileType. \ - * {@link KnownFileType} can be used interchangeably with FileType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Exe** \ - * **Dll** \ - * **Msi** \ - * **Script** \ - * **Executable** \ - * **Unknown** - */ -export type FileType = string; - -/** Known values of {@link SecurityFamily} that the service accepts. */ -export enum KnownSecurityFamily { - /** Waf */ - Waf = "Waf", - /** Ngfw */ - Ngfw = "Ngfw", - /** SaasWaf */ - SaasWaf = "SaasWaf", - /** Va */ - Va = "Va", -} - -/** - * Defines values for SecurityFamily. \ - * {@link KnownSecurityFamily} can be used interchangeably with SecurityFamily, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Waf** \ - * **Ngfw** \ - * **SaasWaf** \ - * **Va** - */ -export type SecurityFamily = string; - -/** Known values of {@link ExternalSecuritySolutionKind} that the service accepts. */ -export enum KnownExternalSecuritySolutionKind { - /** CEF */ - CEF = "CEF", - /** ATA */ - ATA = "ATA", - /** AAD */ - AAD = "AAD", -} - -/** - * Defines values for ExternalSecuritySolutionKind. \ - * {@link KnownExternalSecuritySolutionKind} can be used interchangeably with ExternalSecuritySolutionKind, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **CEF** \ - * **ATA** \ - * **AAD** - */ -export type ExternalSecuritySolutionKind = string; - -/** Known values of {@link Protocol} that the service accepts. */ -export enum KnownProtocol { - /** TCP */ - TCP = "TCP", - /** UDP */ - UDP = "UDP", - /** All */ - All = "*", -} - -/** - * Defines values for Protocol. \ - * {@link KnownProtocol} can be used interchangeably with Protocol, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **TCP** \ - * **UDP** \ - * ***** - */ -export type Protocol = string; - -/** Known values of {@link Status} that the service accepts. */ -export enum KnownStatus { - /** Revoked */ - Revoked = "Revoked", - /** Initiated */ - Initiated = "Initiated", -} - -/** - * Defines values for Status. \ - * {@link KnownStatus} can be used interchangeably with Status, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Revoked** \ - * **Initiated** - */ -export type Status = string; - -/** Known values of {@link StatusReason} that the service accepts. */ -export enum KnownStatusReason { - /** Expired */ - Expired = "Expired", - /** UserRequested */ - UserRequested = "UserRequested", - /** NewerRequestInitiated */ - NewerRequestInitiated = "NewerRequestInitiated", -} - -/** - * Defines values for StatusReason. \ - * {@link KnownStatusReason} can be used interchangeably with StatusReason, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Expired** \ - * **UserRequested** \ - * **NewerRequestInitiated** - */ -export type StatusReason = string; - -/** Known values of {@link ExpandControlsEnum} that the service accepts. */ -export enum KnownExpandControlsEnum { - /** Add definition object for each control */ - Definition = "definition", -} - -/** - * Defines values for ExpandControlsEnum. \ - * {@link KnownExpandControlsEnum} can be used interchangeably with ExpandControlsEnum, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **definition**: Add definition object for each control - */ -export type ExpandControlsEnum = string; - -/** Known values of {@link ControlType} that the service accepts. */ -export enum KnownControlType { - /** Microsoft Defender for Cloud managed assessments */ - BuiltIn = "BuiltIn", - /** Non Microsoft Defender for Cloud managed assessments */ - Custom = "Custom", -} - -/** - * Defines values for ControlType. \ - * {@link KnownControlType} can be used interchangeably with ControlType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **BuiltIn**: Microsoft Defender for Cloud managed assessments \ - * **Custom**: Non Microsoft Defender for Cloud managed assessments - */ -export type ControlType = string; - -/** Known values of {@link ProvisioningState} that the service accepts. */ -export enum KnownProvisioningState { - /** Succeeded */ - Succeeded = "Succeeded", - /** Failed */ - Failed = "Failed", - /** Updating */ - Updating = "Updating", -} - -/** - * Defines values for ProvisioningState. \ - * {@link KnownProvisioningState} can be used interchangeably with ProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded** \ - * **Failed** \ - * **Updating** - */ -export type ProvisioningState = string; - -/** Known values of {@link ServerVulnerabilityAssessmentPropertiesProvisioningState} that the service accepts. */ -export enum KnownServerVulnerabilityAssessmentPropertiesProvisioningState { - /** Succeeded */ - Succeeded = "Succeeded", - /** Failed */ - Failed = "Failed", - /** Canceled */ - Canceled = "Canceled", - /** Provisioning */ - Provisioning = "Provisioning", - /** Deprovisioning */ - Deprovisioning = "Deprovisioning", -} - -/** - * Defines values for ServerVulnerabilityAssessmentPropertiesProvisioningState. \ - * {@link KnownServerVulnerabilityAssessmentPropertiesProvisioningState} can be used interchangeably with ServerVulnerabilityAssessmentPropertiesProvisioningState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded** \ - * **Failed** \ - * **Canceled** \ - * **Provisioning** \ - * **Deprovisioning** - */ -export type ServerVulnerabilityAssessmentPropertiesProvisioningState = string; - -/** Known values of {@link Tactics} that the service accepts. */ -export enum KnownTactics { - /** Reconnaissance */ - Reconnaissance = "Reconnaissance", - /** ResourceDevelopment */ - ResourceDevelopment = "Resource Development", - /** InitialAccess */ - InitialAccess = "Initial Access", - /** Execution */ - Execution = "Execution", - /** Persistence */ - Persistence = "Persistence", - /** PrivilegeEscalation */ - PrivilegeEscalation = "Privilege Escalation", - /** DefenseEvasion */ - DefenseEvasion = "Defense Evasion", - /** CredentialAccess */ - CredentialAccess = "Credential Access", - /** Discovery */ - Discovery = "Discovery", - /** LateralMovement */ - LateralMovement = "Lateral Movement", - /** Collection */ - Collection = "Collection", - /** CommandAndControl */ - CommandAndControl = "Command and Control", - /** Exfiltration */ - Exfiltration = "Exfiltration", - /** Impact */ - Impact = "Impact", -} - -/** - * Defines values for Tactics. \ - * {@link KnownTactics} can be used interchangeably with Tactics, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Reconnaissance** \ - * **Resource Development** \ - * **Initial Access** \ - * **Execution** \ - * **Persistence** \ - * **Privilege Escalation** \ - * **Defense Evasion** \ - * **Credential Access** \ - * **Discovery** \ - * **Lateral Movement** \ - * **Collection** \ - * **Command and Control** \ - * **Exfiltration** \ - * **Impact** - */ -export type Tactics = string; - -/** Known values of {@link Techniques} that the service accepts. */ -export enum KnownTechniques { - /** AbuseElevationControlMechanism */ - AbuseElevationControlMechanism = "Abuse Elevation Control Mechanism", - /** AccessTokenManipulation */ - AccessTokenManipulation = "Access Token Manipulation", - /** AccountDiscovery */ - AccountDiscovery = "Account Discovery", - /** AccountManipulation */ - AccountManipulation = "Account Manipulation", - /** ActiveScanning */ - ActiveScanning = "Active Scanning", - /** ApplicationLayerProtocol */ - ApplicationLayerProtocol = "Application Layer Protocol", - /** AudioCapture */ - AudioCapture = "Audio Capture", - /** BootOrLogonAutostartExecution */ - BootOrLogonAutostartExecution = "Boot or Logon Autostart Execution", - /** BootOrLogonInitializationScripts */ - BootOrLogonInitializationScripts = "Boot or Logon Initialization Scripts", - /** BruteForce */ - BruteForce = "Brute Force", - /** CloudInfrastructureDiscovery */ - CloudInfrastructureDiscovery = "Cloud Infrastructure Discovery", - /** CloudServiceDashboard */ - CloudServiceDashboard = "Cloud Service Dashboard", - /** CloudServiceDiscovery */ - CloudServiceDiscovery = "Cloud Service Discovery", - /** CommandAndScriptingInterpreter */ - CommandAndScriptingInterpreter = "Command and Scripting Interpreter", - /** CompromiseClientSoftwareBinary */ - CompromiseClientSoftwareBinary = "Compromise Client Software Binary", - /** CompromiseInfrastructure */ - CompromiseInfrastructure = "Compromise Infrastructure", - /** ContainerAndResourceDiscovery */ - ContainerAndResourceDiscovery = "Container and Resource Discovery", - /** CreateAccount */ - CreateAccount = "Create Account", - /** CreateOrModifySystemProcess */ - CreateOrModifySystemProcess = "Create or Modify System Process", - /** CredentialsFromPasswordStores */ - CredentialsFromPasswordStores = "Credentials from Password Stores", - /** DataDestruction */ - DataDestruction = "Data Destruction", - /** DataEncryptedForImpact */ - DataEncryptedForImpact = "Data Encrypted for Impact", - /** DataFromCloudStorageObject */ - DataFromCloudStorageObject = "Data from Cloud Storage Object", - /** DataFromConfigurationRepository */ - DataFromConfigurationRepository = "Data from Configuration Repository", - /** DataFromInformationRepositories */ - DataFromInformationRepositories = "Data from Information Repositories", - /** DataFromLocalSystem */ - DataFromLocalSystem = "Data from Local System", - /** DataManipulation */ - DataManipulation = "Data Manipulation", - /** DataStaged */ - DataStaged = "Data Staged", - /** Defacement */ - Defacement = "Defacement", - /** DeobfuscateDecodeFilesOrInformation */ - DeobfuscateDecodeFilesOrInformation = "Deobfuscate/Decode Files or Information", - /** DiskWipe */ - DiskWipe = "Disk Wipe", - /** DomainTrustDiscovery */ - DomainTrustDiscovery = "Domain Trust Discovery", - /** DriveByCompromise */ - DriveByCompromise = "Drive-by Compromise", - /** DynamicResolution */ - DynamicResolution = "Dynamic Resolution", - /** EndpointDenialOfService */ - EndpointDenialOfService = "Endpoint Denial of Service", - /** EventTriggeredExecution */ - EventTriggeredExecution = "Event Triggered Execution", - /** ExfiltrationOverAlternativeProtocol */ - ExfiltrationOverAlternativeProtocol = "Exfiltration Over Alternative Protocol", - /** ExploitPublicFacingApplication */ - ExploitPublicFacingApplication = "Exploit Public-Facing Application", - /** ExploitationForClientExecution */ - ExploitationForClientExecution = "Exploitation for Client Execution", - /** ExploitationForCredentialAccess */ - ExploitationForCredentialAccess = "Exploitation for Credential Access", - /** ExploitationForDefenseEvasion */ - ExploitationForDefenseEvasion = "Exploitation for Defense Evasion", - /** ExploitationForPrivilegeEscalation */ - ExploitationForPrivilegeEscalation = "Exploitation for Privilege Escalation", - /** ExploitationOfRemoteServices */ - ExploitationOfRemoteServices = "Exploitation of Remote Services", - /** ExternalRemoteServices */ - ExternalRemoteServices = "External Remote Services", - /** FallbackChannels */ - FallbackChannels = "Fallback Channels", - /** FileAndDirectoryDiscovery */ - FileAndDirectoryDiscovery = "File and Directory Discovery", - /** GatherVictimNetworkInformation */ - GatherVictimNetworkInformation = "Gather Victim Network Information", - /** HideArtifacts */ - HideArtifacts = "Hide Artifacts", - /** HijackExecutionFlow */ - HijackExecutionFlow = "Hijack Execution Flow", - /** ImpairDefenses */ - ImpairDefenses = "Impair Defenses", - /** ImplantContainerImage */ - ImplantContainerImage = "Implant Container Image", - /** IndicatorRemovalOnHost */ - IndicatorRemovalOnHost = "Indicator Removal on Host", - /** IndirectCommandExecution */ - IndirectCommandExecution = "Indirect Command Execution", - /** IngressToolTransfer */ - IngressToolTransfer = "Ingress Tool Transfer", - /** InputCapture */ - InputCapture = "Input Capture", - /** InterProcessCommunication */ - InterProcessCommunication = "Inter-Process Communication", - /** LateralToolTransfer */ - LateralToolTransfer = "Lateral Tool Transfer", - /** ManInTheMiddle */ - ManInTheMiddle = "Man-in-the-Middle", - /** Masquerading */ - Masquerading = "Masquerading", - /** ModifyAuthenticationProcess */ - ModifyAuthenticationProcess = "Modify Authentication Process", - /** ModifyRegistry */ - ModifyRegistry = "Modify Registry", - /** NetworkDenialOfService */ - NetworkDenialOfService = "Network Denial of Service", - /** NetworkServiceScanning */ - NetworkServiceScanning = "Network Service Scanning", - /** NetworkSniffing */ - NetworkSniffing = "Network Sniffing", - /** NonApplicationLayerProtocol */ - NonApplicationLayerProtocol = "Non-Application Layer Protocol", - /** NonStandardPort */ - NonStandardPort = "Non-Standard Port", - /** ObtainCapabilities */ - ObtainCapabilities = "Obtain Capabilities", - /** ObfuscatedFilesOrInformation */ - ObfuscatedFilesOrInformation = "Obfuscated Files or Information", - /** OfficeApplicationStartup */ - OfficeApplicationStartup = "Office Application Startup", - /** OSCredentialDumping */ - OSCredentialDumping = "OS Credential Dumping", - /** PermissionGroupsDiscovery */ - PermissionGroupsDiscovery = "Permission Groups Discovery", - /** Phishing */ - Phishing = "Phishing", - /** PreOSBoot */ - PreOSBoot = "Pre-OS Boot", - /** ProcessDiscovery */ - ProcessDiscovery = "Process Discovery", - /** ProcessInjection */ - ProcessInjection = "Process Injection", - /** ProtocolTunneling */ - ProtocolTunneling = "Protocol Tunneling", - /** Proxy */ - Proxy = "Proxy", - /** QueryRegistry */ - QueryRegistry = "Query Registry", - /** RemoteAccessSoftware */ - RemoteAccessSoftware = "Remote Access Software", - /** RemoteServiceSessionHijacking */ - RemoteServiceSessionHijacking = "Remote Service Session Hijacking", - /** RemoteServices */ - RemoteServices = "Remote Services", - /** RemoteSystemDiscovery */ - RemoteSystemDiscovery = "Remote System Discovery", - /** ResourceHijacking */ - ResourceHijacking = "Resource Hijacking", - /** ScheduledTaskJob */ - ScheduledTaskJob = "Scheduled Task/Job", - /** ScreenCapture */ - ScreenCapture = "Screen Capture", - /** SearchVictimOwnedWebsites */ - SearchVictimOwnedWebsites = "Search Victim-Owned Websites", - /** ServerSoftwareComponent */ - ServerSoftwareComponent = "Server Software Component", - /** ServiceStop */ - ServiceStop = "Service Stop", - /** SignedBinaryProxyExecution */ - SignedBinaryProxyExecution = "Signed Binary Proxy Execution", - /** SoftwareDeploymentTools */ - SoftwareDeploymentTools = "Software Deployment Tools", - /** SQLStoredProcedures */ - SQLStoredProcedures = "SQL Stored Procedures", - /** StealOrForgeKerberosTickets */ - StealOrForgeKerberosTickets = "Steal or Forge Kerberos Tickets", - /** SubvertTrustControls */ - SubvertTrustControls = "Subvert Trust Controls", - /** SupplyChainCompromise */ - SupplyChainCompromise = "Supply Chain Compromise", - /** SystemInformationDiscovery */ - SystemInformationDiscovery = "System Information Discovery", - /** TaintSharedContent */ - TaintSharedContent = "Taint Shared Content", - /** TrafficSignaling */ - TrafficSignaling = "Traffic Signaling", - /** TransferDataToCloudAccount */ - TransferDataToCloudAccount = "Transfer Data to Cloud Account", - /** TrustedRelationship */ - TrustedRelationship = "Trusted Relationship", - /** UnsecuredCredentials */ - UnsecuredCredentials = "Unsecured Credentials", - /** UserExecution */ - UserExecution = "User Execution", - /** ValidAccounts */ - ValidAccounts = "Valid Accounts", - /** WindowsManagementInstrumentation */ - WindowsManagementInstrumentation = "Windows Management Instrumentation", - /** FileAndDirectoryPermissionsModification */ - FileAndDirectoryPermissionsModification = "File and Directory Permissions Modification", -} - -/** - * Defines values for Techniques. \ - * {@link KnownTechniques} can be used interchangeably with Techniques, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Abuse Elevation Control Mechanism** \ - * **Access Token Manipulation** \ - * **Account Discovery** \ - * **Account Manipulation** \ - * **Active Scanning** \ - * **Application Layer Protocol** \ - * **Audio Capture** \ - * **Boot or Logon Autostart Execution** \ - * **Boot or Logon Initialization Scripts** \ - * **Brute Force** \ - * **Cloud Infrastructure Discovery** \ - * **Cloud Service Dashboard** \ - * **Cloud Service Discovery** \ - * **Command and Scripting Interpreter** \ - * **Compromise Client Software Binary** \ - * **Compromise Infrastructure** \ - * **Container and Resource Discovery** \ - * **Create Account** \ - * **Create or Modify System Process** \ - * **Credentials from Password Stores** \ - * **Data Destruction** \ - * **Data Encrypted for Impact** \ - * **Data from Cloud Storage Object** \ - * **Data from Configuration Repository** \ - * **Data from Information Repositories** \ - * **Data from Local System** \ - * **Data Manipulation** \ - * **Data Staged** \ - * **Defacement** \ - * **Deobfuscate\/Decode Files or Information** \ - * **Disk Wipe** \ - * **Domain Trust Discovery** \ - * **Drive-by Compromise** \ - * **Dynamic Resolution** \ - * **Endpoint Denial of Service** \ - * **Event Triggered Execution** \ - * **Exfiltration Over Alternative Protocol** \ - * **Exploit Public-Facing Application** \ - * **Exploitation for Client Execution** \ - * **Exploitation for Credential Access** \ - * **Exploitation for Defense Evasion** \ - * **Exploitation for Privilege Escalation** \ - * **Exploitation of Remote Services** \ - * **External Remote Services** \ - * **Fallback Channels** \ - * **File and Directory Discovery** \ - * **Gather Victim Network Information** \ - * **Hide Artifacts** \ - * **Hijack Execution Flow** \ - * **Impair Defenses** \ - * **Implant Container Image** \ - * **Indicator Removal on Host** \ - * **Indirect Command Execution** \ - * **Ingress Tool Transfer** \ - * **Input Capture** \ - * **Inter-Process Communication** \ - * **Lateral Tool Transfer** \ - * **Man-in-the-Middle** \ - * **Masquerading** \ - * **Modify Authentication Process** \ - * **Modify Registry** \ - * **Network Denial of Service** \ - * **Network Service Scanning** \ - * **Network Sniffing** \ - * **Non-Application Layer Protocol** \ - * **Non-Standard Port** \ - * **Obtain Capabilities** \ - * **Obfuscated Files or Information** \ - * **Office Application Startup** \ - * **OS Credential Dumping** \ - * **Permission Groups Discovery** \ - * **Phishing** \ - * **Pre-OS Boot** \ - * **Process Discovery** \ - * **Process Injection** \ - * **Protocol Tunneling** \ - * **Proxy** \ - * **Query Registry** \ - * **Remote Access Software** \ - * **Remote Service Session Hijacking** \ - * **Remote Services** \ - * **Remote System Discovery** \ - * **Resource Hijacking** \ - * **Scheduled Task\/Job** \ - * **Screen Capture** \ - * **Search Victim-Owned Websites** \ - * **Server Software Component** \ - * **Service Stop** \ - * **Signed Binary Proxy Execution** \ - * **Software Deployment Tools** \ - * **SQL Stored Procedures** \ - * **Steal or Forge Kerberos Tickets** \ - * **Subvert Trust Controls** \ - * **Supply Chain Compromise** \ - * **System Information Discovery** \ - * **Taint Shared Content** \ - * **Traffic Signaling** \ - * **Transfer Data to Cloud Account** \ - * **Trusted Relationship** \ - * **Unsecured Credentials** \ - * **User Execution** \ - * **Valid Accounts** \ - * **Windows Management Instrumentation** \ - * **File and Directory Permissions Modification** - */ -export type Techniques = string; - -/** Known values of {@link Categories} that the service accepts. */ -export enum KnownCategories { - /** Compute */ - Compute = "Compute", - /** Networking */ - Networking = "Networking", - /** Data */ - Data = "Data", - /** IdentityAndAccess */ - IdentityAndAccess = "IdentityAndAccess", - /** IoT */ - IoT = "IoT", -} - -/** - * Defines values for Categories. \ - * {@link KnownCategories} can be used interchangeably with Categories, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Compute** \ - * **Networking** \ - * **Data** \ - * **IdentityAndAccess** \ - * **IoT** - */ -export type Categories = string; - -/** Known values of {@link UserImpact} that the service accepts. */ -export enum KnownUserImpact { - /** Low */ - Low = "Low", - /** Moderate */ - Moderate = "Moderate", - /** High */ - High = "High", -} - -/** - * Defines values for UserImpact. \ - * {@link KnownUserImpact} can be used interchangeably with UserImpact, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Low** \ - * **Moderate** \ - * **High** - */ -export type UserImpact = string; - -/** Known values of {@link ImplementationEffort} that the service accepts. */ -export enum KnownImplementationEffort { - /** Low */ - Low = "Low", - /** Moderate */ - Moderate = "Moderate", - /** High */ - High = "High", -} - -/** - * Defines values for ImplementationEffort. \ - * {@link KnownImplementationEffort} can be used interchangeably with ImplementationEffort, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Low** \ - * **Moderate** \ - * **High** - */ -export type ImplementationEffort = string; - -/** Known values of {@link Threats} that the service accepts. */ -export enum KnownThreats { - /** AccountBreach */ - AccountBreach = "accountBreach", - /** DataExfiltration */ - DataExfiltration = "dataExfiltration", - /** DataSpillage */ - DataSpillage = "dataSpillage", - /** MaliciousInsider */ - MaliciousInsider = "maliciousInsider", - /** ElevationOfPrivilege */ - ElevationOfPrivilege = "elevationOfPrivilege", - /** ThreatResistance */ - ThreatResistance = "threatResistance", - /** MissingCoverage */ - MissingCoverage = "missingCoverage", - /** DenialOfService */ - DenialOfService = "denialOfService", -} - -/** - * Defines values for Threats. \ - * {@link KnownThreats} can be used interchangeably with Threats, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **accountBreach** \ - * **dataExfiltration** \ - * **dataSpillage** \ - * **maliciousInsider** \ - * **elevationOfPrivilege** \ - * **threatResistance** \ - * **missingCoverage** \ - * **denialOfService** - */ -export type Threats = string; - -/** Known values of {@link AssessmentType} that the service accepts. */ -export enum KnownAssessmentType { - /** Microsoft Defender for Cloud managed assessments */ - BuiltIn = "BuiltIn", - /** User defined policies that are automatically ingested from Azure Policy to Microsoft Defender for Cloud */ - CustomPolicy = "CustomPolicy", - /** User assessments pushed directly by the user or other third party to Microsoft Defender for Cloud */ - CustomerManaged = "CustomerManaged", - /** An assessment that was created by a verified 3rd party if the user connected it to ASC */ - VerifiedPartner = "VerifiedPartner", -} - -/** - * Defines values for AssessmentType. \ - * {@link KnownAssessmentType} can be used interchangeably with AssessmentType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **BuiltIn**: Microsoft Defender for Cloud managed assessments \ - * **CustomPolicy**: User defined policies that are automatically ingested from Azure Policy to Microsoft Defender for Cloud \ - * **CustomerManaged**: User assessments pushed directly by the user or other third party to Microsoft Defender for Cloud \ - * **VerifiedPartner**: An assessment that was created by a verified 3rd party if the user connected it to ASC - */ -export type AssessmentType = string; - -/** Known values of {@link AssessmentStatusCode} that the service accepts. */ -export enum KnownAssessmentStatusCode { - /** The resource is healthy */ - Healthy = "Healthy", - /** The resource has a security issue that needs to be addressed */ - Unhealthy = "Unhealthy", - /** Assessment for this resource did not happen */ - NotApplicable = "NotApplicable", -} - -/** - * Defines values for AssessmentStatusCode. \ - * {@link KnownAssessmentStatusCode} can be used interchangeably with AssessmentStatusCode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Healthy**: The resource is healthy \ - * **Unhealthy**: The resource has a security issue that needs to be addressed \ - * **NotApplicable**: Assessment for this resource did not happen - */ -export type AssessmentStatusCode = string; - -/** Known values of {@link ExpandEnum} that the service accepts. */ -export enum KnownExpandEnum { - /** All links associated with an assessment */ - Links = "links", - /** Assessment metadata */ - Metadata = "metadata", -} - -/** - * Defines values for ExpandEnum. \ - * {@link KnownExpandEnum} can be used interchangeably with ExpandEnum, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **links**: All links associated with an assessment \ - * **metadata**: Assessment metadata - */ -export type ExpandEnum = string; - -/** Known values of {@link AlertSeverity} that the service accepts. */ -export enum KnownAlertSeverity { - /** Informational */ - Informational = "Informational", - /** Low */ - Low = "Low", - /** Medium */ - Medium = "Medium", - /** High */ - High = "High", -} - -/** - * Defines values for AlertSeverity. \ - * {@link KnownAlertSeverity} can be used interchangeably with AlertSeverity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Informational**: Informational \ - * **Low**: Low \ - * **Medium**: Medium \ - * **High**: High - */ -export type AlertSeverity = string; - -/** Known values of {@link Intent} that the service accepts. */ -export enum KnownIntent { - /** Unknown */ - Unknown = "Unknown", - /** PreAttack could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt, originating from outside the network, to scan the target system and find a way in. Further details on the PreAttack stage can be read in [MITRE Pre-Att&ck matrix](https:\//attack.mitre.org\/matrices\/pre\/). */ - PreAttack = "PreAttack", - /** InitialAccess is the stage where an attacker manages to get foothold on the attacked resource. */ - InitialAccess = "InitialAccess", - /** Persistence is any access, action, or configuration change to a system that gives a threat actor a persistent presence on that system. */ - Persistence = "Persistence", - /** Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. */ - PrivilegeEscalation = "PrivilegeEscalation", - /** Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. */ - DefenseEvasion = "DefenseEvasion", - /** Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. */ - CredentialAccess = "CredentialAccess", - /** Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. */ - Discovery = "Discovery", - /** Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. */ - LateralMovement = "LateralMovement", - /** The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. */ - Execution = "Execution", - /** Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. */ - Collection = "Collection", - /** Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. */ - Exfiltration = "Exfiltration", - /** The command and control tactic represents how adversaries communicate with systems under their control within a target network. */ - CommandAndControl = "CommandAndControl", - /** Impact events primarily try to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. */ - Impact = "Impact", - /** Probing could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. */ - Probing = "Probing", - /** Exploitation is the stage where an attacker manages to get a foothold on the attacked resource. This stage is relevant for compute hosts and resources such as user accounts, certificates etc. */ - Exploitation = "Exploitation", -} - -/** - * Defines values for Intent. \ - * {@link KnownIntent} can be used interchangeably with Intent, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Unknown**: Unknown \ - * **PreAttack**: PreAttack could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. This step is usually detected as an attempt, originating from outside the network, to scan the target system and find a way in. Further details on the PreAttack stage can be read in [MITRE Pre-Att&ck matrix](https:\/\/attack.mitre.org\/matrices\/pre\/). \ - * **InitialAccess**: InitialAccess is the stage where an attacker manages to get foothold on the attacked resource. \ - * **Persistence**: Persistence is any access, action, or configuration change to a system that gives a threat actor a persistent presence on that system. \ - * **PrivilegeEscalation**: Privilege escalation is the result of actions that allow an adversary to obtain a higher level of permissions on a system or network. \ - * **DefenseEvasion**: Defense evasion consists of techniques an adversary may use to evade detection or avoid other defenses. \ - * **CredentialAccess**: Credential access represents techniques resulting in access to or control over system, domain, or service credentials that are used within an enterprise environment. \ - * **Discovery**: Discovery consists of techniques that allow the adversary to gain knowledge about the system and internal network. \ - * **LateralMovement**: Lateral movement consists of techniques that enable an adversary to access and control remote systems on a network and could, but does not necessarily, include execution of tools on remote systems. \ - * **Execution**: The execution tactic represents techniques that result in execution of adversary-controlled code on a local or remote system. \ - * **Collection**: Collection consists of techniques used to identify and gather information, such as sensitive files, from a target network prior to exfiltration. \ - * **Exfiltration**: Exfiltration refers to techniques and attributes that result or aid in the adversary removing files and information from a target network. \ - * **CommandAndControl**: The command and control tactic represents how adversaries communicate with systems under their control within a target network. \ - * **Impact**: Impact events primarily try to directly reduce the availability or integrity of a system, service, or network; including manipulation of data to impact a business or operational process. \ - * **Probing**: Probing could be either an attempt to access a certain resource regardless of a malicious intent, or a failed attempt to gain access to a target system to gather information prior to exploitation. \ - * **Exploitation**: Exploitation is the stage where an attacker manages to get a foothold on the attacked resource. This stage is relevant for compute hosts and resources such as user accounts, certificates etc. - */ -export type Intent = string; - -/** Known values of {@link ResourceIdentifierType} that the service accepts. */ -export enum KnownResourceIdentifierType { - /** AzureResource */ - AzureResource = "AzureResource", - /** LogAnalytics */ - LogAnalytics = "LogAnalytics", -} - -/** - * Defines values for ResourceIdentifierType. \ - * {@link KnownResourceIdentifierType} can be used interchangeably with ResourceIdentifierType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AzureResource** \ - * **LogAnalytics** - */ -export type ResourceIdentifierType = string; - -/** Known values of {@link AlertStatus} that the service accepts. */ -export enum KnownAlertStatus { - /** An alert which doesn't specify a value is assigned the status 'Active' */ - Active = "Active", - /** An alert which is in handling state */ - InProgress = "InProgress", - /** Alert closed after handling */ - Resolved = "Resolved", - /** Alert dismissed as false positive */ - Dismissed = "Dismissed", -} - -/** - * Defines values for AlertStatus. \ - * {@link KnownAlertStatus} can be used interchangeably with AlertStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Active**: An alert which doesn't specify a value is assigned the status 'Active' \ - * **InProgress**: An alert which is in handling state \ - * **Resolved**: Alert closed after handling \ - * **Dismissed**: Alert dismissed as false positive - */ -export type AlertStatus = string; - -/** Known values of {@link Kind} that the service accepts. */ -export enum KnownKind { - /** Simulate alerts according to bundles */ - Bundles = "Bundles", -} - -/** - * Defines values for Kind. \ - * {@link KnownKind} can be used interchangeably with Kind, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Bundles**: Simulate alerts according to bundles - */ -export type Kind = string; - -/** Known values of {@link SettingKind} that the service accepts. */ -export enum KnownSettingKind { - /** DataExportSettings */ - DataExportSettings = "DataExportSettings", - /** AlertSuppressionSetting */ - AlertSuppressionSetting = "AlertSuppressionSetting", - /** AlertSyncSettings */ - AlertSyncSettings = "AlertSyncSettings", -} - -/** - * Defines values for SettingKind. \ - * {@link KnownSettingKind} can be used interchangeably with SettingKind, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **DataExportSettings** \ - * **AlertSuppressionSetting** \ - * **AlertSyncSettings** - */ -export type SettingKind = string; - -/** Known values of {@link SettingNameAutoGenerated} that the service accepts. */ -export enum KnownSettingNameAutoGenerated { - /** Mcas */ - Mcas = "MCAS", - /** Wdatp */ - Wdatp = "WDATP", - /** WdatpExcludeLinuxPublicPreview */ - WdatpExcludeLinuxPublicPreview = "WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW", - /** WdatpUnifiedSolution */ - WdatpUnifiedSolution = "WDATP_UNIFIED_SOLUTION", - /** Sentinel */ - Sentinel = "Sentinel", -} - -/** - * Defines values for SettingNameAutoGenerated. \ - * {@link KnownSettingNameAutoGenerated} can be used interchangeably with SettingNameAutoGenerated, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **MCAS** \ - * **WDATP** \ - * **WDATP_EXCLUDE_LINUX_PUBLIC_PREVIEW** \ - * **WDATP_UNIFIED_SOLUTION** \ - * **Sentinel** - */ -export type SettingNameAutoGenerated = string; - -/** Known values of {@link ServerVulnerabilityAssessmentsSettingKind} that the service accepts. */ -export enum KnownServerVulnerabilityAssessmentsSettingKind { - /** AzureServersSetting */ - AzureServersSetting = "AzureServersSetting", -} - -/** - * Defines values for ServerVulnerabilityAssessmentsSettingKind. \ - * {@link KnownServerVulnerabilityAssessmentsSettingKind} can be used interchangeably with ServerVulnerabilityAssessmentsSettingKind, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AzureServersSetting** - */ -export type ServerVulnerabilityAssessmentsSettingKind = string; - -/** Known values of {@link ServerVulnerabilityAssessmentsSettingKindName} that the service accepts. */ -export enum KnownServerVulnerabilityAssessmentsSettingKindName { - /** AzureServersSetting */ - AzureServersSetting = "azureServersSetting", -} - -/** - * Defines values for ServerVulnerabilityAssessmentsSettingKindName. \ - * {@link KnownServerVulnerabilityAssessmentsSettingKindName} can be used interchangeably with ServerVulnerabilityAssessmentsSettingKindName, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **azureServersSetting** - */ -export type ServerVulnerabilityAssessmentsSettingKindName = string; - -/** Known values of {@link PricingTier} that the service accepts. */ -export enum KnownPricingTier { - /** Get free Microsoft Defender for Cloud experience with basic security features */ - Free = "Free", - /** Get the standard Microsoft Defender for Cloud experience with advanced security features */ - Standard = "Standard", -} - -/** - * Defines values for PricingTier. \ - * {@link KnownPricingTier} can be used interchangeably with PricingTier, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Free**: Get free Microsoft Defender for Cloud experience with basic security features \ - * **Standard**: Get the standard Microsoft Defender for Cloud experience with advanced security features - */ -export type PricingTier = string; - -/** Known values of {@link Enforce} that the service accepts. */ -export enum KnownEnforce { - /** Allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False") */ - False = "False", - /** Prevents overrides and forces the current scope's pricing configuration to all descendants */ - True = "True", -} - -/** - * Defines values for Enforce. \ - * {@link KnownEnforce} can be used interchangeably with Enforce, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **False**: Allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False") \ - * **True**: Prevents overrides and forces the current scope's pricing configuration to all descendants - */ -export type Enforce = string; - -/** Known values of {@link Inherited} that the service accepts. */ -export enum KnownInherited { - /** Indicates that the current scope is inheriting its pricing configuration from its parent */ - True = "True", - /** Indicates that the current scope sets its own pricing configuration and does not inherit it from its parent */ - False = "False", -} - -/** - * Defines values for Inherited. \ - * {@link KnownInherited} can be used interchangeably with Inherited, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **True**: Indicates that the current scope is inheriting its pricing configuration from its parent \ - * **False**: Indicates that the current scope sets its own pricing configuration and does not inherit it from its parent - */ -export type Inherited = string; - -/** Known values of {@link ResourcesCoverageStatus} that the service accepts. */ -export enum KnownResourcesCoverageStatus { - /** This value indicates that all resources associated with the subscription have the Defender plan enabled. */ - FullyCovered = "FullyCovered", - /** This value indicates that some resources under the subscription have the Defender plan enabled, while others have it disabled. There is a mixed coverage status among resources. */ - PartiallyCovered = "PartiallyCovered", - /** This value indicates that the Defender plan is disabled for all resources under the subscription. None of the resources are protected by the Defender plan. */ - NotCovered = "NotCovered", -} - -/** - * Defines values for ResourcesCoverageStatus. \ - * {@link KnownResourcesCoverageStatus} can be used interchangeably with ResourcesCoverageStatus, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **FullyCovered**: This value indicates that all resources associated with the subscription have the Defender plan enabled. \ - * **PartiallyCovered**: This value indicates that some resources under the subscription have the Defender plan enabled, while others have it disabled. There is a mixed coverage status among resources. \ - * **NotCovered**: This value indicates that the Defender plan is disabled for all resources under the subscription. None of the resources are protected by the Defender plan. - */ -export type ResourcesCoverageStatus = string; - -/** Known values of {@link IsEnabled} that the service accepts. */ -export enum KnownIsEnabled { - /** Indicates the extension is enabled */ - True = "True", - /** Indicates the extension is disabled */ - False = "False", -} - -/** - * Defines values for IsEnabled. \ - * {@link KnownIsEnabled} can be used interchangeably with IsEnabled, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **True**: Indicates the extension is enabled \ - * **False**: Indicates the extension is disabled - */ -export type IsEnabled = string; - -/** Known values of {@link Code} that the service accepts. */ -export enum KnownCode { - /** Extension was created\/updated successfully. */ - Succeeded = "Succeeded", - /** Extension was not created\/updated successfully. See operation status message for more details. */ - Failed = "Failed", -} - -/** - * Defines values for Code. \ - * {@link KnownCode} can be used interchangeably with Code, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Succeeded**: Extension was created\/updated successfully. \ - * **Failed**: Extension was not created\/updated successfully. See operation status message for more details. - */ -export type Code = string; - -/** Known values of {@link MinimalSeverity} that the service accepts. */ -export enum KnownMinimalSeverity { - /** Get notifications on new alerts with High severity */ - High = "High", - /** Get notifications on new alerts with Medium or High severity */ - Medium = "Medium", - /** Get notifications on new alerts with Low, Medium or High severity */ - Low = "Low", -} - -/** - * Defines values for MinimalSeverity. \ - * {@link KnownMinimalSeverity} can be used interchangeably with MinimalSeverity, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **High**: Get notifications on new alerts with High severity \ - * **Medium**: Get notifications on new alerts with Medium or High severity \ - * **Low**: Get notifications on new alerts with Low, Medium or High severity - */ -export type MinimalSeverity = string; - -/** Known values of {@link MinimalRiskLevel} that the service accepts. */ -export enum KnownMinimalRiskLevel { - /** Get notifications on new attack paths with Critical risk level */ - Critical = "Critical", - /** Get notifications on new attack paths with High or Critical risk level */ - High = "High", - /** Get notifications on new attach paths with Medium, High or Critical risk level */ - Medium = "Medium", - /** Get notifications on new attach paths with Low, Medium, High or Critical risk level */ - Low = "Low", -} - -/** - * Defines values for MinimalRiskLevel. \ - * {@link KnownMinimalRiskLevel} can be used interchangeably with MinimalRiskLevel, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Critical**: Get notifications on new attack paths with Critical risk level \ - * **High**: Get notifications on new attack paths with High or Critical risk level \ - * **Medium**: Get notifications on new attach paths with Medium, High or Critical risk level \ - * **Low**: Get notifications on new attach paths with Low, Medium, High or Critical risk level - */ -export type MinimalRiskLevel = string; - -/** Known values of {@link GovernanceRuleConditionOperator} that the service accepts. */ -export enum KnownGovernanceRuleConditionOperator { - /** Checks that the string value of the data defined in Property equals the given value - exact fit */ - Equals = "Equals", - /** Checks that the string value of the data defined in Property equals any of the given values (exact fit) */ - In = "In", -} - -/** - * Defines values for GovernanceRuleConditionOperator. \ - * {@link KnownGovernanceRuleConditionOperator} can be used interchangeably with GovernanceRuleConditionOperator, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Equals**: Checks that the string value of the data defined in Property equals the given value - exact fit \ - * **In**: Checks that the string value of the data defined in Property equals any of the given values (exact fit) - */ -export type GovernanceRuleConditionOperator = string; - -/** Known values of {@link ApplicationConditionOperator} that the service accepts. */ -export enum KnownApplicationConditionOperator { - /** Checks that the string value of the data defined in Property contains the given value */ - Contains = "Contains", - /** Checks that the string value of the data defined in Property equals the given value */ - Equals = "Equals", - /** Checks that the string value of the data defined in Property equals any of the given values (exact fit) */ - In = "In", -} - -/** - * Defines values for ApplicationConditionOperator. \ - * {@link KnownApplicationConditionOperator} can be used interchangeably with ApplicationConditionOperator, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Contains**: Checks that the string value of the data defined in Property contains the given value \ - * **Equals**: Checks that the string value of the data defined in Property equals the given value \ - * **In**: Checks that the string value of the data defined in Property equals any of the given values (exact fit) - */ -export type ApplicationConditionOperator = string; - -/** Known values of {@link DesiredOnboardingState} that the service accepts. */ -export enum KnownDesiredOnboardingState { - /** Disabled */ - Disabled = "Disabled", - /** Enabled */ - Enabled = "Enabled", -} - -/** - * Defines values for DesiredOnboardingState. \ - * {@link KnownDesiredOnboardingState} can be used interchangeably with DesiredOnboardingState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Disabled** \ - * **Enabled** - */ -export type DesiredOnboardingState = string; - -/** Known values of {@link OrganizationMembershipType} that the service accepts. */ -export enum KnownOrganizationMembershipType { - /** Member */ - Member = "Member", - /** Organization */ - Organization = "Organization", -} - -/** - * Defines values for OrganizationMembershipType. \ - * {@link KnownOrganizationMembershipType} can be used interchangeably with OrganizationMembershipType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Member** \ - * **Organization** - */ -export type OrganizationMembershipType = string; - -/** Known values of {@link Type} that the service accepts. */ -export enum KnownType { - /** Qualys */ - Qualys = "Qualys", - /** TVM */ - TVM = "TVM", -} - -/** - * Defines values for Type. \ - * {@link KnownType} can be used interchangeably with Type, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Qualys** \ - * **TVM** - */ -export type Type = string; - -/** Known values of {@link SubPlan} that the service accepts. */ -export enum KnownSubPlan { - /** P1 */ - P1 = "P1", - /** P2 */ - P2 = "P2", -} - -/** - * Defines values for SubPlan. \ - * {@link KnownSubPlan} can be used interchangeably with SubPlan, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **P1** \ - * **P2** - */ -export type SubPlan = string; - -/** Known values of {@link ScanningMode} that the service accepts. */ -export enum KnownScanningMode { - /** Default */ - Default = "Default", -} - -/** - * Defines values for ScanningMode. \ - * {@link KnownScanningMode} can be used interchangeably with ScanningMode, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Default** - */ -export type ScanningMode = string; - -/** Known values of {@link AadConnectivityState} that the service accepts. */ -export enum KnownAadConnectivityState { - /** Discovered */ - Discovered = "Discovered", - /** NotLicensed */ - NotLicensed = "NotLicensed", - /** Connected */ - Connected = "Connected", -} - -/** - * Defines values for AadConnectivityState. \ - * {@link KnownAadConnectivityState} can be used interchangeably with AadConnectivityState, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **Discovered** \ - * **NotLicensed** \ - * **Connected** - */ -export type AadConnectivityState = string; - -/** Known values of {@link BundleType} that the service accepts. */ -export enum KnownBundleType { - /** AppServices */ - AppServices = "AppServices", - /** DNS */ - DNS = "DNS", - /** KeyVaults */ - KeyVaults = "KeyVaults", - /** KubernetesService */ - KubernetesService = "KubernetesService", - /** ResourceManager */ - ResourceManager = "ResourceManager", - /** SqlServers */ - SqlServers = "SqlServers", - /** StorageAccounts */ - StorageAccounts = "StorageAccounts", - /** VirtualMachines */ - VirtualMachines = "VirtualMachines", - /** CosmosDbs */ - CosmosDbs = "CosmosDbs", -} - -/** - * Defines values for BundleType. \ - * {@link KnownBundleType} can be used interchangeably with BundleType, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **AppServices** \ - * **DNS** \ - * **KeyVaults** \ - * **KubernetesService** \ - * **ResourceManager** \ - * **SqlServers** \ - * **StorageAccounts** \ - * **VirtualMachines** \ - * **CosmosDbs** - */ -export type BundleType = string; - -/** Known values of {@link ServerVulnerabilityAssessmentsAzureSettingSelectedProvider} that the service accepts. */ -export enum KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider { - /** Microsoft Defender for Endpoints threat and vulnerability management. */ - MdeTvm = "MdeTvm", -} - -/** - * Defines values for ServerVulnerabilityAssessmentsAzureSettingSelectedProvider. \ - * {@link KnownServerVulnerabilityAssessmentsAzureSettingSelectedProvider} can be used interchangeably with ServerVulnerabilityAssessmentsAzureSettingSelectedProvider, - * this enum contains the known values that the service supports. - * ### Known values supported by the service - * **MdeTvm**: Microsoft Defender for Endpoints threat and vulnerability management. - */ -export type ServerVulnerabilityAssessmentsAzureSettingSelectedProvider = string; -/** Defines values for Rank. */ -export type Rank = "None" | "Low" | "Medium" | "High" | "Critical"; -/** Defines values for RuleState. */ -export type RuleState = "Enabled" | "Disabled" | "Expired"; - -/** Optional parameters. */ -export interface LocationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type LocationsListResponse = AscLocationList; - -/** Optional parameters. */ -export interface LocationsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type LocationsGetResponse = AscLocation; - -/** Optional parameters. */ -export interface LocationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type LocationsListNextResponse = AscLocationList; - -/** Optional parameters. */ -export interface OperationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type OperationsListResponse = OperationList; - -/** Optional parameters. */ -export interface OperationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type OperationsListNextResponse = OperationList; - -/** Optional parameters. */ -export interface TasksListOptionalParams extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the list operation. */ -export type TasksListResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface TasksListByHomeRegionOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the listByHomeRegion operation. */ -export type TasksListByHomeRegionResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface TasksGetSubscriptionLevelTaskOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getSubscriptionLevelTask operation. */ -export type TasksGetSubscriptionLevelTaskResponse = SecurityTask; - -/** Optional parameters. */ -export interface TasksUpdateSubscriptionLevelTaskStateOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface TasksListByResourceGroupOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the listByResourceGroup operation. */ -export type TasksListByResourceGroupResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface TasksGetResourceGroupLevelTaskOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getResourceGroupLevelTask operation. */ -export type TasksGetResourceGroupLevelTaskResponse = SecurityTask; - -/** Optional parameters. */ -export interface TasksUpdateResourceGroupLevelTaskStateOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface TasksListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type TasksListNextResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface TasksListByHomeRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegionNext operation. */ -export type TasksListByHomeRegionNextResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface TasksListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type TasksListByResourceGroupNextResponse = SecurityTaskList; - -/** Optional parameters. */ -export interface AutoProvisioningSettingsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AutoProvisioningSettingsListResponse = AutoProvisioningSettingList; - -/** Optional parameters. */ -export interface AutoProvisioningSettingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AutoProvisioningSettingsGetResponse = AutoProvisioningSetting; - -/** Optional parameters. */ -export interface AutoProvisioningSettingsCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type AutoProvisioningSettingsCreateResponse = AutoProvisioningSetting; - -/** Optional parameters. */ -export interface AutoProvisioningSettingsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AutoProvisioningSettingsListNextResponse = - AutoProvisioningSettingList; - -/** Optional parameters. */ -export interface CompliancesListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type CompliancesListResponse = ComplianceList; - -/** Optional parameters. */ -export interface CompliancesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type CompliancesGetResponse = Compliance; - -/** Optional parameters. */ -export interface CompliancesListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type CompliancesListNextResponse = ComplianceList; - -/** Optional parameters. */ -export interface InformationProtectionPoliciesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type InformationProtectionPoliciesGetResponse = - InformationProtectionPolicy; - -/** Optional parameters. */ -export interface InformationProtectionPoliciesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type InformationProtectionPoliciesCreateOrUpdateResponse = - InformationProtectionPolicy; - -/** Optional parameters. */ -export interface InformationProtectionPoliciesListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type InformationProtectionPoliciesListResponse = - InformationProtectionPolicyList; - -/** Optional parameters. */ -export interface InformationProtectionPoliciesListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type InformationProtectionPoliciesListNextResponse = - InformationProtectionPolicyList; - -/** Optional parameters. */ -export interface WorkspaceSettingsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type WorkspaceSettingsListResponse = WorkspaceSettingList; - -/** Optional parameters. */ -export interface WorkspaceSettingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type WorkspaceSettingsGetResponse = WorkspaceSetting; - -/** Optional parameters. */ -export interface WorkspaceSettingsCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type WorkspaceSettingsCreateResponse = WorkspaceSetting; - -/** Optional parameters. */ -export interface WorkspaceSettingsUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type WorkspaceSettingsUpdateResponse = WorkspaceSetting; - -/** Optional parameters. */ -export interface WorkspaceSettingsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface WorkspaceSettingsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type WorkspaceSettingsListNextResponse = WorkspaceSettingList; - -/** Optional parameters. */ -export interface AlertsSuppressionRulesListOptionalParams - extends coreClient.OperationOptions { - /** Type of the alert to get rules for */ - alertType?: string; -} - -/** Contains response data for the list operation. */ -export type AlertsSuppressionRulesListResponse = AlertsSuppressionRulesList; - -/** Optional parameters. */ -export interface AlertsSuppressionRulesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AlertsSuppressionRulesGetResponse = AlertsSuppressionRule; - -/** Optional parameters. */ -export interface AlertsSuppressionRulesUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type AlertsSuppressionRulesUpdateResponse = AlertsSuppressionRule; - -/** Optional parameters. */ -export interface AlertsSuppressionRulesDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsSuppressionRulesListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AlertsSuppressionRulesListNextResponse = AlertsSuppressionRulesList; - -/** Optional parameters. */ -export interface AutomationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AutomationsListResponse = AutomationList; - -/** Optional parameters. */ -export interface AutomationsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type AutomationsListByResourceGroupResponse = AutomationList; - -/** Optional parameters. */ -export interface AutomationsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AutomationsGetResponse = Automation; - -/** Optional parameters. */ -export interface AutomationsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type AutomationsCreateOrUpdateResponse = Automation; - -/** Optional parameters. */ -export interface AutomationsUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type AutomationsUpdateResponse = Automation; - -/** Optional parameters. */ -export interface AutomationsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AutomationsValidateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the validate operation. */ -export type AutomationsValidateResponse = AutomationValidationStatus; - -/** Optional parameters. */ -export interface AutomationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AutomationsListNextResponse = AutomationList; - -/** Optional parameters. */ -export interface AutomationsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type AutomationsListByResourceGroupNextResponse = AutomationList; - -/** Optional parameters. */ -export interface RegulatoryComplianceStandardsListOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the list operation. */ -export type RegulatoryComplianceStandardsListResponse = - RegulatoryComplianceStandardList; - -/** Optional parameters. */ -export interface RegulatoryComplianceStandardsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type RegulatoryComplianceStandardsGetResponse = - RegulatoryComplianceStandard; - -/** Optional parameters. */ -export interface RegulatoryComplianceStandardsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type RegulatoryComplianceStandardsListNextResponse = - RegulatoryComplianceStandardList; - -/** Optional parameters. */ -export interface RegulatoryComplianceControlsListOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the list operation. */ -export type RegulatoryComplianceControlsListResponse = - RegulatoryComplianceControlList; - -/** Optional parameters. */ -export interface RegulatoryComplianceControlsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type RegulatoryComplianceControlsGetResponse = - RegulatoryComplianceControl; - -/** Optional parameters. */ -export interface RegulatoryComplianceControlsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type RegulatoryComplianceControlsListNextResponse = - RegulatoryComplianceControlList; - -/** Optional parameters. */ -export interface RegulatoryComplianceAssessmentsListOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the list operation. */ -export type RegulatoryComplianceAssessmentsListResponse = - RegulatoryComplianceAssessmentList; - -/** Optional parameters. */ -export interface RegulatoryComplianceAssessmentsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type RegulatoryComplianceAssessmentsGetResponse = - RegulatoryComplianceAssessment; - -/** Optional parameters. */ -export interface RegulatoryComplianceAssessmentsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type RegulatoryComplianceAssessmentsListNextResponse = - RegulatoryComplianceAssessmentList; - -/** Optional parameters. */ -export interface SubAssessmentsListAllOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listAll operation. */ -export type SubAssessmentsListAllResponse = SecuritySubAssessmentList; - -/** Optional parameters. */ -export interface SubAssessmentsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SubAssessmentsListResponse = SecuritySubAssessmentList; - -/** Optional parameters. */ -export interface SubAssessmentsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SubAssessmentsGetResponse = SecuritySubAssessment; - -/** Optional parameters. */ -export interface SubAssessmentsListAllNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listAllNext operation. */ -export type SubAssessmentsListAllNextResponse = SecuritySubAssessmentList; - -/** Optional parameters. */ -export interface SubAssessmentsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SubAssessmentsListNextResponse = SecuritySubAssessmentList; - -/** Optional parameters. */ -export interface ConnectorsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type ConnectorsListResponse = ConnectorSettingList; - -/** Optional parameters. */ -export interface ConnectorsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ConnectorsGetResponse = ConnectorSetting; - -/** Optional parameters. */ -export interface ConnectorsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type ConnectorsCreateOrUpdateResponse = ConnectorSetting; - -/** Optional parameters. */ -export interface ConnectorsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface ConnectorsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type ConnectorsListNextResponse = ConnectorSettingList; - -/** Optional parameters. */ -export interface SecurityContactsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecurityContactsListResponse = SecurityContactList; - -/** Optional parameters. */ -export interface SecurityContactsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecurityContactsGetResponse = SecurityContact; - -/** Optional parameters. */ -export interface SecurityContactsCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type SecurityContactsCreateResponse = SecurityContact; - -/** Optional parameters. */ -export interface SecurityContactsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface SecurityContactsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecurityContactsListNextResponse = SecurityContactList; - -/** Optional parameters. */ -export interface SoftwareInventoriesListByExtendedResourceOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByExtendedResource operation. */ -export type SoftwareInventoriesListByExtendedResourceResponse = SoftwaresList; - -/** Optional parameters. */ -export interface SoftwareInventoriesListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type SoftwareInventoriesListBySubscriptionResponse = SoftwaresList; - -/** Optional parameters. */ -export interface SoftwareInventoriesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SoftwareInventoriesGetResponse = Software; - -/** Optional parameters. */ -export interface SoftwareInventoriesListByExtendedResourceNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByExtendedResourceNext operation. */ -export type SoftwareInventoriesListByExtendedResourceNextResponse = - SoftwaresList; - -/** Optional parameters. */ -export interface SoftwareInventoriesListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type SoftwareInventoriesListBySubscriptionNextResponse = SoftwaresList; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type CustomAssessmentAutomationsGetResponse = CustomAssessmentAutomation; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type CustomAssessmentAutomationsCreateResponse = - CustomAssessmentAutomation; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type CustomAssessmentAutomationsListByResourceGroupResponse = - CustomAssessmentAutomationsListResult; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type CustomAssessmentAutomationsListBySubscriptionResponse = - CustomAssessmentAutomationsListResult; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type CustomAssessmentAutomationsListByResourceGroupNextResponse = - CustomAssessmentAutomationsListResult; - -/** Optional parameters. */ -export interface CustomAssessmentAutomationsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type CustomAssessmentAutomationsListBySubscriptionNextResponse = - CustomAssessmentAutomationsListResult; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type CustomEntityStoreAssignmentsGetResponse = - CustomEntityStoreAssignment; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type CustomEntityStoreAssignmentsCreateResponse = - CustomEntityStoreAssignment; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type CustomEntityStoreAssignmentsListByResourceGroupResponse = - CustomEntityStoreAssignmentsListResult; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type CustomEntityStoreAssignmentsListBySubscriptionResponse = - CustomEntityStoreAssignmentsListResult; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type CustomEntityStoreAssignmentsListByResourceGroupNextResponse = - CustomEntityStoreAssignmentsListResult; - -/** Optional parameters. */ -export interface CustomEntityStoreAssignmentsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type CustomEntityStoreAssignmentsListBySubscriptionNextResponse = - CustomEntityStoreAssignmentsListResult; - -/** Optional parameters. */ -export interface MdeOnboardingsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type MdeOnboardingsListResponse = MdeOnboardingDataList; - -/** Optional parameters. */ -export interface MdeOnboardingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type MdeOnboardingsGetResponse = MdeOnboardingData; - -/** Optional parameters. */ -export interface GovernanceAssignmentsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GovernanceAssignmentsListResponse = GovernanceAssignmentsList; - -/** Optional parameters. */ -export interface GovernanceAssignmentsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GovernanceAssignmentsGetResponse = GovernanceAssignment; - -/** Optional parameters. */ -export interface GovernanceAssignmentsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type GovernanceAssignmentsCreateOrUpdateResponse = GovernanceAssignment; - -/** Optional parameters. */ -export interface GovernanceAssignmentsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface GovernanceAssignmentsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GovernanceAssignmentsListNextResponse = GovernanceAssignmentsList; - -/** Optional parameters. */ -export interface GovernanceRulesListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GovernanceRulesListResponse = GovernanceRuleList; - -/** Optional parameters. */ -export interface GovernanceRulesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GovernanceRulesGetResponse = GovernanceRule; - -/** Optional parameters. */ -export interface GovernanceRulesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type GovernanceRulesCreateOrUpdateResponse = GovernanceRule; - -/** Optional parameters. */ -export interface GovernanceRulesDeleteOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Optional parameters. */ -export interface GovernanceRulesExecuteOptionalParams - extends coreClient.OperationOptions { - /** Execute governance rule over a given scope */ - executeGovernanceRuleParams?: ExecuteGovernanceRuleParams; - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the execute operation. */ -export type GovernanceRulesExecuteResponse = GovernanceRulesExecuteHeaders; - -/** Optional parameters. */ -export interface GovernanceRulesOperationResultsOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the operationResults operation. */ -export type GovernanceRulesOperationResultsResponse = - OperationResultAutoGenerated; - -/** Optional parameters. */ -export interface GovernanceRulesListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GovernanceRulesListNextResponse = GovernanceRuleList; - -/** Optional parameters. */ -export interface ApplicationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type ApplicationsListResponse = ApplicationsList; - -/** Optional parameters. */ -export interface ApplicationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type ApplicationsListNextResponse = ApplicationsList; - -/** Optional parameters. */ -export interface ApplicationGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ApplicationGetResponse = Application; - -/** Optional parameters. */ -export interface ApplicationCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type ApplicationCreateOrUpdateResponse = Application; - -/** Optional parameters. */ -export interface ApplicationDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface SecurityConnectorApplicationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecurityConnectorApplicationsListResponse = ApplicationsList; - -/** Optional parameters. */ -export interface SecurityConnectorApplicationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecurityConnectorApplicationsListNextResponse = ApplicationsList; - -/** Optional parameters. */ -export interface SecurityConnectorApplicationGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecurityConnectorApplicationGetResponse = Application; - -/** Optional parameters. */ -export interface SecurityConnectorApplicationCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type SecurityConnectorApplicationCreateOrUpdateResponse = Application; - -/** Optional parameters. */ -export interface SecurityConnectorApplicationDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface DefenderForStorageGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type DefenderForStorageGetResponse = DefenderForStorageSetting; - -/** Optional parameters. */ -export interface DefenderForStorageCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type DefenderForStorageCreateResponse = DefenderForStorageSetting; - -/** Optional parameters. */ -export interface SecurityOperatorsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecurityOperatorsListResponse = SecurityOperatorList; - -/** Optional parameters. */ -export interface SecurityOperatorsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecurityOperatorsGetResponse = SecurityOperator; - -/** Optional parameters. */ -export interface SecurityOperatorsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type SecurityOperatorsCreateOrUpdateResponse = SecurityOperator; - -/** Optional parameters. */ -export interface SecurityOperatorsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { - /** The baseline results for this rule. */ - body?: RuleResultsInput; -} - -/** Contains response data for the createOrUpdate operation. */ -export type SqlVulnerabilityAssessmentBaselineRulesCreateOrUpdateResponse = - RuleResults; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentBaselineRulesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SqlVulnerabilityAssessmentBaselineRulesGetResponse = RuleResults; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentBaselineRulesDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentBaselineRulesListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SqlVulnerabilityAssessmentBaselineRulesListResponse = RulesResults; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentBaselineRulesAddOptionalParams - extends coreClient.OperationOptions { - /** The baseline rules. */ - body?: RulesResultsInput; -} - -/** Contains response data for the add operation. */ -export type SqlVulnerabilityAssessmentBaselineRulesAddResponse = RulesResults; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentScansGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SqlVulnerabilityAssessmentScansGetResponse = Scan; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentScansListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SqlVulnerabilityAssessmentScansListResponse = Scans; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentScanResultsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SqlVulnerabilityAssessmentScanResultsGetResponse = ScanResult; - -/** Optional parameters. */ -export interface SqlVulnerabilityAssessmentScanResultsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SqlVulnerabilityAssessmentScanResultsListResponse = ScanResults; - -/** Optional parameters. */ -export interface UpdateSensitivitySettingsOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the updateSensitivitySettings operation. */ -export type UpdateSensitivitySettingsResponse = GetSensitivitySettingsResponse; - -/** Optional parameters. */ -export interface GetSensitivitySettingsOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getSensitivitySettings operation. */ -export type GetSensitivitySettingsOperationResponse = - GetSensitivitySettingsResponse; - -/** Optional parameters. */ -export interface SensitivitySettingsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SensitivitySettingsListResponse = - GetSensitivitySettingsListResponse; - -/** Optional parameters. */ -export interface HealthReportsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type HealthReportsListResponse = HealthReportsList; - -/** Optional parameters. */ -export interface HealthReportsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type HealthReportsGetResponse = HealthReport; - -/** Optional parameters. */ -export interface HealthReportsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type HealthReportsListNextResponse = HealthReportsList; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsListAvailableOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listAvailable operation. */ -export type AzureDevOpsOrgsListAvailableResponse = AzureDevOpsOrgListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AzureDevOpsOrgsListResponse = AzureDevOpsOrgListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AzureDevOpsOrgsGetResponse = AzureDevOpsOrg; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the createOrUpdate operation. */ -export type AzureDevOpsOrgsCreateOrUpdateResponse = AzureDevOpsOrg; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the update operation. */ -export type AzureDevOpsOrgsUpdateResponse = AzureDevOpsOrg; - -/** Optional parameters. */ -export interface AzureDevOpsOrgsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AzureDevOpsOrgsListNextResponse = AzureDevOpsOrgListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsProjectsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AzureDevOpsProjectsListResponse = AzureDevOpsProjectListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsProjectsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AzureDevOpsProjectsGetResponse = AzureDevOpsProject; - -/** Optional parameters. */ -export interface AzureDevOpsProjectsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the createOrUpdate operation. */ -export type AzureDevOpsProjectsCreateOrUpdateResponse = AzureDevOpsProject; - -/** Optional parameters. */ -export interface AzureDevOpsProjectsUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the update operation. */ -export type AzureDevOpsProjectsUpdateResponse = AzureDevOpsProject; - -/** Optional parameters. */ -export interface AzureDevOpsProjectsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AzureDevOpsProjectsListNextResponse = - AzureDevOpsProjectListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsReposListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AzureDevOpsReposListResponse = AzureDevOpsRepositoryListResponse; - -/** Optional parameters. */ -export interface AzureDevOpsReposGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AzureDevOpsReposGetResponse = AzureDevOpsRepository; - -/** Optional parameters. */ -export interface AzureDevOpsReposCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the createOrUpdate operation. */ -export type AzureDevOpsReposCreateOrUpdateResponse = AzureDevOpsRepository; - -/** Optional parameters. */ -export interface AzureDevOpsReposUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the update operation. */ -export type AzureDevOpsReposUpdateResponse = AzureDevOpsRepository; - -/** Optional parameters. */ -export interface AzureDevOpsReposListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AzureDevOpsReposListNextResponse = - AzureDevOpsRepositoryListResponse; - -/** Optional parameters. */ -export interface DevOpsConfigurationsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type DevOpsConfigurationsListResponse = DevOpsConfigurationListResponse; - -/** Optional parameters. */ -export interface DevOpsConfigurationsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type DevOpsConfigurationsGetResponse = DevOpsConfiguration; - -/** Optional parameters. */ -export interface DevOpsConfigurationsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the createOrUpdate operation. */ -export type DevOpsConfigurationsCreateOrUpdateResponse = DevOpsConfiguration; - -/** Optional parameters. */ -export interface DevOpsConfigurationsUpdateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the update operation. */ -export type DevOpsConfigurationsUpdateResponse = DevOpsConfiguration; - -/** Optional parameters. */ -export interface DevOpsConfigurationsDeleteOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Optional parameters. */ -export interface DevOpsConfigurationsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type DevOpsConfigurationsListNextResponse = - DevOpsConfigurationListResponse; - -/** Optional parameters. */ -export interface GitHubOwnersListAvailableOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listAvailable operation. */ -export type GitHubOwnersListAvailableResponse = GitHubOwnerListResponse; - -/** Optional parameters. */ -export interface GitHubOwnersListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GitHubOwnersListResponse = GitHubOwnerListResponse; - -/** Optional parameters. */ -export interface GitHubOwnersGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GitHubOwnersGetResponse = GitHubOwner; - -/** Optional parameters. */ -export interface GitHubOwnersListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GitHubOwnersListNextResponse = GitHubOwnerListResponse; - -/** Optional parameters. */ -export interface GitHubReposListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GitHubReposListResponse = GitHubRepositoryListResponse; - -/** Optional parameters. */ -export interface GitHubReposGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GitHubReposGetResponse = GitHubRepository; - -/** Optional parameters. */ -export interface GitHubReposListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GitHubReposListNextResponse = GitHubRepositoryListResponse; - -/** Optional parameters. */ -export interface GitLabGroupsListAvailableOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listAvailable operation. */ -export type GitLabGroupsListAvailableResponse = GitLabGroupListResponse; - -/** Optional parameters. */ -export interface GitLabGroupsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GitLabGroupsListResponse = GitLabGroupListResponse; - -/** Optional parameters. */ -export interface GitLabGroupsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GitLabGroupsGetResponse = GitLabGroup; - -/** Optional parameters. */ -export interface GitLabGroupsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GitLabGroupsListNextResponse = GitLabGroupListResponse; - -/** Optional parameters. */ -export interface GitLabSubgroupsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GitLabSubgroupsListResponse = GitLabGroupListResponse; - -/** Optional parameters. */ -export interface GitLabProjectsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type GitLabProjectsListResponse = GitLabProjectListResponse; - -/** Optional parameters. */ -export interface GitLabProjectsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type GitLabProjectsGetResponse = GitLabProject; - -/** Optional parameters. */ -export interface GitLabProjectsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type GitLabProjectsListNextResponse = GitLabProjectListResponse; - -/** Optional parameters. */ -export interface DevOpsOperationResultsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type DevOpsOperationResultsGetResponse = OperationStatusResult; - -/** Optional parameters. */ -export interface SecurityConnectorsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecurityConnectorsListResponse = SecurityConnectorsList; - -/** Optional parameters. */ -export interface SecurityConnectorsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type SecurityConnectorsListByResourceGroupResponse = - SecurityConnectorsList; - -/** Optional parameters. */ -export interface SecurityConnectorsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecurityConnectorsGetResponse = SecurityConnector; - -/** Optional parameters. */ -export interface SecurityConnectorsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type SecurityConnectorsCreateOrUpdateResponse = SecurityConnector; - -/** Optional parameters. */ -export interface SecurityConnectorsUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type SecurityConnectorsUpdateResponse = SecurityConnector; - -/** Optional parameters. */ -export interface SecurityConnectorsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface SecurityConnectorsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecurityConnectorsListNextResponse = SecurityConnectorsList; - -/** Optional parameters. */ -export interface SecurityConnectorsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type SecurityConnectorsListByResourceGroupNextResponse = - SecurityConnectorsList; - -/** Optional parameters. */ -export interface ComplianceResultsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type ComplianceResultsListResponse = ComplianceResultList; - -/** Optional parameters. */ -export interface ComplianceResultsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ComplianceResultsGetResponse = ComplianceResult; - -/** Optional parameters. */ -export interface ComplianceResultsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type ComplianceResultsListNextResponse = ComplianceResultList; - -/** Optional parameters. */ -export interface AdvancedThreatProtectionGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AdvancedThreatProtectionGetResponse = - AdvancedThreatProtectionSetting; - -/** Optional parameters. */ -export interface AdvancedThreatProtectionCreateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the create operation. */ -export type AdvancedThreatProtectionCreateResponse = - AdvancedThreatProtectionSetting; - -/** Optional parameters. */ -export interface DeviceSecurityGroupsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type DeviceSecurityGroupsListResponse = DeviceSecurityGroupList; - -/** Optional parameters. */ -export interface DeviceSecurityGroupsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type DeviceSecurityGroupsGetResponse = DeviceSecurityGroup; - -/** Optional parameters. */ -export interface DeviceSecurityGroupsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type DeviceSecurityGroupsCreateOrUpdateResponse = DeviceSecurityGroup; - -/** Optional parameters. */ -export interface DeviceSecurityGroupsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface DeviceSecurityGroupsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type DeviceSecurityGroupsListNextResponse = DeviceSecurityGroupList; - -/** Optional parameters. */ -export interface IotSecuritySolutionAnalyticsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type IotSecuritySolutionAnalyticsListResponse = - IoTSecuritySolutionAnalyticsModelList; - -/** Optional parameters. */ -export interface IotSecuritySolutionAnalyticsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type IotSecuritySolutionAnalyticsGetResponse = - IoTSecuritySolutionAnalyticsModel; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsAggregatedAlertListOptionalParams - extends coreClient.OperationOptions { - /** Number of results to retrieve. */ - top?: number; -} - -/** Contains response data for the list operation. */ -export type IotSecuritySolutionsAnalyticsAggregatedAlertListResponse = - IoTSecurityAggregatedAlertList; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsAggregatedAlertGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type IotSecuritySolutionsAnalyticsAggregatedAlertGetResponse = - IoTSecurityAggregatedAlert; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsAggregatedAlertDismissOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsAggregatedAlertListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type IotSecuritySolutionsAnalyticsAggregatedAlertListNextResponse = - IoTSecurityAggregatedAlertList; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsRecommendationGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type IotSecuritySolutionsAnalyticsRecommendationGetResponse = - IoTSecurityAggregatedRecommendation; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsRecommendationListOptionalParams - extends coreClient.OperationOptions { - /** Number of results to retrieve. */ - top?: number; -} - -/** Contains response data for the list operation. */ -export type IotSecuritySolutionsAnalyticsRecommendationListResponse = - IoTSecurityAggregatedRecommendationList; - -/** Optional parameters. */ -export interface IotSecuritySolutionsAnalyticsRecommendationListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type IotSecuritySolutionsAnalyticsRecommendationListNextResponse = - IoTSecurityAggregatedRecommendationList; - -/** Optional parameters. */ -export interface IotSecuritySolutionListBySubscriptionOptionalParams - extends coreClient.OperationOptions { - /** Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. */ - filter?: string; -} - -/** Contains response data for the listBySubscription operation. */ -export type IotSecuritySolutionListBySubscriptionResponse = - IoTSecuritySolutionsList; - -/** Optional parameters. */ -export interface IotSecuritySolutionListByResourceGroupOptionalParams - extends coreClient.OperationOptions { - /** Filter the IoT Security solution with OData syntax. Supports filtering by iotHubs. */ - filter?: string; -} - -/** Contains response data for the listByResourceGroup operation. */ -export type IotSecuritySolutionListByResourceGroupResponse = - IoTSecuritySolutionsList; - -/** Optional parameters. */ -export interface IotSecuritySolutionGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type IotSecuritySolutionGetResponse = IoTSecuritySolutionModel; - -/** Optional parameters. */ -export interface IotSecuritySolutionCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type IotSecuritySolutionCreateOrUpdateResponse = - IoTSecuritySolutionModel; - -/** Optional parameters. */ -export interface IotSecuritySolutionUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type IotSecuritySolutionUpdateResponse = IoTSecuritySolutionModel; - -/** Optional parameters. */ -export interface IotSecuritySolutionDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface IotSecuritySolutionListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type IotSecuritySolutionListBySubscriptionNextResponse = - IoTSecuritySolutionsList; - -/** Optional parameters. */ -export interface IotSecuritySolutionListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type IotSecuritySolutionListByResourceGroupNextResponse = - IoTSecuritySolutionsList; - -/** Optional parameters. */ -export interface AdaptiveNetworkHardeningsListByExtendedResourceOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByExtendedResource operation. */ -export type AdaptiveNetworkHardeningsListByExtendedResourceResponse = - AdaptiveNetworkHardeningsList; - -/** Optional parameters. */ -export interface AdaptiveNetworkHardeningsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AdaptiveNetworkHardeningsGetResponse = AdaptiveNetworkHardening; - -/** Optional parameters. */ -export interface AdaptiveNetworkHardeningsEnforceOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Optional parameters. */ -export interface AdaptiveNetworkHardeningsListByExtendedResourceNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByExtendedResourceNext operation. */ -export type AdaptiveNetworkHardeningsListByExtendedResourceNextResponse = - AdaptiveNetworkHardeningsList; - -/** Optional parameters. */ -export interface AllowedConnectionsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AllowedConnectionsListResponse = AllowedConnectionsList; - -/** Optional parameters. */ -export interface AllowedConnectionsListByHomeRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegion operation. */ -export type AllowedConnectionsListByHomeRegionResponse = AllowedConnectionsList; - -/** Optional parameters. */ -export interface AllowedConnectionsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AllowedConnectionsGetResponse = AllowedConnectionsResource; - -/** Optional parameters. */ -export interface AllowedConnectionsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AllowedConnectionsListNextResponse = AllowedConnectionsList; - -/** Optional parameters. */ -export interface AllowedConnectionsListByHomeRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegionNext operation. */ -export type AllowedConnectionsListByHomeRegionNextResponse = - AllowedConnectionsList; - -/** Optional parameters. */ -export interface AdaptiveApplicationControlsListOptionalParams - extends coreClient.OperationOptions { - /** Include the policy rules */ - includePathRecommendations?: boolean; - /** Return output in a summarized form */ - summary?: boolean; -} - -/** Contains response data for the list operation. */ -export type AdaptiveApplicationControlsListResponse = - AdaptiveApplicationControlGroups; - -/** Optional parameters. */ -export interface AdaptiveApplicationControlsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AdaptiveApplicationControlsGetResponse = - AdaptiveApplicationControlGroup; - -/** Optional parameters. */ -export interface AdaptiveApplicationControlsPutOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the put operation. */ -export type AdaptiveApplicationControlsPutResponse = - AdaptiveApplicationControlGroup; - -/** Optional parameters. */ -export interface AdaptiveApplicationControlsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface DiscoveredSecuritySolutionsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type DiscoveredSecuritySolutionsListResponse = - DiscoveredSecuritySolutionList; - -/** Optional parameters. */ -export interface DiscoveredSecuritySolutionsListByHomeRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegion operation. */ -export type DiscoveredSecuritySolutionsListByHomeRegionResponse = - DiscoveredSecuritySolutionList; - -/** Optional parameters. */ -export interface DiscoveredSecuritySolutionsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type DiscoveredSecuritySolutionsGetResponse = DiscoveredSecuritySolution; - -/** Optional parameters. */ -export interface DiscoveredSecuritySolutionsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type DiscoveredSecuritySolutionsListNextResponse = - DiscoveredSecuritySolutionList; - -/** Optional parameters. */ -export interface DiscoveredSecuritySolutionsListByHomeRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegionNext operation. */ -export type DiscoveredSecuritySolutionsListByHomeRegionNextResponse = - DiscoveredSecuritySolutionList; - -/** Optional parameters. */ -export interface ExternalSecuritySolutionsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type ExternalSecuritySolutionsListResponse = - ExternalSecuritySolutionList; - -/** Optional parameters. */ -export interface ExternalSecuritySolutionsListByHomeRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegion operation. */ -export type ExternalSecuritySolutionsListByHomeRegionResponse = - ExternalSecuritySolutionList; - -/** Optional parameters. */ -export interface ExternalSecuritySolutionsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ExternalSecuritySolutionsGetResponse = ExternalSecuritySolution; - -/** Optional parameters. */ -export interface ExternalSecuritySolutionsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type ExternalSecuritySolutionsListNextResponse = - ExternalSecuritySolutionList; - -/** Optional parameters. */ -export interface ExternalSecuritySolutionsListByHomeRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegionNext operation. */ -export type ExternalSecuritySolutionsListByHomeRegionNextResponse = - ExternalSecuritySolutionList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type JitNetworkAccessPoliciesListResponse = JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByRegion operation. */ -export type JitNetworkAccessPoliciesListByRegionResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupAndRegion operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type JitNetworkAccessPoliciesGetResponse = JitNetworkAccessPolicy; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type JitNetworkAccessPoliciesCreateOrUpdateResponse = - JitNetworkAccessPolicy; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesInitiateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the initiate operation. */ -export type JitNetworkAccessPoliciesInitiateResponse = JitNetworkAccessRequest; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type JitNetworkAccessPoliciesListNextResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByRegionNext operation. */ -export type JitNetworkAccessPoliciesListByRegionNextResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupNextResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface JitNetworkAccessPoliciesListByResourceGroupAndRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupAndRegionNext operation. */ -export type JitNetworkAccessPoliciesListByResourceGroupAndRegionNextResponse = - JitNetworkAccessPoliciesList; - -/** Optional parameters. */ -export interface SecureScoresListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecureScoresListResponse = SecureScoresList; - -/** Optional parameters. */ -export interface SecureScoresGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecureScoresGetResponse = SecureScoreItem; - -/** Optional parameters. */ -export interface SecureScoresListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecureScoresListNextResponse = SecureScoresList; - -/** Optional parameters. */ -export interface SecureScoreControlsListBySecureScoreOptionalParams - extends coreClient.OperationOptions { - /** OData expand. Optional. */ - expand?: ExpandControlsEnum; -} - -/** Contains response data for the listBySecureScore operation. */ -export type SecureScoreControlsListBySecureScoreResponse = - SecureScoreControlList; - -/** Optional parameters. */ -export interface SecureScoreControlsListOptionalParams - extends coreClient.OperationOptions { - /** OData expand. Optional. */ - expand?: ExpandControlsEnum; -} - -/** Contains response data for the list operation. */ -export type SecureScoreControlsListResponse = SecureScoreControlList; - -/** Optional parameters. */ -export interface SecureScoreControlsListBySecureScoreNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySecureScoreNext operation. */ -export type SecureScoreControlsListBySecureScoreNextResponse = - SecureScoreControlList; - -/** Optional parameters. */ -export interface SecureScoreControlsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecureScoreControlsListNextResponse = SecureScoreControlList; - -/** Optional parameters. */ -export interface SecureScoreControlDefinitionsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecureScoreControlDefinitionsListResponse = - SecureScoreControlDefinitionList; - -/** Optional parameters. */ -export interface SecureScoreControlDefinitionsListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type SecureScoreControlDefinitionsListBySubscriptionResponse = - SecureScoreControlDefinitionList; - -/** Optional parameters. */ -export interface SecureScoreControlDefinitionsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecureScoreControlDefinitionsListNextResponse = - SecureScoreControlDefinitionList; - -/** Optional parameters. */ -export interface SecureScoreControlDefinitionsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type SecureScoreControlDefinitionsListBySubscriptionNextResponse = - SecureScoreControlDefinitionList; - -/** Optional parameters. */ -export interface SecuritySolutionsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecuritySolutionsListResponse = SecuritySolutionList; - -/** Optional parameters. */ -export interface SecuritySolutionsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SecuritySolutionsGetResponse = SecuritySolution; - -/** Optional parameters. */ -export interface SecuritySolutionsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SecuritySolutionsListNextResponse = SecuritySolutionList; - -/** Optional parameters. */ -export interface SecuritySolutionsReferenceDataListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SecuritySolutionsReferenceDataListResponse = - SecuritySolutionsReferenceDataList; - -/** Optional parameters. */ -export interface SecuritySolutionsReferenceDataListByHomeRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegion operation. */ -export type SecuritySolutionsReferenceDataListByHomeRegionResponse = - SecuritySolutionsReferenceDataList; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentListByExtendedResourceOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByExtendedResource operation. */ -export type ServerVulnerabilityAssessmentListByExtendedResourceResponse = - ServerVulnerabilityAssessmentsList; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ServerVulnerabilityAssessmentGetResponse = - ServerVulnerabilityAssessment; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type ServerVulnerabilityAssessmentCreateOrUpdateResponse = - ServerVulnerabilityAssessment; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentDeleteOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Optional parameters. */ -export interface TopologyListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type TopologyListResponse = TopologyList; - -/** Optional parameters. */ -export interface TopologyListByHomeRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegion operation. */ -export type TopologyListByHomeRegionResponse = TopologyList; - -/** Optional parameters. */ -export interface TopologyGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type TopologyGetResponse = TopologyResource; - -/** Optional parameters. */ -export interface TopologyListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type TopologyListNextResponse = TopologyList; - -/** Optional parameters. */ -export interface TopologyListByHomeRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByHomeRegionNext operation. */ -export type TopologyListByHomeRegionNextResponse = TopologyList; - -/** Optional parameters. */ -export interface AssessmentsMetadataListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AssessmentsMetadataListResponse = - SecurityAssessmentMetadataResponseList; - -/** Optional parameters. */ -export interface AssessmentsMetadataGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type AssessmentsMetadataGetResponse = SecurityAssessmentMetadataResponse; - -/** Optional parameters. */ -export interface AssessmentsMetadataListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type AssessmentsMetadataListBySubscriptionResponse = - SecurityAssessmentMetadataResponseList; - -/** Optional parameters. */ -export interface AssessmentsMetadataGetInSubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getInSubscription operation. */ -export type AssessmentsMetadataGetInSubscriptionResponse = - SecurityAssessmentMetadataResponse; - -/** Optional parameters. */ -export interface AssessmentsMetadataCreateInSubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createInSubscription operation. */ -export type AssessmentsMetadataCreateInSubscriptionResponse = - SecurityAssessmentMetadataResponse; - -/** Optional parameters. */ -export interface AssessmentsMetadataDeleteInSubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AssessmentsMetadataListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AssessmentsMetadataListNextResponse = - SecurityAssessmentMetadataResponseList; - -/** Optional parameters. */ -export interface AssessmentsMetadataListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type AssessmentsMetadataListBySubscriptionNextResponse = - SecurityAssessmentMetadataResponseList; - -/** Optional parameters. */ -export interface AssessmentsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AssessmentsListResponse = SecurityAssessmentList; - -/** Optional parameters. */ -export interface AssessmentsGetOptionalParams - extends coreClient.OperationOptions { - /** OData expand. Optional. */ - expand?: ExpandEnum; -} - -/** Contains response data for the get operation. */ -export type AssessmentsGetResponse = SecurityAssessmentResponse; - -/** Optional parameters. */ -export interface AssessmentsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type AssessmentsCreateOrUpdateResponse = SecurityAssessmentResponse; - -/** Optional parameters. */ -export interface AssessmentsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AssessmentsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AssessmentsListNextResponse = SecurityAssessmentList; - -/** Optional parameters. */ -export interface AlertsListOptionalParams extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type AlertsListResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type AlertsListByResourceGroupResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListSubscriptionLevelByRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listSubscriptionLevelByRegion operation. */ -export type AlertsListSubscriptionLevelByRegionResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListResourceGroupLevelByRegionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listResourceGroupLevelByRegion operation. */ -export type AlertsListResourceGroupLevelByRegionResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsGetSubscriptionLevelOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getSubscriptionLevel operation. */ -export type AlertsGetSubscriptionLevelResponse = Alert; - -/** Optional parameters. */ -export interface AlertsGetResourceGroupLevelOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getResourceGroupLevel operation. */ -export type AlertsGetResourceGroupLevelResponse = Alert; - -/** Optional parameters. */ -export interface AlertsUpdateSubscriptionLevelStateToDismissOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateSubscriptionLevelStateToResolveOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateSubscriptionLevelStateToActivateOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateSubscriptionLevelStateToInProgressOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateResourceGroupLevelStateToResolveOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateResourceGroupLevelStateToDismissOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateResourceGroupLevelStateToActivateOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsUpdateResourceGroupLevelStateToInProgressOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface AlertsSimulateOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Optional parameters. */ -export interface AlertsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type AlertsListNextResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type AlertsListByResourceGroupNextResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListSubscriptionLevelByRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listSubscriptionLevelByRegionNext operation. */ -export type AlertsListSubscriptionLevelByRegionNextResponse = AlertList; - -/** Optional parameters. */ -export interface AlertsListResourceGroupLevelByRegionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listResourceGroupLevelByRegionNext operation. */ -export type AlertsListResourceGroupLevelByRegionNextResponse = AlertList; - -/** Optional parameters. */ -export interface SettingsListOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the list operation. */ -export type SettingsListResponse = SettingsList; - -/** Optional parameters. */ -export interface SettingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type SettingsGetResponse = SettingUnion; - -/** Optional parameters. */ -export interface SettingsUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type SettingsUpdateResponse = SettingUnion; - -/** Optional parameters. */ -export interface SettingsListNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listNext operation. */ -export type SettingsListNextResponse = SettingsList; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type ServerVulnerabilityAssessmentsSettingsListBySubscriptionResponse = - ServerVulnerabilityAssessmentsSettingsList; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentsSettingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type ServerVulnerabilityAssessmentsSettingsGetResponse = - ServerVulnerabilityAssessmentsSettingUnion; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentsSettingsCreateOrUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the createOrUpdate operation. */ -export type ServerVulnerabilityAssessmentsSettingsCreateOrUpdateResponse = - ServerVulnerabilityAssessmentsSettingUnion; - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentsSettingsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface ServerVulnerabilityAssessmentsSettingsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type ServerVulnerabilityAssessmentsSettingsListBySubscriptionNextResponse = - ServerVulnerabilityAssessmentsSettingsList; - -/** Optional parameters. */ -export interface APICollectionsListBySubscriptionOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscription operation. */ -export type APICollectionsListBySubscriptionResponse = ApiCollectionList; - -/** Optional parameters. */ -export interface APICollectionsListByResourceGroupOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroup operation. */ -export type APICollectionsListByResourceGroupResponse = ApiCollectionList; - -/** Optional parameters. */ -export interface APICollectionsListByAzureApiManagementServiceOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByAzureApiManagementService operation. */ -export type APICollectionsListByAzureApiManagementServiceResponse = - ApiCollectionList; - -/** Optional parameters. */ -export interface APICollectionsGetByAzureApiManagementServiceOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the getByAzureApiManagementService operation. */ -export type APICollectionsGetByAzureApiManagementServiceResponse = - ApiCollection; - -/** Optional parameters. */ -export interface APICollectionsOnboardAzureApiManagementApiOptionalParams - extends coreClient.OperationOptions { - /** Delay to wait until next poll, in milliseconds. */ - updateIntervalInMs?: number; - /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */ - resumeFrom?: string; -} - -/** Contains response data for the onboardAzureApiManagementApi operation. */ -export type APICollectionsOnboardAzureApiManagementApiResponse = ApiCollection; - -/** Optional parameters. */ -export interface APICollectionsOffboardAzureApiManagementApiOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface APICollectionsListBySubscriptionNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listBySubscriptionNext operation. */ -export type APICollectionsListBySubscriptionNextResponse = ApiCollectionList; - -/** Optional parameters. */ -export interface APICollectionsListByResourceGroupNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByResourceGroupNext operation. */ -export type APICollectionsListByResourceGroupNextResponse = ApiCollectionList; - -/** Optional parameters. */ -export interface APICollectionsListByAzureApiManagementServiceNextOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the listByAzureApiManagementServiceNext operation. */ -export type APICollectionsListByAzureApiManagementServiceNextResponse = - ApiCollectionList; - -/** Optional parameters. */ -export interface PricingsGetOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the get operation. */ -export type PricingsGetResponse = Pricing; - -/** Optional parameters. */ -export interface PricingsUpdateOptionalParams - extends coreClient.OperationOptions {} - -/** Contains response data for the update operation. */ -export type PricingsUpdateResponse = Pricing; - -/** Optional parameters. */ -export interface PricingsDeleteOptionalParams - extends coreClient.OperationOptions {} - -/** Optional parameters. */ -export interface PricingsListOptionalParams - extends coreClient.OperationOptions { - /** OData filter. Optional. */ - filter?: string; -} - -/** Contains response data for the list operation. */ -export type PricingsListResponse = PricingList; - -/** Optional parameters. */ -export interface SecurityCenterOptionalParams - extends coreClient.ServiceClientOptions { - /** server parameter */ - $host?: string; - /** Overrides client endpoint. */ - endpoint?: string; -} +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + ProxyResource, + Resource, + SystemData, + CreatedByType, + ErrorAdditionalInfo, + ErrorResponse, + ErrorDetail, + ExtensionResource, + Operation, + OperationDisplay, + Origin, + ArmActionType, + PrivateLinkResourceProperties, + PrivateEndpointConnectionProperties, + PrivateEndpoint, + PrivateLinkServiceConnectionState, + PrivateEndpointServiceConnectionStatus, + PrivateEndpointConnectionProvisioningState, + ArmPrivateEndpointConnection, + Identity, + ResourceIdentityType, + OperationStatusResult, + TrackedResource, +} from "./models.js"; +export { + KnownCreatedByType, + KnownOrigin, + KnownArmActionType, + KnownPrivateEndpointServiceConnectionStatus, + KnownPrivateEndpointConnectionProvisioningState, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/ioTSecurityAPI/index.ts b/sdk/security/arm-security/src/models/ioTSecurityAPI/index.ts new file mode 100644 index 000000000000..4f5f3c99250b --- /dev/null +++ b/sdk/security/arm-security/src/models/ioTSecurityAPI/index.ts @@ -0,0 +1,59 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + DeviceSecurityGroup, + DeviceSecurityGroupProperties, + ThresholdCustomAlertRule, + ThresholdCustomAlertRuleUnion, + TimeWindowCustomAlertRule, + AllowlistCustomAlertRule, + DenylistCustomAlertRule, + CustomAlertRule, + CustomAlertRuleUnion, + ListCustomAlertRule, + ListCustomAlertRuleUnion, + ValueType, + IoTSecuritySolutionAnalyticsModel, + IoTSecuritySolutionAnalyticsModelProperties, + IoTSeverityMetrics, + IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem, + IoTSecurityAlertedDevice, + IoTSecurityDeviceAlert, + ReportedSeverity, + IoTSecurityDeviceRecommendation, + IoTSecuritySolutionAnalyticsModelList, + IoTSecuritySolutionModel, + IoTSecuritySolutionProperties, + SecuritySolutionStatus, + ExportData, + DataSource, + UserDefinedResourcesProperties, + RecommendationConfigurationProperties, + RecommendationType, + RecommendationConfigStatus, + UnmaskedIpLoggingStatus, + AdditionalWorkspacesProperties, + AdditionalWorkspaceType, + AdditionalWorkspaceDataType, + UpdateIotSecuritySolutionData, + UpdateIoTSecuritySolutionProperties, + TagsResource, + IoTSecurityAggregatedAlert, + IoTSecurityAggregatedAlertProperties, + IoTSecurityAggregatedAlertPropertiesTopDevicesListItem, + IoTSecurityAggregatedRecommendation, + IoTSecurityAggregatedRecommendationProperties, +} from "./models.js"; +export { + KnownValueType, + KnownReportedSeverity, + KnownSecuritySolutionStatus, + KnownExportData, + KnownDataSource, + KnownRecommendationType, + KnownRecommendationConfigStatus, + KnownUnmaskedIpLoggingStatus, + KnownAdditionalWorkspaceType, + KnownAdditionalWorkspaceDataType, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/ioTSecurityAPI/models.ts b/sdk/security/arm-security/src/models/ioTSecurityAPI/models.ts new file mode 100644 index 000000000000..9b4e1b76069b --- /dev/null +++ b/sdk/security/arm-security/src/models/ioTSecurityAPI/models.ts @@ -0,0 +1,1701 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ProxyResource, systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The device security group resource */ +export interface DeviceSecurityGroup extends ExtensionResource { + /** The list of custom alert threshold rules. */ + thresholdRules?: ThresholdCustomAlertRuleUnion[]; + /** The list of custom alert time-window rules. */ + timeWindowRules?: TimeWindowCustomAlertRule[]; + /** The allow-list custom alert rules. */ + allowlistRules?: AllowlistCustomAlertRule[]; + /** The deny-list custom alert rules. */ + denylistRules?: DenylistCustomAlertRule[]; +} + +export function deviceSecurityGroupSerializer(item: DeviceSecurityGroup): any { + return { + properties: areAllPropsUndefined(item, [ + "thresholdRules", + "timeWindowRules", + "allowlistRules", + "denylistRules", + ]) + ? undefined + : _deviceSecurityGroupPropertiesSerializer(item), + }; +} + +export function deviceSecurityGroupDeserializer(item: any): DeviceSecurityGroup { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _deviceSecurityGroupPropertiesDeserializer(item["properties"])), + }; +} + +/** describes properties of a security group. */ +export interface DeviceSecurityGroupProperties { + /** The list of custom alert threshold rules. */ + thresholdRules?: ThresholdCustomAlertRuleUnion[]; + /** The list of custom alert time-window rules. */ + timeWindowRules?: TimeWindowCustomAlertRule[]; + /** The allow-list custom alert rules. */ + allowlistRules?: AllowlistCustomAlertRule[]; + /** The deny-list custom alert rules. */ + denylistRules?: DenylistCustomAlertRule[]; +} + +export function deviceSecurityGroupPropertiesSerializer(item: DeviceSecurityGroupProperties): any { + return { + thresholdRules: !item["thresholdRules"] + ? item["thresholdRules"] + : thresholdCustomAlertRuleUnionArraySerializer(item["thresholdRules"]), + timeWindowRules: !item["timeWindowRules"] + ? item["timeWindowRules"] + : timeWindowCustomAlertRuleArraySerializer(item["timeWindowRules"]), + allowlistRules: !item["allowlistRules"] + ? item["allowlistRules"] + : allowlistCustomAlertRuleArraySerializer(item["allowlistRules"]), + denylistRules: !item["denylistRules"] + ? item["denylistRules"] + : denylistCustomAlertRuleArraySerializer(item["denylistRules"]), + }; +} + +export function deviceSecurityGroupPropertiesDeserializer( + item: any, +): DeviceSecurityGroupProperties { + return { + thresholdRules: !item["thresholdRules"] + ? item["thresholdRules"] + : thresholdCustomAlertRuleUnionArrayDeserializer(item["thresholdRules"]), + timeWindowRules: !item["timeWindowRules"] + ? item["timeWindowRules"] + : timeWindowCustomAlertRuleArrayDeserializer(item["timeWindowRules"]), + allowlistRules: !item["allowlistRules"] + ? item["allowlistRules"] + : allowlistCustomAlertRuleArrayDeserializer(item["allowlistRules"]), + denylistRules: !item["denylistRules"] + ? item["denylistRules"] + : denylistCustomAlertRuleArrayDeserializer(item["denylistRules"]), + }; +} + +export function thresholdCustomAlertRuleUnionArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return thresholdCustomAlertRuleUnionSerializer(item); + }); +} + +export function thresholdCustomAlertRuleUnionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return thresholdCustomAlertRuleUnionDeserializer(item); + }); +} + +/** A custom alert rule that checks if a value (depends on the custom alert type) is within the given range. */ +export interface ThresholdCustomAlertRule extends CustomAlertRule { + /** The minimum threshold. */ + minThreshold: number; + /** The maximum threshold. */ + maxThreshold: number; + ruleType: "ThresholdCustomAlertRule" | "TimeWindowCustomAlertRule"; +} + +export function thresholdCustomAlertRuleSerializer(item: ThresholdCustomAlertRule): any { + return { + isEnabled: item["isEnabled"], + ruleType: item["ruleType"], + minThreshold: item["minThreshold"], + maxThreshold: item["maxThreshold"], + }; +} + +export function thresholdCustomAlertRuleDeserializer(item: any): ThresholdCustomAlertRule { + return { + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + ruleType: item["ruleType"], + minThreshold: item["minThreshold"], + maxThreshold: item["maxThreshold"], + }; +} + +/** Alias for ThresholdCustomAlertRuleUnion */ +export type ThresholdCustomAlertRuleUnion = TimeWindowCustomAlertRule | ThresholdCustomAlertRule; + +export function thresholdCustomAlertRuleUnionSerializer(item: ThresholdCustomAlertRuleUnion): any { + switch (item.ruleType) { + case "TimeWindowCustomAlertRule": + return timeWindowCustomAlertRuleSerializer(item as TimeWindowCustomAlertRule); + + default: + return thresholdCustomAlertRuleSerializer(item); + } +} + +export function thresholdCustomAlertRuleUnionDeserializer( + item: any, +): ThresholdCustomAlertRuleUnion { + switch (item["ruleType"]) { + case "TimeWindowCustomAlertRule": + return timeWindowCustomAlertRuleDeserializer(item as TimeWindowCustomAlertRule); + + default: + return thresholdCustomAlertRuleDeserializer(item); + } +} + +/** 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 extends ThresholdCustomAlertRule { + /** The time window size in iso8601 format. */ + timeWindowSize: string; + ruleType: "TimeWindowCustomAlertRule"; +} + +export function timeWindowCustomAlertRuleSerializer(item: TimeWindowCustomAlertRule): any { + return { + minThreshold: item["minThreshold"], + maxThreshold: item["maxThreshold"], + ruleType: item["ruleType"], + isEnabled: item["isEnabled"], + timeWindowSize: item["timeWindowSize"], + }; +} + +export function timeWindowCustomAlertRuleDeserializer(item: any): TimeWindowCustomAlertRule { + return { + minThreshold: item["minThreshold"], + maxThreshold: item["maxThreshold"], + ruleType: item["ruleType"], + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + timeWindowSize: item["timeWindowSize"], + }; +} + +export function timeWindowCustomAlertRuleArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return timeWindowCustomAlertRuleSerializer(item); + }); +} + +export function timeWindowCustomAlertRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return timeWindowCustomAlertRuleDeserializer(item); + }); +} + +export function allowlistCustomAlertRuleArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return allowlistCustomAlertRuleSerializer(item); + }); +} + +export function allowlistCustomAlertRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return allowlistCustomAlertRuleDeserializer(item); + }); +} + +/** A custom alert rule that checks if a value (depends on the custom alert type) is allowed. */ +export interface AllowlistCustomAlertRule extends ListCustomAlertRule { + /** The values to allow. The format of the values depends on the rule type. */ + allowlistValues: string[]; + ruleType: "AllowlistCustomAlertRule"; +} + +export function allowlistCustomAlertRuleSerializer(item: AllowlistCustomAlertRule): any { + return { + ruleType: item["ruleType"], + isEnabled: item["isEnabled"], + allowlistValues: item["allowlistValues"].map((p: any) => { + return p; + }), + }; +} + +export function allowlistCustomAlertRuleDeserializer(item: any): AllowlistCustomAlertRule { + return { + valueType: item["valueType"], + ruleType: item["ruleType"], + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + allowlistValues: item["allowlistValues"].map((p: any) => { + return p; + }), + }; +} + +export function denylistCustomAlertRuleArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return denylistCustomAlertRuleSerializer(item); + }); +} + +export function denylistCustomAlertRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return denylistCustomAlertRuleDeserializer(item); + }); +} + +/** A custom alert rule that checks if a value (depends on the custom alert type) is denied. */ +export interface DenylistCustomAlertRule extends ListCustomAlertRule { + /** The values to deny. The format of the values depends on the rule type. */ + denylistValues: string[]; + ruleType: "DenylistCustomAlertRule"; +} + +export function denylistCustomAlertRuleSerializer(item: DenylistCustomAlertRule): any { + return { + ruleType: item["ruleType"], + isEnabled: item["isEnabled"], + denylistValues: item["denylistValues"].map((p: any) => { + return p; + }), + }; +} + +export function denylistCustomAlertRuleDeserializer(item: any): DenylistCustomAlertRule { + return { + valueType: item["valueType"], + ruleType: item["ruleType"], + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + denylistValues: item["denylistValues"].map((p: any) => { + return p; + }), + }; +} + +/** A custom alert rule. */ +export interface CustomAlertRule { + /** The display name of the custom alert. */ + readonly displayName?: string; + /** The description of the custom alert. */ + readonly description?: string; + /** Status of the custom alert. */ + isEnabled: boolean; + /** The type of the custom alert rule. */ + /** The discriminator possible values: ThresholdCustomAlertRule, TimeWindowCustomAlertRule, AllowlistCustomAlertRule, ListCustomAlertRule, DenylistCustomAlertRule */ + ruleType: string; +} + +export function customAlertRuleSerializer(item: CustomAlertRule): any { + return { isEnabled: item["isEnabled"], ruleType: item["ruleType"] }; +} + +export function customAlertRuleDeserializer(item: any): CustomAlertRule { + return { + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + ruleType: item["ruleType"], + }; +} + +/** Alias for CustomAlertRuleUnion */ +export type CustomAlertRuleUnion = + | ThresholdCustomAlertRuleUnion + | ListCustomAlertRuleUnion + | CustomAlertRule; + +export function customAlertRuleUnionSerializer(item: CustomAlertRuleUnion): any { + switch (item.ruleType) { + case "ThresholdCustomAlertRule": + case "TimeWindowCustomAlertRule": + return thresholdCustomAlertRuleUnionSerializer(item as ThresholdCustomAlertRuleUnion); + + case "ListCustomAlertRule": + case "AllowlistCustomAlertRule": + case "DenylistCustomAlertRule": + return listCustomAlertRuleUnionSerializer(item as ListCustomAlertRuleUnion); + + default: + return customAlertRuleSerializer(item); + } +} + +export function customAlertRuleUnionDeserializer(item: any): CustomAlertRuleUnion { + switch (item["ruleType"]) { + case "ThresholdCustomAlertRule": + case "TimeWindowCustomAlertRule": + return thresholdCustomAlertRuleUnionDeserializer(item as ThresholdCustomAlertRuleUnion); + + case "ListCustomAlertRule": + case "AllowlistCustomAlertRule": + case "DenylistCustomAlertRule": + return listCustomAlertRuleUnionDeserializer(item as ListCustomAlertRuleUnion); + + default: + return customAlertRuleDeserializer(item); + } +} + +/** A List custom alert rule. */ +export interface ListCustomAlertRule extends CustomAlertRule { + /** The value type of the items in the list. */ + readonly valueType?: ValueType; + ruleType: "ListCustomAlertRule" | "AllowlistCustomAlertRule" | "DenylistCustomAlertRule"; +} + +export function listCustomAlertRuleSerializer(item: ListCustomAlertRule): any { + return { isEnabled: item["isEnabled"], ruleType: item["ruleType"] }; +} + +export function listCustomAlertRuleDeserializer(item: any): ListCustomAlertRule { + return { + displayName: item["displayName"], + description: item["description"], + isEnabled: item["isEnabled"], + ruleType: item["ruleType"], + valueType: item["valueType"], + }; +} + +/** Alias for ListCustomAlertRuleUnion */ +export type ListCustomAlertRuleUnion = + | AllowlistCustomAlertRule + | DenylistCustomAlertRule + | ListCustomAlertRule; + +export function listCustomAlertRuleUnionSerializer(item: ListCustomAlertRuleUnion): any { + switch (item.ruleType) { + case "AllowlistCustomAlertRule": + return allowlistCustomAlertRuleSerializer(item as AllowlistCustomAlertRule); + + case "DenylistCustomAlertRule": + return denylistCustomAlertRuleSerializer(item as DenylistCustomAlertRule); + + default: + return listCustomAlertRuleSerializer(item); + } +} + +export function listCustomAlertRuleUnionDeserializer(item: any): ListCustomAlertRuleUnion { + switch (item["ruleType"]) { + case "AllowlistCustomAlertRule": + return allowlistCustomAlertRuleDeserializer(item as AllowlistCustomAlertRule); + + case "DenylistCustomAlertRule": + return denylistCustomAlertRuleDeserializer(item as DenylistCustomAlertRule); + + default: + return listCustomAlertRuleDeserializer(item); + } +} + +/** The value type of the items in the list. */ +export enum KnownValueType { + /** An IP range in CIDR format (e.g. '192.168.0.1/8'). */ + IpCidr = "IpCidr", + /** Any string value. */ + String = "String", +} + +/** + * The value type of the items in the list. \ + * {@link KnownValueType} can be used interchangeably with ValueType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **IpCidr**: An IP range in CIDR format (e.g. '192.168.0.1\/8'). \ + * **String**: Any string value. + */ +export type ValueType = string; + +/** List of device security groups */ +export interface _DeviceSecurityGroupList { + /** List of device security group objects */ + value?: DeviceSecurityGroup[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _deviceSecurityGroupListDeserializer(item: any): _DeviceSecurityGroupList { + return { + value: !item["value"] ? item["value"] : deviceSecurityGroupArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function deviceSecurityGroupArraySerializer(result: Array): any[] { + return result.map((item) => { + return deviceSecurityGroupSerializer(item); + }); +} + +export function deviceSecurityGroupArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return deviceSecurityGroupDeserializer(item); + }); +} + +/** Security analytics of your IoT Security solution */ +export interface IoTSecuritySolutionAnalyticsModel extends ProxyResource { + /** Security analytics of your IoT Security solution. */ + readonly metrics?: IoTSeverityMetrics; + /** Number of unhealthy devices within your IoT Security solution. */ + readonly unhealthyDeviceCount?: number; + /** List of device metrics by the aggregation date. */ + 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[]; +} + +export function ioTSecuritySolutionAnalyticsModelDeserializer( + item: any, +): IoTSecuritySolutionAnalyticsModel { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _ioTSecuritySolutionAnalyticsModelPropertiesDeserializer(item["properties"])), + }; +} + +/** Security analytics properties of your IoT Security solution */ +export interface IoTSecuritySolutionAnalyticsModelProperties { + /** Security analytics of your IoT Security solution. */ + readonly metrics?: IoTSeverityMetrics; + /** Number of unhealthy devices within your IoT Security solution. */ + readonly unhealthyDeviceCount?: number; + /** List of device metrics by the aggregation date. */ + 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[]; +} + +export function ioTSecuritySolutionAnalyticsModelPropertiesDeserializer( + item: any, +): IoTSecuritySolutionAnalyticsModelProperties { + return { + metrics: !item["metrics"] ? item["metrics"] : ioTSeverityMetricsDeserializer(item["metrics"]), + unhealthyDeviceCount: item["unhealthyDeviceCount"], + devicesMetrics: !item["devicesMetrics"] + ? item["devicesMetrics"] + : ioTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItemArrayDeserializer( + item["devicesMetrics"], + ), + topAlertedDevices: !item["topAlertedDevices"] + ? item["topAlertedDevices"] + : ioTSecurityAlertedDeviceArrayDeserializer(item["topAlertedDevices"]), + mostPrevalentDeviceAlerts: !item["mostPrevalentDeviceAlerts"] + ? item["mostPrevalentDeviceAlerts"] + : ioTSecurityDeviceAlertArrayDeserializer(item["mostPrevalentDeviceAlerts"]), + mostPrevalentDeviceRecommendations: !item["mostPrevalentDeviceRecommendations"] + ? item["mostPrevalentDeviceRecommendations"] + : ioTSecurityDeviceRecommendationArrayDeserializer( + item["mostPrevalentDeviceRecommendations"], + ), + }; +} + +/** IoT Security solution analytics severity metrics. */ +export interface IoTSeverityMetrics { + /** Count of high severity alerts/recommendations. */ + high?: number; + /** Count of medium severity alerts/recommendations. */ + medium?: number; + /** Count of low severity alerts/recommendations. */ + low?: number; +} + +export function ioTSeverityMetricsDeserializer(item: any): IoTSeverityMetrics { + return { + high: item["high"], + medium: item["medium"], + low: item["low"], + }; +} + +export function ioTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItemDeserializer(item); + }); +} + +/** model interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem */ +export interface IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { + /** Aggregation of IoT Security solution device alert metrics by date. */ + date?: Date; + /** Device alert count by severity. */ + devicesMetrics?: IoTSeverityMetrics; +} + +export function ioTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItemDeserializer( + item: any, +): IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem { + return { + date: !item["date"] ? item["date"] : new Date(item["date"]), + devicesMetrics: !item["devicesMetrics"] + ? item["devicesMetrics"] + : ioTSeverityMetricsDeserializer(item["devicesMetrics"]), + }; +} + +export function ioTSecurityAlertedDeviceArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityAlertedDeviceDeserializer(item); + }); +} + +/** Statistical information about the number of alerts per device during last set number of days. */ +export interface IoTSecurityAlertedDevice { + /** Device identifier. */ + readonly deviceId?: string; + /** Number of alerts raised for this device. */ + readonly alertsCount?: number; +} + +export function ioTSecurityAlertedDeviceDeserializer(item: any): IoTSecurityAlertedDevice { + return { + deviceId: item["deviceId"], + alertsCount: item["alertsCount"], + }; +} + +export function ioTSecurityDeviceAlertArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityDeviceAlertDeserializer(item); + }); +} + +/** Statistical information about the number of alerts per alert type during last set number of days */ +export interface IoTSecurityDeviceAlert { + /** Display name of the alert */ + readonly alertDisplayName?: string; + /** Assessed Alert severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Number of alerts raised for this alert type. */ + readonly alertsCount?: number; +} + +export function ioTSecurityDeviceAlertDeserializer(item: any): IoTSecurityDeviceAlert { + return { + alertDisplayName: item["alertDisplayName"], + reportedSeverity: item["reportedSeverity"], + alertsCount: item["alertsCount"], + }; +} + +/** Assessed alert severity. */ +export enum KnownReportedSeverity { + /** Informational */ + Informational = "Informational", + /** Low */ + Low = "Low", + /** Medium */ + Medium = "Medium", + /** High */ + High = "High", +} + +/** + * Assessed alert severity. \ + * {@link KnownReportedSeverity} can be used interchangeably with ReportedSeverity, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Informational**: Informational \ + * **Low**: Low \ + * **Medium**: Medium \ + * **High**: High + */ +export type ReportedSeverity = string; + +export function ioTSecurityDeviceRecommendationArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityDeviceRecommendationDeserializer(item); + }); +} + +/** Statistical information about the number of recommendations per device, per recommendation type. */ +export interface IoTSecurityDeviceRecommendation { + /** Display name of the recommendation. */ + readonly recommendationDisplayName?: string; + /** Assessed recommendation severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Number of devices with this recommendation. */ + readonly devicesCount?: number; +} + +export function ioTSecurityDeviceRecommendationDeserializer( + item: any, +): IoTSecurityDeviceRecommendation { + return { + recommendationDisplayName: item["recommendationDisplayName"], + reportedSeverity: item["reportedSeverity"], + devicesCount: item["devicesCount"], + }; +} + +/** List of Security analytics of your IoT Security solution */ +export interface IoTSecuritySolutionAnalyticsModelList { + /** The IoTSecuritySolutionAnalyticsModel items on this page */ + value: IoTSecuritySolutionAnalyticsModel[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function ioTSecuritySolutionAnalyticsModelListDeserializer( + item: any, +): IoTSecuritySolutionAnalyticsModelList { + return { + value: ioTSecuritySolutionAnalyticsModelArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function ioTSecuritySolutionAnalyticsModelArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecuritySolutionAnalyticsModelDeserializer(item); + }); +} + +/** IoT Security solution configuration and resource information. */ +export interface IoTSecuritySolutionModel extends ProxyResource { + /** Resource tags. */ + tags?: Record; + /** The geo-location where the resource lives */ + location?: string; + /** Workspace resource ID */ + workspace?: string; + /** Resource display name. */ + displayName?: string; + /** Status of the IoT Security solution. */ + status?: SecuritySolutionStatus; + /** List of additional options for exporting to workspace data. */ + export?: ExportData[]; + /** Disabled data sources. Disabling these data sources compromises the system. */ + disabledDataSources?: DataSource[]; + /** IoT Hub resource IDs */ + iotHubs?: string[]; + /** Properties of the IoT Security solution's user defined resources. */ + userDefinedResources?: UserDefinedResourcesProperties; + /** List of resources that were automatically discovered as relevant to the security solution. */ + readonly autoDiscoveredResources?: string[]; + /** List of the configuration status for each recommendation type. */ + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + /** Unmasked IP address logging status */ + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; + /** List of additional workspaces */ + additionalWorkspaces?: AdditionalWorkspacesProperties[]; +} + +export function ioTSecuritySolutionModelSerializer(item: IoTSecuritySolutionModel): any { + return { + properties: areAllPropsUndefined(item, [ + "workspace", + "displayName", + "status", + "export", + "disabledDataSources", + "iotHubs", + "userDefinedResources", + "recommendationsConfiguration", + "unmaskedIpLoggingStatus", + "additionalWorkspaces", + ]) + ? undefined + : _ioTSecuritySolutionModelPropertiesSerializer(item), + tags: item["tags"], + location: item["location"], + }; +} + +export function ioTSecuritySolutionModelDeserializer(item: any): IoTSecuritySolutionModel { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _ioTSecuritySolutionModelPropertiesDeserializer(item["properties"])), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + location: item["location"], + }; +} + +/** Security Solution setting data */ +export interface IoTSecuritySolutionProperties { + /** Workspace resource ID */ + workspace?: string; + /** Resource display name. */ + displayName: string; + /** Status of the IoT Security solution. */ + status?: SecuritySolutionStatus; + /** List of additional options for exporting to workspace data. */ + export?: ExportData[]; + /** Disabled data sources. Disabling these data sources compromises the system. */ + disabledDataSources?: DataSource[]; + /** IoT Hub resource IDs */ + iotHubs: string[]; + /** Properties of the IoT Security solution's user defined resources. */ + userDefinedResources?: UserDefinedResourcesProperties; + /** List of resources that were automatically discovered as relevant to the security solution. */ + readonly autoDiscoveredResources?: string[]; + /** List of the configuration status for each recommendation type. */ + recommendationsConfiguration?: RecommendationConfigurationProperties[]; + /** Unmasked IP address logging status */ + unmaskedIpLoggingStatus?: UnmaskedIpLoggingStatus; + /** List of additional workspaces */ + additionalWorkspaces?: AdditionalWorkspacesProperties[]; +} + +export function ioTSecuritySolutionPropertiesSerializer(item: IoTSecuritySolutionProperties): any { + return { + workspace: item["workspace"], + displayName: item["displayName"], + status: item["status"], + export: !item["export"] + ? item["export"] + : item["export"].map((p: any) => { + return p; + }), + disabledDataSources: !item["disabledDataSources"] + ? item["disabledDataSources"] + : item["disabledDataSources"].map((p: any) => { + return p; + }), + iotHubs: item["iotHubs"].map((p: any) => { + return p; + }), + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesSerializer(item["userDefinedResources"]), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArraySerializer(item["recommendationsConfiguration"]), + unmaskedIpLoggingStatus: item["unmaskedIpLoggingStatus"], + additionalWorkspaces: !item["additionalWorkspaces"] + ? item["additionalWorkspaces"] + : additionalWorkspacesPropertiesArraySerializer(item["additionalWorkspaces"]), + }; +} + +export function ioTSecuritySolutionPropertiesDeserializer( + item: any, +): IoTSecuritySolutionProperties { + return { + workspace: item["workspace"], + displayName: item["displayName"], + status: item["status"], + export: !item["export"] + ? item["export"] + : item["export"].map((p: any) => { + return p; + }), + disabledDataSources: !item["disabledDataSources"] + ? item["disabledDataSources"] + : item["disabledDataSources"].map((p: any) => { + return p; + }), + iotHubs: item["iotHubs"].map((p: any) => { + return p; + }), + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesDeserializer(item["userDefinedResources"]), + autoDiscoveredResources: !item["autoDiscoveredResources"] + ? item["autoDiscoveredResources"] + : item["autoDiscoveredResources"].map((p: any) => { + return p; + }), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArrayDeserializer( + item["recommendationsConfiguration"], + ), + unmaskedIpLoggingStatus: item["unmaskedIpLoggingStatus"], + additionalWorkspaces: !item["additionalWorkspaces"] + ? item["additionalWorkspaces"] + : additionalWorkspacesPropertiesArrayDeserializer(item["additionalWorkspaces"]), + }; +} + +/** Status of the IoT Security solution. */ +export enum KnownSecuritySolutionStatus { + /** Enabled */ + Enabled = "Enabled", + /** Disabled */ + Disabled = "Disabled", +} + +/** + * Status of the IoT Security solution. \ + * {@link KnownSecuritySolutionStatus} can be used interchangeably with SecuritySolutionStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled**: Enabled \ + * **Disabled**: Disabled + */ +export type SecuritySolutionStatus = string; + +/** Known values of {@link ExportData} that the service accepts. */ +export enum KnownExportData { + /** Agent raw events */ + RawEvents = "RawEvents", +} + +/** Type of ExportData */ +export type ExportData = string; + +/** Known values of {@link DataSource} that the service accepts. */ +export enum KnownDataSource { + /** Devices twin data */ + TwinData = "TwinData", +} + +/** Type of DataSource */ +export type DataSource = string; + +/** Properties of the IoT Security solution's user defined resources. */ +export interface UserDefinedResourcesProperties { + /** Azure Resource Graph query which represents the security solution's user defined resources. Required to start with "where type != "Microsoft.Devices/IotHubs"" */ + query: string | null; + /** List of Azure subscription ids on which the user defined resources query should be executed. */ + querySubscriptions: string[] | null; +} + +export function userDefinedResourcesPropertiesSerializer( + item: UserDefinedResourcesProperties, +): any { + return { + query: item["query"], + querySubscriptions: !item["querySubscriptions"] + ? item["querySubscriptions"] + : item["querySubscriptions"].map((p: any) => { + return p; + }), + }; +} + +export function userDefinedResourcesPropertiesDeserializer( + item: any, +): UserDefinedResourcesProperties { + return { + query: item["query"], + querySubscriptions: !item["querySubscriptions"] + ? item["querySubscriptions"] + : item["querySubscriptions"].map((p1: any) => { + return p1; + }), + }; +} + +export function recommendationConfigurationPropertiesArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return recommendationConfigurationPropertiesSerializer(item); + }); +} + +export function recommendationConfigurationPropertiesArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return recommendationConfigurationPropertiesDeserializer(item); + }); +} + +/** The type of IoT Security recommendation. */ +export interface RecommendationConfigurationProperties { + /** The type of IoT Security recommendation. */ + recommendationType: RecommendationType; + readonly name?: string; + /** Recommendation status. When the recommendation status is disabled recommendations are not generated. */ + status: RecommendationConfigStatus; +} + +export function recommendationConfigurationPropertiesSerializer( + item: RecommendationConfigurationProperties, +): any { + return { recommendationType: item["recommendationType"], status: item["status"] }; +} + +export function recommendationConfigurationPropertiesDeserializer( + item: any, +): RecommendationConfigurationProperties { + return { + recommendationType: item["recommendationType"], + name: item["name"], + status: item["status"], + }; +} + +/** The type of IoT Security recommendation. */ +export enum KnownRecommendationType { + /** Authentication schema used for pull an edge module from an ACR repository does not use Service Principal Authentication. */ + IoTAcrauthentication = "IoT_ACRAuthentication", + /** IoT agent message size capacity is currently underutilized, causing an increase in the number of sent messages. Adjust message intervals for better utilization. */ + IoTAgentSendsUnutilizedMessages = "IoT_AgentSendsUnutilizedMessages", + /** Identified security related system configuration issues. */ + IoTBaseline = "IoT_Baseline", + /** You can optimize Edge Hub memory usage by turning off protocol heads for any protocols not used by Edge modules in your solution. */ + IoTEdgeHubMemOptimize = "IoT_EdgeHubMemOptimize", + /** Logging is disabled for this edge module. */ + IoTEdgeLoggingOptions = "IoT_EdgeLoggingOptions", + /** A minority within a device security group has inconsistent Edge Module settings with the rest of their group. */ + IoTInconsistentModuleSettings = "IoT_InconsistentModuleSettings", + /** Install the Azure Security of Things Agent. */ + IoTInstallAgent = "IoT_InstallAgent", + /** IP Filter Configuration should have rules defined for allowed traffic and should deny all other traffic by default. */ + IoTIpfilterDenyAll = "IoT_IPFilter_DenyAll", + /** An Allow IP Filter rules source IP range is too large. Overly permissive rules might expose your IoT hub to malicious intenders. */ + IoTIpfilterPermissiveRule = "IoT_IPFilter_PermissiveRule", + /** A listening endpoint was found on the device. */ + IoTOpenPorts = "IoT_OpenPorts", + /** An Allowed firewall policy was found (INPUT/OUTPUT). The policy should Deny all traffic by default and define rules to allow necessary communication to/from the device. */ + IoTPermissiveFirewallPolicy = "IoT_PermissiveFirewallPolicy", + /** A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. */ + IoTPermissiveInputFirewallRules = "IoT_PermissiveInputFirewallRules", + /** A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. */ + IoTPermissiveOutputFirewallRules = "IoT_PermissiveOutputFirewallRules", + /** Edge module is configured to run in privileged mode, with extensive Linux capabilities or with host-level network access (send/receive data to host machine). */ + IoTPrivilegedDockerOptions = "IoT_PrivilegedDockerOptions", + /** Same authentication credentials to the IoT Hub used by multiple devices. This could indicate an illegitimate device impersonating a legitimate device. It also exposes the risk of device impersonation by an attacker. */ + IoTSharedCredentials = "IoT_SharedCredentials", + /** Insecure TLS configurations detected. Immediate upgrade recommended. */ + IoTVulnerableTLSCipherSuite = "IoT_VulnerableTLSCipherSuite", +} + +/** + * The type of IoT Security recommendation. \ + * {@link KnownRecommendationType} can be used interchangeably with RecommendationType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **IoT_ACRAuthentication**: Authentication schema used for pull an edge module from an ACR repository does not use Service Principal Authentication. \ + * **IoT_AgentSendsUnutilizedMessages**: IoT agent message size capacity is currently underutilized, causing an increase in the number of sent messages. Adjust message intervals for better utilization. \ + * **IoT_Baseline**: Identified security related system configuration issues. \ + * **IoT_EdgeHubMemOptimize**: You can optimize Edge Hub memory usage by turning off protocol heads for any protocols not used by Edge modules in your solution. \ + * **IoT_EdgeLoggingOptions**: Logging is disabled for this edge module. \ + * **IoT_InconsistentModuleSettings**: A minority within a device security group has inconsistent Edge Module settings with the rest of their group. \ + * **IoT_InstallAgent**: Install the Azure Security of Things Agent. \ + * **IoT_IPFilter_DenyAll**: IP Filter Configuration should have rules defined for allowed traffic and should deny all other traffic by default. \ + * **IoT_IPFilter_PermissiveRule**: An Allow IP Filter rules source IP range is too large. Overly permissive rules might expose your IoT hub to malicious intenders. \ + * **IoT_OpenPorts**: A listening endpoint was found on the device. \ + * **IoT_PermissiveFirewallPolicy**: An Allowed firewall policy was found (INPUT\/OUTPUT). The policy should Deny all traffic by default and define rules to allow necessary communication to\/from the device. \ + * **IoT_PermissiveInputFirewallRules**: A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. \ + * **IoT_PermissiveOutputFirewallRules**: A rule in the firewall has been found that contains a permissive pattern for a wide range of IP addresses or Ports. \ + * **IoT_PrivilegedDockerOptions**: Edge module is configured to run in privileged mode, with extensive Linux capabilities or with host-level network access (send\/receive data to host machine). \ + * **IoT_SharedCredentials**: Same authentication credentials to the IoT Hub used by multiple devices. This could indicate an illegitimate device impersonating a legitimate device. It also exposes the risk of device impersonation by an attacker. \ + * **IoT_VulnerableTLSCipherSuite**: Insecure TLS configurations detected. Immediate upgrade recommended. + */ +export type RecommendationType = string; + +/** Recommendation status. When the recommendation status is disabled recommendations are not generated. */ +export enum KnownRecommendationConfigStatus { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", +} + +/** + * Recommendation status. When the recommendation status is disabled recommendations are not generated. \ + * {@link KnownRecommendationConfigStatus} can be used interchangeably with RecommendationConfigStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Disabled \ + * **Enabled**: Enabled + */ +export type RecommendationConfigStatus = string; + +/** Unmasked IP address logging status */ +export enum KnownUnmaskedIpLoggingStatus { + /** Unmasked IP logging is disabled */ + Disabled = "Disabled", + /** Unmasked IP logging is enabled */ + Enabled = "Enabled", +} + +/** + * Unmasked IP address logging status \ + * {@link KnownUnmaskedIpLoggingStatus} can be used interchangeably with UnmaskedIpLoggingStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Unmasked IP logging is disabled \ + * **Enabled**: Unmasked IP logging is enabled + */ +export type UnmaskedIpLoggingStatus = string; + +export function additionalWorkspacesPropertiesArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return additionalWorkspacesPropertiesSerializer(item); + }); +} + +export function additionalWorkspacesPropertiesArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return additionalWorkspacesPropertiesDeserializer(item); + }); +} + +/** Properties of the additional workspaces. */ +export interface AdditionalWorkspacesProperties { + /** Workspace resource id */ + workspace?: string; + /** Workspace type. */ + type?: AdditionalWorkspaceType; + /** List of data types sent to workspace */ + dataTypes?: AdditionalWorkspaceDataType[]; +} + +export function additionalWorkspacesPropertiesSerializer( + item: AdditionalWorkspacesProperties, +): any { + return { + workspace: item["workspace"], + type: item["type"], + dataTypes: !item["dataTypes"] + ? item["dataTypes"] + : item["dataTypes"].map((p: any) => { + return p; + }), + }; +} + +export function additionalWorkspacesPropertiesDeserializer( + item: any, +): AdditionalWorkspacesProperties { + return { + workspace: item["workspace"], + type: item["type"], + dataTypes: !item["dataTypes"] + ? item["dataTypes"] + : item["dataTypes"].map((p: any) => { + return p; + }), + }; +} + +/** Workspace type. */ +export enum KnownAdditionalWorkspaceType { + /** Sentinel */ + Sentinel = "Sentinel", +} + +/** + * Workspace type. \ + * {@link KnownAdditionalWorkspaceType} can be used interchangeably with AdditionalWorkspaceType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Sentinel**: Sentinel + */ +export type AdditionalWorkspaceType = string; + +/** Data types sent to workspace. */ +export enum KnownAdditionalWorkspaceDataType { + /** Alerts */ + Alerts = "Alerts", + /** RawEvents */ + RawEvents = "RawEvents", +} + +/** + * Data types sent to workspace. \ + * {@link KnownAdditionalWorkspaceDataType} can be used interchangeably with AdditionalWorkspaceDataType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Alerts**: Alerts \ + * **RawEvents**: RawEvents + */ +export type AdditionalWorkspaceDataType = string; + +/** model interface UpdateIotSecuritySolutionData */ +export interface UpdateIotSecuritySolutionData extends TagsResource { + /** Properties of the IoT Security solution's user defined resources. */ + userDefinedResources?: UserDefinedResourcesProperties; + /** List of the configuration status for each recommendation type. */ + recommendationsConfiguration?: RecommendationConfigurationProperties[]; +} + +export function updateIotSecuritySolutionDataSerializer(item: UpdateIotSecuritySolutionData): any { + return { + tags: item["tags"], + properties: areAllPropsUndefined(item, ["userDefinedResources", "recommendationsConfiguration"]) + ? undefined + : _updateIotSecuritySolutionDataPropertiesSerializer(item), + }; +} + +/** Update Security Solution setting data */ +export interface UpdateIoTSecuritySolutionProperties { + /** Properties of the IoT Security solution's user defined resources. */ + userDefinedResources?: UserDefinedResourcesProperties; + /** List of the configuration status for each recommendation type. */ + recommendationsConfiguration?: RecommendationConfigurationProperties[]; +} + +export function updateIoTSecuritySolutionPropertiesSerializer( + item: UpdateIoTSecuritySolutionProperties, +): any { + return { + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesSerializer(item["userDefinedResources"]), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArraySerializer(item["recommendationsConfiguration"]), + }; +} + +/** A container holding only the Tags for a resource, allowing the user to update the tags. */ +export interface TagsResource { + /** Resource tags */ + tags?: Record; +} + +export function tagsResourceSerializer(item: TagsResource): any { + return { tags: item["tags"] }; +} + +/** List of IoT Security solutions. */ +export interface _IoTSecuritySolutionsList { + /** The IoTSecuritySolutionModel items on this page */ + value: IoTSecuritySolutionModel[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _ioTSecuritySolutionsListDeserializer(item: any): _IoTSecuritySolutionsList { + return { + value: ioTSecuritySolutionModelArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function ioTSecuritySolutionModelArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecuritySolutionModelSerializer(item); + }); +} + +export function ioTSecuritySolutionModelArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecuritySolutionModelDeserializer(item); + }); +} + +/** Security Solution Aggregated Alert information */ +export interface IoTSecurityAggregatedAlert extends ProxyResource { + /** Resource tags */ + tags?: Record; + /** Name of the alert type. */ + readonly alertType?: string; + /** Display name of the alert type. */ + readonly alertDisplayName?: string; + /** Date of detection. */ + readonly aggregatedDateUtc?: Date; + /** Name of the organization that raised the alert. */ + readonly vendorName?: string; + /** Assessed alert severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Recommended steps for remediation. */ + readonly remediationSteps?: string; + /** Description of the suspected vulnerability and meaning. */ + readonly description?: string; + /** Number of alerts occurrences within the aggregated time window. */ + readonly count?: number; + /** Azure resource ID of the resource that received the alerts. */ + readonly effectedResourceType?: string; + /** The type of the alerted resource (Azure, Non-Azure). */ + readonly systemSource?: string; + /** IoT Security solution alert response. */ + readonly actionTaken?: string; + /** Log analytics query for getting the list of affected devices/alerts. */ + readonly logAnalyticsQuery?: string; + /** 10 devices with the highest number of occurrences of this alert type, on this day. */ + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; +} + +export function ioTSecurityAggregatedAlertDeserializer(item: any): IoTSecurityAggregatedAlert { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _ioTSecurityAggregatedAlertPropertiesDeserializer(item["properties"])), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + }; +} + +/** IoT Security solution aggregated alert details. */ +export interface IoTSecurityAggregatedAlertProperties { + /** Name of the alert type. */ + readonly alertType?: string; + /** Display name of the alert type. */ + readonly alertDisplayName?: string; + /** Date of detection. */ + readonly aggregatedDateUtc?: Date; + /** Name of the organization that raised the alert. */ + readonly vendorName?: string; + /** Assessed alert severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Recommended steps for remediation. */ + readonly remediationSteps?: string; + /** Description of the suspected vulnerability and meaning. */ + readonly description?: string; + /** Number of alerts occurrences within the aggregated time window. */ + readonly count?: number; + /** Azure resource ID of the resource that received the alerts. */ + readonly effectedResourceType?: string; + /** The type of the alerted resource (Azure, Non-Azure). */ + readonly systemSource?: string; + /** IoT Security solution alert response. */ + readonly actionTaken?: string; + /** Log analytics query for getting the list of affected devices/alerts. */ + readonly logAnalyticsQuery?: string; + /** 10 devices with the highest number of occurrences of this alert type, on this day. */ + readonly topDevicesList?: IoTSecurityAggregatedAlertPropertiesTopDevicesListItem[]; +} + +export function ioTSecurityAggregatedAlertPropertiesDeserializer( + item: any, +): IoTSecurityAggregatedAlertProperties { + return { + alertType: item["alertType"], + alertDisplayName: item["alertDisplayName"], + aggregatedDateUtc: !item["aggregatedDateUtc"] + ? item["aggregatedDateUtc"] + : new Date(item["aggregatedDateUtc"]), + vendorName: item["vendorName"], + reportedSeverity: item["reportedSeverity"], + remediationSteps: item["remediationSteps"], + description: item["description"], + count: item["count"], + effectedResourceType: item["effectedResourceType"], + systemSource: item["systemSource"], + actionTaken: item["actionTaken"], + logAnalyticsQuery: item["logAnalyticsQuery"], + topDevicesList: !item["topDevicesList"] + ? item["topDevicesList"] + : ioTSecurityAggregatedAlertPropertiesTopDevicesListItemArrayDeserializer( + item["topDevicesList"], + ), + }; +} + +export function ioTSecurityAggregatedAlertPropertiesTopDevicesListItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityAggregatedAlertPropertiesTopDevicesListItemDeserializer(item); + }); +} + +/** model interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem */ +export interface IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { + /** Name of the device. */ + readonly deviceId?: string; + /** Number of alerts raised for this device. */ + readonly alertsCount?: number; + /** Most recent time this alert was raised for this device, on this day. */ + readonly lastOccurrence?: string; +} + +export function ioTSecurityAggregatedAlertPropertiesTopDevicesListItemDeserializer( + item: any, +): IoTSecurityAggregatedAlertPropertiesTopDevicesListItem { + return { + deviceId: item["deviceId"], + alertsCount: item["alertsCount"], + lastOccurrence: item["lastOccurrence"], + }; +} + +/** List of IoT Security solution aggregated alert data. */ +export interface _IoTSecurityAggregatedAlertList { + /** The IoTSecurityAggregatedAlert items on this page */ + value: IoTSecurityAggregatedAlert[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _ioTSecurityAggregatedAlertListDeserializer( + item: any, +): _IoTSecurityAggregatedAlertList { + return { + value: ioTSecurityAggregatedAlertArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function ioTSecurityAggregatedAlertArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityAggregatedAlertDeserializer(item); + }); +} + +/** IoT Security solution recommendation information. */ +export interface IoTSecurityAggregatedRecommendation extends ProxyResource { + /** Resource tags */ + tags?: Record; + /** Name of the recommendation. */ + recommendationName?: string; + /** Display name of the recommendation type. */ + readonly recommendationDisplayName?: string; + /** Description of the suspected vulnerability and meaning. */ + readonly description?: string; + /** Recommendation-type GUID. */ + readonly recommendationTypeId?: string; + /** Name of the organization that made the recommendation. */ + readonly detectedBy?: string; + /** Recommended steps for remediation */ + readonly remediationSteps?: string; + /** Assessed recommendation severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Number of healthy devices within the IoT Security solution. */ + readonly healthyDevices?: number; + /** Number of unhealthy devices within the IoT Security solution. */ + readonly unhealthyDeviceCount?: number; + /** Log analytics query for getting the list of affected devices/alerts. */ + readonly logAnalyticsQuery?: string; +} + +export function ioTSecurityAggregatedRecommendationDeserializer( + item: any, +): IoTSecurityAggregatedRecommendation { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _ioTSecurityAggregatedRecommendationPropertiesDeserializer(item["properties"])), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + }; +} + +/** IoT Security solution aggregated recommendation information */ +export interface IoTSecurityAggregatedRecommendationProperties { + /** Name of the recommendation. */ + recommendationName?: string; + /** Display name of the recommendation type. */ + readonly recommendationDisplayName?: string; + /** Description of the suspected vulnerability and meaning. */ + readonly description?: string; + /** Recommendation-type GUID. */ + readonly recommendationTypeId?: string; + /** Name of the organization that made the recommendation. */ + readonly detectedBy?: string; + /** Recommended steps for remediation */ + readonly remediationSteps?: string; + /** Assessed recommendation severity. */ + readonly reportedSeverity?: ReportedSeverity; + /** Number of healthy devices within the IoT Security solution. */ + readonly healthyDevices?: number; + /** Number of unhealthy devices within the IoT Security solution. */ + readonly unhealthyDeviceCount?: number; + /** Log analytics query for getting the list of affected devices/alerts. */ + readonly logAnalyticsQuery?: string; +} + +export function ioTSecurityAggregatedRecommendationPropertiesDeserializer( + item: any, +): IoTSecurityAggregatedRecommendationProperties { + return { + recommendationName: item["recommendationName"], + recommendationDisplayName: item["recommendationDisplayName"], + description: item["description"], + recommendationTypeId: item["recommendationTypeId"], + detectedBy: item["detectedBy"], + remediationSteps: item["remediationSteps"], + reportedSeverity: item["reportedSeverity"], + healthyDevices: item["healthyDevices"], + unhealthyDeviceCount: item["unhealthyDeviceCount"], + logAnalyticsQuery: item["logAnalyticsQuery"], + }; +} + +/** List of IoT Security solution aggregated recommendations. */ +export interface _IoTSecurityAggregatedRecommendationList { + /** The IoTSecurityAggregatedRecommendation items on this page */ + value: IoTSecurityAggregatedRecommendation[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _ioTSecurityAggregatedRecommendationListDeserializer( + item: any, +): _IoTSecurityAggregatedRecommendationList { + return { + value: ioTSecurityAggregatedRecommendationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function ioTSecurityAggregatedRecommendationArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return ioTSecurityAggregatedRecommendationDeserializer(item); + }); +} + +export function _deviceSecurityGroupPropertiesSerializer(item: DeviceSecurityGroup): any { + return { + thresholdRules: !item["thresholdRules"] + ? item["thresholdRules"] + : thresholdCustomAlertRuleUnionArraySerializer(item["thresholdRules"]), + timeWindowRules: !item["timeWindowRules"] + ? item["timeWindowRules"] + : timeWindowCustomAlertRuleArraySerializer(item["timeWindowRules"]), + allowlistRules: !item["allowlistRules"] + ? item["allowlistRules"] + : allowlistCustomAlertRuleArraySerializer(item["allowlistRules"]), + denylistRules: !item["denylistRules"] + ? item["denylistRules"] + : denylistCustomAlertRuleArraySerializer(item["denylistRules"]), + }; +} + +export function _deviceSecurityGroupPropertiesDeserializer(item: any) { + return { + thresholdRules: !item["thresholdRules"] + ? item["thresholdRules"] + : thresholdCustomAlertRuleUnionArrayDeserializer(item["thresholdRules"]), + timeWindowRules: !item["timeWindowRules"] + ? item["timeWindowRules"] + : timeWindowCustomAlertRuleArrayDeserializer(item["timeWindowRules"]), + allowlistRules: !item["allowlistRules"] + ? item["allowlistRules"] + : allowlistCustomAlertRuleArrayDeserializer(item["allowlistRules"]), + denylistRules: !item["denylistRules"] + ? item["denylistRules"] + : denylistCustomAlertRuleArrayDeserializer(item["denylistRules"]), + }; +} + +export function _ioTSecuritySolutionAnalyticsModelPropertiesDeserializer(item: any) { + return { + metrics: !item["metrics"] ? item["metrics"] : ioTSeverityMetricsDeserializer(item["metrics"]), + unhealthyDeviceCount: item["unhealthyDeviceCount"], + devicesMetrics: !item["devicesMetrics"] + ? item["devicesMetrics"] + : ioTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItemArrayDeserializer( + item["devicesMetrics"], + ), + topAlertedDevices: !item["topAlertedDevices"] + ? item["topAlertedDevices"] + : ioTSecurityAlertedDeviceArrayDeserializer(item["topAlertedDevices"]), + mostPrevalentDeviceAlerts: !item["mostPrevalentDeviceAlerts"] + ? item["mostPrevalentDeviceAlerts"] + : ioTSecurityDeviceAlertArrayDeserializer(item["mostPrevalentDeviceAlerts"]), + mostPrevalentDeviceRecommendations: !item["mostPrevalentDeviceRecommendations"] + ? item["mostPrevalentDeviceRecommendations"] + : ioTSecurityDeviceRecommendationArrayDeserializer( + item["mostPrevalentDeviceRecommendations"], + ), + }; +} + +export function _ioTSecuritySolutionModelPropertiesSerializer(item: IoTSecuritySolutionModel): any { + return { + workspace: item["workspace"], + displayName: item["displayName"], + status: item["status"], + export: !item["export"] + ? item["export"] + : item["export"].map((p: any) => { + return p; + }), + disabledDataSources: !item["disabledDataSources"] + ? item["disabledDataSources"] + : item["disabledDataSources"].map((p: any) => { + return p; + }), + iotHubs: !item["iotHubs"] + ? item["iotHubs"] + : item["iotHubs"].map((p: any) => { + return p; + }), + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesSerializer(item["userDefinedResources"]), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArraySerializer(item["recommendationsConfiguration"]), + unmaskedIpLoggingStatus: item["unmaskedIpLoggingStatus"], + additionalWorkspaces: !item["additionalWorkspaces"] + ? item["additionalWorkspaces"] + : additionalWorkspacesPropertiesArraySerializer(item["additionalWorkspaces"]), + }; +} + +export function _ioTSecuritySolutionModelPropertiesDeserializer(item: any) { + return { + workspace: item["workspace"], + displayName: item["displayName"], + status: item["status"], + export: !item["export"] + ? item["export"] + : item["export"].map((p: any) => { + return p; + }), + disabledDataSources: !item["disabledDataSources"] + ? item["disabledDataSources"] + : item["disabledDataSources"].map((p: any) => { + return p; + }), + iotHubs: !item["iotHubs"] + ? item["iotHubs"] + : item["iotHubs"].map((p: any) => { + return p; + }), + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesDeserializer(item["userDefinedResources"]), + autoDiscoveredResources: !item["autoDiscoveredResources"] + ? item["autoDiscoveredResources"] + : item["autoDiscoveredResources"].map((p: any) => { + return p; + }), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArrayDeserializer( + item["recommendationsConfiguration"], + ), + unmaskedIpLoggingStatus: item["unmaskedIpLoggingStatus"], + additionalWorkspaces: !item["additionalWorkspaces"] + ? item["additionalWorkspaces"] + : additionalWorkspacesPropertiesArrayDeserializer(item["additionalWorkspaces"]), + }; +} + +export function _updateIotSecuritySolutionDataPropertiesSerializer( + item: UpdateIotSecuritySolutionData, +): any { + return { + userDefinedResources: !item["userDefinedResources"] + ? item["userDefinedResources"] + : userDefinedResourcesPropertiesSerializer(item["userDefinedResources"]), + recommendationsConfiguration: !item["recommendationsConfiguration"] + ? item["recommendationsConfiguration"] + : recommendationConfigurationPropertiesArraySerializer(item["recommendationsConfiguration"]), + }; +} + +export function _ioTSecurityAggregatedAlertPropertiesDeserializer(item: any) { + return { + alertType: item["alertType"], + alertDisplayName: item["alertDisplayName"], + aggregatedDateUtc: !item["aggregatedDateUtc"] + ? item["aggregatedDateUtc"] + : new Date(item["aggregatedDateUtc"]), + vendorName: item["vendorName"], + reportedSeverity: item["reportedSeverity"], + remediationSteps: item["remediationSteps"], + description: item["description"], + count: item["count"], + effectedResourceType: item["effectedResourceType"], + systemSource: item["systemSource"], + actionTaken: item["actionTaken"], + logAnalyticsQuery: item["logAnalyticsQuery"], + topDevicesList: !item["topDevicesList"] + ? item["topDevicesList"] + : ioTSecurityAggregatedAlertPropertiesTopDevicesListItemArrayDeserializer( + item["topDevicesList"], + ), + }; +} + +export function _ioTSecurityAggregatedRecommendationPropertiesDeserializer(item: any) { + return { + recommendationName: item["recommendationName"], + recommendationDisplayName: item["recommendationDisplayName"], + description: item["description"], + recommendationTypeId: item["recommendationTypeId"], + detectedBy: item["detectedBy"], + remediationSteps: item["remediationSteps"], + reportedSeverity: item["reportedSeverity"], + healthyDevices: item["healthyDevices"], + unhealthyDeviceCount: item["unhealthyDeviceCount"], + logAnalyticsQuery: item["logAnalyticsQuery"], + }; +} diff --git a/sdk/security/arm-security/src/models/legacySettingsAPI/index.ts b/sdk/security/arm-security/src/models/legacySettingsAPI/index.ts new file mode 100644 index 000000000000..e652af78192b --- /dev/null +++ b/sdk/security/arm-security/src/models/legacySettingsAPI/index.ts @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + AutoProvisioningSetting, + AutoProvisioningSettingProperties, + AutoProvision, + Compliance, + ComplianceProperties, + ComplianceSegment, + InformationProtectionPolicy, + InformationProtectionPolicyProperties, + SensitivityLabel, + Rank, + InformationType, + InformationProtectionKeyword, + InformationProtectionPolicyName, + WorkspaceSetting, + WorkspaceSettingProperties, +} from "./models.js"; +export { KnownAutoProvision, KnownInformationProtectionPolicyName } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/legacySettingsAPI/models.ts b/sdk/security/arm-security/src/models/legacySettingsAPI/models.ts new file mode 100644 index 000000000000..e75ef242162a --- /dev/null +++ b/sdk/security/arm-security/src/models/legacySettingsAPI/models.ts @@ -0,0 +1,616 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ProxyResource, systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Auto provisioning setting */ +export interface AutoProvisioningSetting extends ProxyResource { + /** Describes what kind of security agent provisioning action to take */ + autoProvision?: AutoProvision; +} + +export function autoProvisioningSettingSerializer(item: AutoProvisioningSetting): any { + return { + properties: areAllPropsUndefined(item, ["autoProvision"]) + ? undefined + : _autoProvisioningSettingPropertiesSerializer(item), + }; +} + +export function autoProvisioningSettingDeserializer(item: any): AutoProvisioningSetting { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _autoProvisioningSettingPropertiesDeserializer(item["properties"])), + }; +} + +/** describes properties of an auto provisioning setting */ +export interface AutoProvisioningSettingProperties { + /** Describes what kind of security agent provisioning action to take */ + autoProvision: AutoProvision; +} + +export function autoProvisioningSettingPropertiesSerializer( + item: AutoProvisioningSettingProperties, +): any { + return { autoProvision: item["autoProvision"] }; +} + +export function autoProvisioningSettingPropertiesDeserializer( + item: any, +): AutoProvisioningSettingProperties { + return { + autoProvision: item["autoProvision"], + }; +} + +/** Describes what kind of security agent provisioning action to take */ +export enum KnownAutoProvision { + /** Install missing security agent on VMs automatically */ + On = "On", + /** Do not install security agent on the VMs automatically */ + Off = "Off", +} + +/** + * Describes what kind of security agent provisioning action to take \ + * {@link KnownAutoProvision} can be used interchangeably with AutoProvision, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **On**: Install missing security agent on VMs automatically \ + * **Off**: Do not install security agent on the VMs automatically + */ +export type AutoProvision = string; + +/** List of all the auto provisioning settings response */ +export interface _AutoProvisioningSettingList { + /** List of all the auto provisioning settings */ + value?: AutoProvisioningSetting[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _autoProvisioningSettingListDeserializer(item: any): _AutoProvisioningSettingList { + return { + value: !item["value"] ? item["value"] : autoProvisioningSettingArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function autoProvisioningSettingArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return autoProvisioningSettingSerializer(item); + }); +} + +export function autoProvisioningSettingArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return autoProvisioningSettingDeserializer(item); + }); +} + +/** Compliance of a scope */ +export interface Compliance extends ExtensionResource { + /** The timestamp when the Compliance calculation was conducted. */ + readonly assessmentTimestampUtcDate?: Date; + /** The resource count of the given subscription for which the Compliance calculation was conducted (needed for Management Group Compliance calculation). */ + readonly resourceCount?: number; + /** An array of segment, which is the actually the compliance assessment. */ + readonly assessmentResult?: ComplianceSegment[]; +} + +export function complianceDeserializer(item: any): Compliance { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _compliancePropertiesDeserializer(item["properties"])), + }; +} + +/** The Compliance score (percentage) of a Subscription is a sum of all Resources' Compliances under the given Subscription. A Resource Compliance is defined as the compliant ('healthy') Policy Definitions out of all Policy Definitions applicable to a given resource. */ +export interface ComplianceProperties { + /** The timestamp when the Compliance calculation was conducted. */ + readonly assessmentTimestampUtcDate?: Date; + /** The resource count of the given subscription for which the Compliance calculation was conducted (needed for Management Group Compliance calculation). */ + readonly resourceCount?: number; + /** An array of segment, which is the actually the compliance assessment. */ + readonly assessmentResult?: ComplianceSegment[]; +} + +export function compliancePropertiesDeserializer(item: any): ComplianceProperties { + return { + assessmentTimestampUtcDate: !item["assessmentTimestampUtcDate"] + ? item["assessmentTimestampUtcDate"] + : new Date(item["assessmentTimestampUtcDate"]), + resourceCount: item["resourceCount"], + assessmentResult: !item["assessmentResult"] + ? item["assessmentResult"] + : complianceSegmentArrayDeserializer(item["assessmentResult"]), + }; +} + +export function complianceSegmentArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return complianceSegmentDeserializer(item); + }); +} + +/** A segment of a compliance assessment. */ +export interface ComplianceSegment { + /** The segment type, e.g. compliant, non-compliance, insufficient coverage, N/A, etc. */ + readonly segmentType?: string; + /** The size (%) of the segment. */ + readonly percentage?: number; +} + +export function complianceSegmentDeserializer(item: any): ComplianceSegment { + return { + segmentType: item["segmentType"], + percentage: item["percentage"], + }; +} + +/** List of Compliance objects response */ +export interface _ComplianceList { + /** List of Compliance objects */ + readonly value?: Compliance[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _complianceListDeserializer(item: any): _ComplianceList { + return { + value: !item["value"] ? item["value"] : complianceArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function complianceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return complianceDeserializer(item); + }); +} + +/** Information protection policy. */ +export interface InformationProtectionPolicy extends ExtensionResource { + /** Describes the last UTC time the policy was modified. */ + readonly lastModifiedUtc?: Date; + /** Describes the version of the policy. */ + readonly version?: string; + /** Dictionary of sensitivity labels. */ + labels?: Record; + /** The sensitivity information types. */ + informationTypes?: Record; +} + +export function informationProtectionPolicySerializer(item: InformationProtectionPolicy): any { + return { + properties: areAllPropsUndefined(item, ["labels", "informationTypes"]) + ? undefined + : _informationProtectionPolicyPropertiesSerializer(item), + }; +} + +export function informationProtectionPolicyDeserializer(item: any): InformationProtectionPolicy { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _informationProtectionPolicyPropertiesDeserializer(item["properties"])), + }; +} + +/** describes properties of an information protection policy. */ +export interface InformationProtectionPolicyProperties { + /** Describes the last UTC time the policy was modified. */ + readonly lastModifiedUtc?: Date; + /** Describes the version of the policy. */ + readonly version?: string; + /** Dictionary of sensitivity labels. */ + labels?: Record; + /** The sensitivity information types. */ + informationTypes?: Record; +} + +export function informationProtectionPolicyPropertiesSerializer( + item: InformationProtectionPolicyProperties, +): any { + return { + labels: !item["labels"] ? item["labels"] : sensitivityLabelRecordSerializer(item["labels"]), + informationTypes: !item["informationTypes"] + ? item["informationTypes"] + : informationTypeRecordSerializer(item["informationTypes"]), + }; +} + +export function informationProtectionPolicyPropertiesDeserializer( + item: any, +): InformationProtectionPolicyProperties { + return { + lastModifiedUtc: !item["lastModifiedUtc"] + ? item["lastModifiedUtc"] + : new Date(item["lastModifiedUtc"]), + version: item["version"], + labels: !item["labels"] ? item["labels"] : sensitivityLabelRecordDeserializer(item["labels"]), + informationTypes: !item["informationTypes"] + ? item["informationTypes"] + : informationTypeRecordDeserializer(item["informationTypes"]), + }; +} + +export function sensitivityLabelRecordSerializer( + item: Record, +): Record { + const result: Record = {}; + Object.keys(item).map((key) => { + result[key] = !item[key] ? item[key] : sensitivityLabelSerializer(item[key]); + }); + return result; +} + +export function sensitivityLabelRecordDeserializer( + item: Record, +): Record { + const result: Record = {}; + Object.keys(item).map((key) => { + result[key] = !item[key] ? item[key] : sensitivityLabelDeserializer(item[key]); + }); + return result; +} + +/** 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. */ + rank?: Rank; + /** The order of the sensitivity label. */ + order?: number; + /** Indicates whether the label is enabled or not. */ + enabled?: boolean; +} + +export function sensitivityLabelSerializer(item: SensitivityLabel): any { + return { + displayName: item["displayName"], + description: item["description"], + rank: item["rank"], + order: item["order"], + enabled: item["enabled"], + }; +} + +export function sensitivityLabelDeserializer(item: any): SensitivityLabel { + return { + displayName: item["displayName"], + description: item["description"], + rank: item["rank"], + order: item["order"], + enabled: item["enabled"], + }; +} + +/** The rank of the sensitivity label. */ +export type Rank = "None" | "Low" | "Medium" | "High" | "Critical"; + +export function informationTypeRecordSerializer( + item: Record, +): Record { + const result: Record = {}; + Object.keys(item).map((key) => { + result[key] = !item[key] ? item[key] : informationTypeSerializer(item[key]); + }); + return result; +} + +export function informationTypeRecordDeserializer( + item: Record, +): Record { + const result: Record = {}; + Object.keys(item).map((key) => { + result[key] = !item[key] ? item[key] : informationTypeDeserializer(item[key]); + }); + return result; +} + +/** 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[]; +} + +export function informationTypeSerializer(item: InformationType): any { + return { + displayName: item["displayName"], + description: item["description"], + order: item["order"], + recommendedLabelId: item["recommendedLabelId"], + enabled: item["enabled"], + custom: item["custom"], + keywords: !item["keywords"] + ? item["keywords"] + : informationProtectionKeywordArraySerializer(item["keywords"]), + }; +} + +export function informationTypeDeserializer(item: any): InformationType { + return { + displayName: item["displayName"], + description: item["description"], + order: item["order"], + recommendedLabelId: item["recommendedLabelId"], + enabled: item["enabled"], + custom: item["custom"], + keywords: !item["keywords"] + ? item["keywords"] + : informationProtectionKeywordArrayDeserializer(item["keywords"]), + }; +} + +export function informationProtectionKeywordArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return informationProtectionKeywordSerializer(item); + }); +} + +export function informationProtectionKeywordArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return informationProtectionKeywordDeserializer(item); + }); +} + +/** 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; +} + +export function informationProtectionKeywordSerializer(item: InformationProtectionKeyword): any { + return { + pattern: item["pattern"], + custom: item["custom"], + canBeNumeric: item["canBeNumeric"], + excluded: item["excluded"], + }; +} + +export function informationProtectionKeywordDeserializer(item: any): InformationProtectionKeyword { + return { + pattern: item["pattern"], + custom: item["custom"], + canBeNumeric: item["canBeNumeric"], + excluded: item["excluded"], + }; +} + +/** Known values of {@link InformationProtectionPolicyName} that the service accepts. */ +export enum KnownInformationProtectionPolicyName { + /** effective */ + Effective = "effective", + /** custom */ + Custom = "custom", +} + +/** Type of InformationProtectionPolicyName */ +export type InformationProtectionPolicyName = string; + +/** Information protection policies response. */ +export interface _InformationProtectionPolicyList { + /** List of information protection policies */ + value?: InformationProtectionPolicy[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _informationProtectionPolicyListDeserializer( + item: any, +): _InformationProtectionPolicyList { + return { + value: !item["value"] + ? item["value"] + : informationProtectionPolicyArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function informationProtectionPolicyArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return informationProtectionPolicySerializer(item); + }); +} + +export function informationProtectionPolicyArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return informationProtectionPolicyDeserializer(item); + }); +} + +/** Configures where to store the OMS agent data for workspaces under a scope */ +export interface WorkspaceSetting extends ProxyResource { + /** 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; +} + +export function workspaceSettingSerializer(item: WorkspaceSetting): any { + return { + properties: areAllPropsUndefined(item, ["workspaceId", "scope"]) + ? undefined + : _workspaceSettingPropertiesSerializer(item), + }; +} + +export function workspaceSettingDeserializer(item: any): WorkspaceSetting { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _workspaceSettingPropertiesDeserializer(item["properties"])), + }; +} + +/** Workspace setting data */ +export interface WorkspaceSettingProperties { + /** 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; +} + +export function workspaceSettingPropertiesSerializer(item: WorkspaceSettingProperties): any { + return { workspaceId: item["workspaceId"], scope: item["scope"] }; +} + +export function workspaceSettingPropertiesDeserializer(item: any): WorkspaceSettingProperties { + return { + workspaceId: item["workspaceId"], + scope: item["scope"], + }; +} + +/** List of workspace settings response */ +export interface _WorkspaceSettingList { + /** The WorkspaceSetting items on this page */ + value: WorkspaceSetting[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _workspaceSettingListDeserializer(item: any): _WorkspaceSettingList { + return { + value: workspaceSettingArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function workspaceSettingArraySerializer(result: Array): any[] { + return result.map((item) => { + return workspaceSettingSerializer(item); + }); +} + +export function workspaceSettingArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return workspaceSettingDeserializer(item); + }); +} + +export function _autoProvisioningSettingPropertiesSerializer(item: AutoProvisioningSetting): any { + return { autoProvision: item["autoProvision"] }; +} + +export function _autoProvisioningSettingPropertiesDeserializer(item: any) { + return { + autoProvision: item["autoProvision"], + }; +} + +export function _compliancePropertiesDeserializer(item: any) { + return { + assessmentTimestampUtcDate: !item["assessmentTimestampUtcDate"] + ? item["assessmentTimestampUtcDate"] + : new Date(item["assessmentTimestampUtcDate"]), + resourceCount: item["resourceCount"], + assessmentResult: !item["assessmentResult"] + ? item["assessmentResult"] + : complianceSegmentArrayDeserializer(item["assessmentResult"]), + }; +} + +export function _informationProtectionPolicyPropertiesSerializer( + item: InformationProtectionPolicy, +): any { + return { + labels: !item["labels"] ? item["labels"] : sensitivityLabelRecordSerializer(item["labels"]), + informationTypes: !item["informationTypes"] + ? item["informationTypes"] + : informationTypeRecordSerializer(item["informationTypes"]), + }; +} + +export function _informationProtectionPolicyPropertiesDeserializer(item: any) { + return { + lastModifiedUtc: !item["lastModifiedUtc"] + ? item["lastModifiedUtc"] + : new Date(item["lastModifiedUtc"]), + version: item["version"], + labels: !item["labels"] ? item["labels"] : sensitivityLabelRecordDeserializer(item["labels"]), + informationTypes: !item["informationTypes"] + ? item["informationTypes"] + : informationTypeRecordDeserializer(item["informationTypes"]), + }; +} + +export function _workspaceSettingPropertiesSerializer(item: WorkspaceSetting): any { + return { workspaceId: item["workspaceId"], scope: item["scope"] }; +} + +export function _workspaceSettingPropertiesDeserializer(item: any) { + return { + workspaceId: item["workspaceId"], + scope: item["scope"], + }; +} diff --git a/sdk/security/arm-security/src/models/locationsAPI/index.ts b/sdk/security/arm-security/src/models/locationsAPI/index.ts new file mode 100644 index 000000000000..2e2932b20cb9 --- /dev/null +++ b/sdk/security/arm-security/src/models/locationsAPI/index.ts @@ -0,0 +1,4 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { AscLocation } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/locationsAPI/models.ts b/sdk/security/arm-security/src/models/locationsAPI/models.ts new file mode 100644 index 000000000000..512391a58d5b --- /dev/null +++ b/sdk/security/arm-security/src/models/locationsAPI/models.ts @@ -0,0 +1,49 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The ASC location of the subscription is in the "name" field */ +export interface AscLocation extends ProxyResource { + /** An empty set of properties */ + properties?: any; +} + +export function ascLocationDeserializer(item: any): AscLocation { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: item["properties"], + }; +} + +/** List of locations where ASC saves your data */ +export interface _AscLocationList { + /** List of locations */ + readonly value?: AscLocation[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _ascLocationListDeserializer(item: any): _AscLocationList { + return { + value: !item["value"] ? item["value"] : ascLocationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function ascLocationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return ascLocationDeserializer(item); + }); +} diff --git a/sdk/security/arm-security/src/models/mappers.ts b/sdk/security/arm-security/src/models/mappers.ts deleted file mode 100644 index b3a699b668d5..000000000000 --- a/sdk/security/arm-security/src/models/mappers.ts +++ /dev/null @@ -1,13844 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -import * as coreClient from "@azure/core-client"; - -export const AscLocationList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AscLocationList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AscLocation", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Resource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Resource", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CloudError: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CloudError", - modelProperties: { - code: { - serializedName: "error.code", - readOnly: true, - type: { - name: "String", - }, - }, - message: { - serializedName: "error.message", - readOnly: true, - type: { - name: "String", - }, - }, - target: { - serializedName: "error.target", - readOnly: true, - type: { - name: "String", - }, - }, - details: { - serializedName: "error.details", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CloudErrorBody", - }, - }, - }, - }, - additionalInfo: { - serializedName: "error.additionalInfo", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - }, - }, - }, - }, - }, - }, -}; - -export const CloudErrorBody: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CloudErrorBody", - modelProperties: { - code: { - serializedName: "code", - readOnly: true, - type: { - name: "String", - }, - }, - message: { - serializedName: "message", - readOnly: true, - type: { - name: "String", - }, - }, - target: { - serializedName: "target", - readOnly: true, - type: { - name: "String", - }, - }, - details: { - serializedName: "details", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CloudErrorBody", - }, - }, - }, - }, - additionalInfo: { - serializedName: "additionalInfo", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - }, - }, - }, - }, - }, - }, -}; - -export const ErrorAdditionalInfo: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - modelProperties: { - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - info: { - serializedName: "info", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, -}; - -export const OperationList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Operation", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Operation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Operation", - modelProperties: { - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - origin: { - serializedName: "origin", - readOnly: true, - type: { - name: "String", - }, - }, - display: { - serializedName: "display", - type: { - name: "Composite", - className: "OperationDisplay", - }, - }, - }, - }, -}; - -export const OperationDisplay: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationDisplay", - modelProperties: { - provider: { - serializedName: "provider", - readOnly: true, - type: { - name: "String", - }, - }, - resource: { - serializedName: "resource", - readOnly: true, - type: { - name: "String", - }, - }, - operation: { - serializedName: "operation", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityTaskList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityTaskList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityTask", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityTaskParameters: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityTaskParameters", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutoProvisioningSettingList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutoProvisioningSettingList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AutoProvisioningSetting", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ComplianceList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ComplianceList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Compliance", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ComplianceSegment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ComplianceSegment", - modelProperties: { - segmentType: { - serializedName: "segmentType", - readOnly: true, - type: { - name: "String", - }, - }, - percentage: { - serializedName: "percentage", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const SensitivityLabel: coreClient.CompositeMapper = { - 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 InformationType: coreClient.CompositeMapper = { - 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 InformationProtectionKeyword: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "InformationProtectionKeyword", - modelProperties: { - 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 InformationProtectionPolicyList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "InformationProtectionPolicyList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InformationProtectionPolicy", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const WorkspaceSettingList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "WorkspaceSettingList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "WorkspaceSetting", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertsSuppressionRulesList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertsSuppressionRulesList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AlertsSuppressionRule", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SuppressionAlertsScope: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SuppressionAlertsScope", - modelProperties: { - allOf: { - serializedName: "allOf", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ScopeElement", - }, - }, - }, - }, - }, - }, -}; - -export const ScopeElement: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScopeElement", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - field: { - serializedName: "field", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutomationList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Automation", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutomationScope: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationScope", - modelProperties: { - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - scopePath: { - serializedName: "scopePath", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutomationSource: coreClient.CompositeMapper = { - 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 AutomationRuleSet: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationRuleSet", - modelProperties: { - rules: { - serializedName: "rules", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AutomationTriggeringRule", - }, - }, - }, - }, - }, - }, -}; - -export const AutomationTriggeringRule: coreClient.CompositeMapper = { - 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 AutomationAction: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationAction", - uberParent: "AutomationAction", - polymorphicDiscriminator: { - serializedName: "actionType", - clientName: "actionType", - }, - modelProperties: { - actionType: { - serializedName: "actionType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureTrackedResourceLocation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureTrackedResourceLocation", - modelProperties: { - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const KindAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "KindAutoGenerated", - modelProperties: { - kind: { - serializedName: "kind", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ETag: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ETag", - modelProperties: { - etag: { - serializedName: "etag", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Tags: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Tags", - modelProperties: { - tags: { - serializedName: "tags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, -}; - -export const AutomationValidationStatus: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationValidationStatus", - modelProperties: { - isValid: { - serializedName: "isValid", - type: { - name: "Boolean", - }, - }, - message: { - serializedName: "message", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RegulatoryComplianceStandardList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceStandardList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RegulatoryComplianceStandard", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RegulatoryComplianceControlList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceControlList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RegulatoryComplianceControl", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RegulatoryComplianceAssessmentList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceAssessmentList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RegulatoryComplianceAssessment", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecuritySubAssessmentList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySubAssessmentList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecuritySubAssessment", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SubAssessmentStatus: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SubAssessmentStatus", - modelProperties: { - code: { - serializedName: "code", - readOnly: true, - type: { - name: "String", - }, - }, - cause: { - serializedName: "cause", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - readOnly: true, - type: { - name: "String", - }, - }, - severity: { - serializedName: "severity", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ResourceDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ResourceDetails", - uberParent: "ResourceDetails", - polymorphicDiscriminator: { - serializedName: "source", - clientName: "source", - }, - modelProperties: { - source: { - serializedName: "source", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AdditionalData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdditionalData", - uberParent: "AdditionalData", - polymorphicDiscriminator: { - serializedName: "assessedResourceType", - clientName: "assessedResourceType", - }, - modelProperties: { - assessedResourceType: { - serializedName: "assessedResourceType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ConnectorSettingList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ConnectorSettingList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectorSetting", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const HybridComputeSettingsProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "HybridComputeSettingsProperties", - modelProperties: { - hybridComputeProvisioningState: { - serializedName: "hybridComputeProvisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - autoProvision: { - serializedName: "autoProvision", - required: true, - type: { - name: "String", - }, - }, - resourceGroupName: { - serializedName: "resourceGroupName", - type: { - name: "String", - }, - }, - region: { - serializedName: "region", - type: { - name: "String", - }, - }, - proxyServer: { - serializedName: "proxyServer", - type: { - name: "Composite", - className: "ProxyServerProperties", - }, - }, - servicePrincipal: { - serializedName: "servicePrincipal", - type: { - name: "Composite", - className: "ServicePrincipalProperties", - }, - }, - }, - }, -}; - -export const ProxyServerProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ProxyServerProperties", - modelProperties: { - ip: { - serializedName: "ip", - type: { - name: "String", - }, - }, - port: { - serializedName: "port", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ServicePrincipalProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServicePrincipalProperties", - modelProperties: { - applicationId: { - serializedName: "applicationId", - type: { - name: "String", - }, - }, - secret: { - serializedName: "secret", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AuthenticationDetailsProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AuthenticationDetailsProperties", - uberParent: "AuthenticationDetailsProperties", - polymorphicDiscriminator: { - serializedName: "authenticationType", - clientName: "authenticationType", - }, - modelProperties: { - authenticationProvisioningState: { - serializedName: "authenticationProvisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - grantedPermissions: { - serializedName: "grantedPermissions", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - authenticationType: { - serializedName: "authenticationType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityContactList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityContactList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityContact", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const NotificationsSource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "NotificationsSource", - uberParent: "NotificationsSource", - polymorphicDiscriminator: { - serializedName: "sourceType", - clientName: "sourceType", - }, - modelProperties: { - sourceType: { - serializedName: "sourceType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityContactPropertiesNotificationsByRole: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityContactPropertiesNotificationsByRole", - modelProperties: { - state: { - serializedName: "state", - type: { - name: "String", - }, - }, - roles: { - serializedName: "roles", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }; - -export const SoftwaresList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SoftwaresList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Software", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SystemData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SystemData", - modelProperties: { - createdBy: { - serializedName: "createdBy", - type: { - name: "String", - }, - }, - createdByType: { - serializedName: "createdByType", - type: { - name: "String", - }, - }, - createdAt: { - serializedName: "createdAt", - type: { - name: "DateTime", - }, - }, - lastModifiedBy: { - serializedName: "lastModifiedBy", - type: { - name: "String", - }, - }, - lastModifiedByType: { - serializedName: "lastModifiedByType", - type: { - name: "String", - }, - }, - lastModifiedAt: { - serializedName: "lastModifiedAt", - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const CustomAssessmentAutomationsListResult: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "CustomAssessmentAutomationsListResult", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CustomAssessmentAutomation", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const CustomEntityStoreAssignmentRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomEntityStoreAssignmentRequest", - modelProperties: { - principal: { - serializedName: "properties.principal", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CustomEntityStoreAssignmentsListResult: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "CustomEntityStoreAssignmentsListResult", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CustomEntityStoreAssignment", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const MdeOnboardingDataList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MdeOnboardingDataList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "MdeOnboardingData", - }, - }, - }, - }, - }, - }, -}; - -export const GovernanceAssignmentsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceAssignmentsList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GovernanceAssignment", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RemediationEta: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RemediationEta", - modelProperties: { - eta: { - serializedName: "eta", - required: true, - type: { - name: "DateTime", - }, - }, - justification: { - serializedName: "justification", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceEmailNotification: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceEmailNotification", - modelProperties: { - disableManagerEmailNotification: { - serializedName: "disableManagerEmailNotification", - type: { - name: "Boolean", - }, - }, - disableOwnerEmailNotification: { - serializedName: "disableOwnerEmailNotification", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const GovernanceAssignmentAdditionalData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceAssignmentAdditionalData", - modelProperties: { - ticketNumber: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "ticketNumber", - type: { - name: "Number", - }, - }, - ticketLink: { - serializedName: "ticketLink", - type: { - name: "String", - }, - }, - ticketStatus: { - serializedName: "ticketStatus", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceRuleList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRuleList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GovernanceRule", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceRuleOwnerSource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRuleOwnerSource", - modelProperties: { - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - value: { - serializedName: "value", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceRuleEmailNotification: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRuleEmailNotification", - modelProperties: { - disableManagerEmailNotification: { - serializedName: "disableManagerEmailNotification", - type: { - name: "Boolean", - }, - }, - disableOwnerEmailNotification: { - serializedName: "disableOwnerEmailNotification", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const GovernanceRuleMetadata: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRuleMetadata", - modelProperties: { - createdBy: { - serializedName: "createdBy", - readOnly: true, - type: { - name: "String", - }, - }, - createdOn: { - serializedName: "createdOn", - readOnly: true, - type: { - name: "DateTime", - }, - }, - updatedBy: { - serializedName: "updatedBy", - readOnly: true, - type: { - name: "String", - }, - }, - updatedOn: { - serializedName: "updatedOn", - readOnly: true, - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const ExecuteGovernanceRuleParams: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ExecuteGovernanceRuleParams", - modelProperties: { - override: { - serializedName: "override", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const OperationResultAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationResultAutoGenerated", - modelProperties: { - status: { - serializedName: "status", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ApplicationsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApplicationsList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Application", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const OperationStatus: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationStatus", - modelProperties: { - code: { - serializedName: "code", - type: { - name: "String", - }, - }, - message: { - serializedName: "message", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityOperatorList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityOperatorList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityOperator", - }, - }, - }, - }, - }, - }, -}; - -export const Identity: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Identity", - modelProperties: { - principalId: { - serializedName: "principalId", - readOnly: true, - type: { - name: "String", - }, - }, - tenantId: { - serializedName: "tenantId", - readOnly: true, - type: { - name: "String", - }, - }, - type: { - defaultValue: "SystemAssigned", - isConstant: true, - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const RuleResultsInput: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RuleResultsInput", - modelProperties: { - latestScan: { - serializedName: "latestScan", - type: { - name: "Boolean", - }, - }, - results: { - serializedName: "results", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }, - }, -}; - -export const RuleResultsProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RuleResultsProperties", - modelProperties: { - results: { - serializedName: "results", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }, - }, -}; - -export const RulesResults: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RulesResults", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RuleResults", - }, - }, - }, - }, - }, - }, -}; - -export const RulesResultsInput: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RulesResultsInput", - modelProperties: { - latestScan: { - serializedName: "latestScan", - type: { - name: "Boolean", - }, - }, - results: { - serializedName: "results", - type: { - name: "Dictionary", - value: { - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { type: { name: "String" } }, - }, - }, - }, - }, - }, - }, - }, - }, -}; - -export const ScanProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScanProperties", - modelProperties: { - triggerType: { - serializedName: "triggerType", - type: { - name: "String", - }, - }, - state: { - serializedName: "state", - type: { - name: "String", - }, - }, - server: { - serializedName: "server", - type: { - name: "String", - }, - }, - database: { - serializedName: "database", - type: { - name: "String", - }, - }, - sqlVersion: { - serializedName: "sqlVersion", - type: { - name: "String", - }, - }, - startTime: { - serializedName: "startTime", - type: { - name: "DateTime", - }, - }, - endTime: { - serializedName: "endTime", - type: { - name: "DateTime", - }, - }, - highSeverityFailedRulesCount: { - serializedName: "highSeverityFailedRulesCount", - type: { - name: "Number", - }, - }, - mediumSeverityFailedRulesCount: { - serializedName: "mediumSeverityFailedRulesCount", - type: { - name: "Number", - }, - }, - lowSeverityFailedRulesCount: { - serializedName: "lowSeverityFailedRulesCount", - type: { - name: "Number", - }, - }, - totalPassedRulesCount: { - serializedName: "totalPassedRulesCount", - type: { - name: "Number", - }, - }, - totalFailedRulesCount: { - serializedName: "totalFailedRulesCount", - type: { - name: "Number", - }, - }, - totalRulesCount: { - serializedName: "totalRulesCount", - type: { - name: "Number", - }, - }, - isBaselineApplied: { - serializedName: "isBaselineApplied", - type: { - name: "Boolean", - }, - }, - lastScanTime: { - serializedName: "lastScanTime", - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const Scans: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Scans", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Scan", - }, - }, - }, - }, - }, - }, -}; - -export const ScanResultProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScanResultProperties", - modelProperties: { - ruleId: { - serializedName: "ruleId", - type: { - name: "String", - }, - }, - status: { - serializedName: "status", - type: { - name: "String", - }, - }, - isTrimmed: { - serializedName: "isTrimmed", - type: { - name: "Boolean", - }, - }, - queryResults: { - serializedName: "queryResults", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - remediation: { - serializedName: "remediation", - type: { - name: "Composite", - className: "Remediation", - }, - }, - baselineAdjustedResult: { - serializedName: "baselineAdjustedResult", - type: { - name: "Composite", - className: "BaselineAdjustedResult", - }, - }, - ruleMetadata: { - serializedName: "ruleMetadata", - type: { - name: "Composite", - className: "VaRule", - }, - }, - }, - }, -}; - -export const Remediation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Remediation", - modelProperties: { - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - scripts: { - serializedName: "scripts", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - automated: { - serializedName: "automated", - type: { - name: "Boolean", - }, - }, - portalLink: { - serializedName: "portalLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const BaselineAdjustedResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BaselineAdjustedResult", - modelProperties: { - baseline: { - serializedName: "baseline", - type: { - name: "Composite", - className: "Baseline", - }, - }, - status: { - serializedName: "status", - type: { - name: "String", - }, - }, - resultsNotInBaseline: { - serializedName: "resultsNotInBaseline", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - resultsOnlyInBaseline: { - serializedName: "resultsOnlyInBaseline", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }, - }, -}; - -export const Baseline: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Baseline", - modelProperties: { - expectedResults: { - serializedName: "expectedResults", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - updatedTime: { - serializedName: "updatedTime", - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const VaRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "VaRule", - modelProperties: { - ruleId: { - serializedName: "ruleId", - type: { - name: "String", - }, - }, - severity: { - serializedName: "severity", - type: { - name: "String", - }, - }, - category: { - serializedName: "category", - type: { - name: "String", - }, - }, - ruleType: { - serializedName: "ruleType", - type: { - name: "String", - }, - }, - title: { - serializedName: "title", - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - rationale: { - serializedName: "rationale", - type: { - name: "String", - }, - }, - queryCheck: { - serializedName: "queryCheck", - type: { - name: "Composite", - className: "QueryCheck", - }, - }, - benchmarkReferences: { - serializedName: "benchmarkReferences", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "BenchmarkReference", - }, - }, - }, - }, - }, - }, -}; - -export const QueryCheck: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "QueryCheck", - modelProperties: { - query: { - serializedName: "query", - type: { - name: "String", - }, - }, - expectedResult: { - serializedName: "expectedResult", - type: { - name: "Sequence", - element: { - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - columnNames: { - serializedName: "columnNames", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const BenchmarkReference: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BenchmarkReference", - modelProperties: { - benchmark: { - serializedName: "benchmark", - type: { - name: "String", - }, - }, - reference: { - serializedName: "reference", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ScanResults: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScanResults", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ScanResult", - }, - }, - }, - }, - }, - }, -}; - -export const UpdateSensitivitySettingsRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UpdateSensitivitySettingsRequest", - modelProperties: { - sensitiveInfoTypesIds: { - serializedName: "sensitiveInfoTypesIds", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Uuid", - }, - }, - }, - }, - sensitivityThresholdLabelOrder: { - serializedName: "sensitivityThresholdLabelOrder", - type: { - name: "Number", - }, - }, - sensitivityThresholdLabelId: { - serializedName: "sensitivityThresholdLabelId", - type: { - name: "Uuid", - }, - }, - }, - }, -}; - -export const GetSensitivitySettingsResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GetSensitivitySettingsResponse", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "GetSensitivitySettingsResponseProperties", - }, - }, - }, - }, -}; - -export const GetSensitivitySettingsResponseProperties: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "GetSensitivitySettingsResponseProperties", - modelProperties: { - sensitiveInfoTypesIds: { - serializedName: "sensitiveInfoTypesIds", - type: { - name: "Sequence", - element: { - type: { - name: "Uuid", - }, - }, - }, - }, - sensitivityThresholdLabelOrder: { - serializedName: "sensitivityThresholdLabelOrder", - type: { - name: "Number", - }, - }, - sensitivityThresholdLabelId: { - serializedName: "sensitivityThresholdLabelId", - type: { - name: "Uuid", - }, - }, - mipInformation: { - serializedName: "mipInformation", - type: { - name: "Composite", - className: "GetSensitivitySettingsResponsePropertiesMipInformation", - }, - }, - }, - }, - }; - -export const GetSensitivitySettingsResponsePropertiesMipInformation: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "GetSensitivitySettingsResponsePropertiesMipInformation", - modelProperties: { - mipIntegrationStatus: { - serializedName: "mipIntegrationStatus", - type: { - name: "String", - }, - }, - labels: { - serializedName: "labels", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Label", - }, - }, - }, - }, - customInfoTypes: { - serializedName: "customInfoTypes", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "InfoType", - }, - }, - }, - }, - builtInInfoTypes: { - serializedName: "builtInInfoTypes", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "BuiltInInfoType", - }, - }, - }, - }, - }, - }, - }; - -export const Label: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Label", - modelProperties: { - name: { - serializedName: "name", - type: { - name: "String", - }, - }, - id: { - serializedName: "id", - type: { - name: "Uuid", - }, - }, - order: { - serializedName: "order", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const InfoType: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "InfoType", - modelProperties: { - name: { - serializedName: "name", - type: { - name: "String", - }, - }, - id: { - serializedName: "id", - type: { - name: "Uuid", - }, - }, - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const BuiltInInfoType: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BuiltInInfoType", - modelProperties: { - name: { - serializedName: "name", - type: { - name: "String", - }, - }, - id: { - serializedName: "id", - type: { - name: "Uuid", - }, - }, - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GetSensitivitySettingsListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GetSensitivitySettingsListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GetSensitivitySettingsResponse", - }, - }, - }, - }, - }, - }, -}; - -export const HealthReportsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "HealthReportsList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "HealthReport", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ResourceDetailsAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ResourceDetailsAutoGenerated", - modelProperties: { - source: { - serializedName: "source", - type: { - name: "String", - }, - }, - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - connectorId: { - serializedName: "connectorId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const EnvironmentDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EnvironmentDetails", - modelProperties: { - nativeResourceId: { - serializedName: "nativeResourceId", - type: { - name: "String", - }, - }, - environmentHierarchyId: { - serializedName: "environmentHierarchyId", - type: { - name: "String", - }, - }, - organizationalHierarchyId: { - serializedName: "organizationalHierarchyId", - type: { - name: "String", - }, - }, - subscriptionId: { - serializedName: "subscriptionId", - type: { - name: "String", - }, - }, - tenantId: { - serializedName: "tenantId", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const HealthDataClassification: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "HealthDataClassification", - modelProperties: { - component: { - serializedName: "component", - type: { - name: "String", - }, - }, - scenario: { - serializedName: "scenario", - type: { - name: "String", - }, - }, - scope: { - serializedName: "scope", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const StatusAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "StatusAutoGenerated", - modelProperties: { - code: { - serializedName: "code", - type: { - name: "String", - }, - }, - reason: { - serializedName: "reason", - readOnly: true, - type: { - name: "String", - }, - }, - lastScannedDate: { - serializedName: "lastScannedDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - statusChangeDate: { - serializedName: "statusChangeDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - firstEvaluationDate: { - serializedName: "firstEvaluationDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const Issue: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Issue", - modelProperties: { - issueKey: { - serializedName: "issueKey", - required: true, - type: { - name: "String", - }, - }, - issueName: { - serializedName: "issueName", - type: { - name: "String", - }, - }, - securityValues: { - serializedName: "securityValues", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - issueDescription: { - serializedName: "issueDescription", - type: { - name: "String", - }, - }, - remediationSteps: { - serializedName: "remediationSteps", - type: { - name: "String", - }, - }, - remediationScript: { - serializedName: "remediationScript", - type: { - name: "String", - }, - }, - issueAdditionalData: { - serializedName: "issueAdditionalData", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, -}; - -export const ErrorResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ErrorResponse", - modelProperties: { - error: { - serializedName: "error", - type: { - name: "Composite", - className: "ErrorDetail", - }, - }, - }, - }, -}; - -export const ErrorDetail: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ErrorDetail", - modelProperties: { - code: { - serializedName: "code", - readOnly: true, - type: { - name: "String", - }, - }, - message: { - serializedName: "message", - readOnly: true, - type: { - name: "String", - }, - }, - target: { - serializedName: "target", - readOnly: true, - type: { - name: "String", - }, - }, - details: { - serializedName: "details", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorDetail", - }, - }, - }, - }, - additionalInfo: { - serializedName: "additionalInfo", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - }, - }, - }, - }, - }, - }, -}; - -export const AzureDevOpsOrgListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsOrgListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AzureDevOpsOrg", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureDevOpsOrgProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsOrgProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - actionableRemediation: { - serializedName: "actionableRemediation", - type: { - name: "Composite", - className: "ActionableRemediation", - }, - }, - }, - }, -}; - -export const ActionableRemediation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ActionableRemediation", - modelProperties: { - state: { - serializedName: "state", - type: { - name: "String", - }, - }, - categoryConfigurations: { - serializedName: "categoryConfigurations", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CategoryConfiguration", - }, - }, - }, - }, - branchConfiguration: { - serializedName: "branchConfiguration", - type: { - name: "Composite", - className: "TargetBranchConfiguration", - }, - }, - inheritFromParentState: { - serializedName: "inheritFromParentState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CategoryConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CategoryConfiguration", - modelProperties: { - minimumSeverityLevel: { - serializedName: "minimumSeverityLevel", - type: { - name: "String", - }, - }, - category: { - serializedName: "category", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TargetBranchConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TargetBranchConfiguration", - modelProperties: { - branchNames: { - serializedName: "branchNames", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - annotateDefaultBranch: { - serializedName: "annotateDefaultBranch", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ResourceAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ResourceAutoGenerated", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ErrorResponseAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ErrorResponseAutoGenerated", - modelProperties: { - error: { - serializedName: "error", - type: { - name: "Composite", - className: "ErrorDetailAutoGenerated", - }, - }, - }, - }, -}; - -export const ErrorDetailAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ErrorDetailAutoGenerated", - modelProperties: { - code: { - serializedName: "code", - readOnly: true, - type: { - name: "String", - }, - }, - message: { - serializedName: "message", - readOnly: true, - type: { - name: "String", - }, - }, - target: { - serializedName: "target", - readOnly: true, - type: { - name: "String", - }, - }, - details: { - serializedName: "details", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorDetailAutoGenerated", - }, - }, - }, - }, - additionalInfo: { - serializedName: "additionalInfo", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ErrorAdditionalInfo", - }, - }, - }, - }, - }, - }, -}; - -export const AzureDevOpsProjectListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsProjectListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AzureDevOpsProject", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureDevOpsProjectProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsProjectProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - parentOrgName: { - serializedName: "parentOrgName", - type: { - name: "String", - }, - }, - projectId: { - serializedName: "projectId", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - actionableRemediation: { - serializedName: "actionableRemediation", - type: { - name: "Composite", - className: "ActionableRemediation", - }, - }, - }, - }, -}; - -export const AzureDevOpsRepositoryListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsRepositoryListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AzureDevOpsRepository", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureDevOpsRepositoryProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsRepositoryProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - parentOrgName: { - serializedName: "parentOrgName", - type: { - name: "String", - }, - }, - parentProjectName: { - serializedName: "parentProjectName", - type: { - name: "String", - }, - }, - repoId: { - serializedName: "repoId", - readOnly: true, - type: { - name: "String", - }, - }, - repoUrl: { - serializedName: "repoUrl", - readOnly: true, - type: { - name: "String", - }, - }, - visibility: { - serializedName: "visibility", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - actionableRemediation: { - serializedName: "actionableRemediation", - type: { - name: "Composite", - className: "ActionableRemediation", - }, - }, - }, - }, -}; - -export const DevOpsConfigurationListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DevOpsConfigurationListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DevOpsConfiguration", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DevOpsConfigurationProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DevOpsConfigurationProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - authorization: { - serializedName: "authorization", - type: { - name: "Composite", - className: "Authorization", - }, - }, - autoDiscovery: { - serializedName: "autoDiscovery", - type: { - name: "String", - }, - }, - topLevelInventoryList: { - serializedName: "topLevelInventoryList", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const Authorization: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Authorization", - modelProperties: { - code: { - serializedName: "code", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitHubOwnerListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubOwnerListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GitHubOwner", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitHubOwnerProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubOwnerProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - ownerUrl: { - serializedName: "ownerUrl", - readOnly: true, - type: { - name: "String", - }, - }, - gitHubInternalId: { - serializedName: "gitHubInternalId", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitHubRepositoryListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubRepositoryListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GitHubRepository", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitHubRepositoryProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubRepositoryProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - repoId: { - serializedName: "repoId", - readOnly: true, - type: { - name: "String", - }, - }, - repoName: { - serializedName: "repoName", - readOnly: true, - type: { - name: "String", - }, - }, - repoFullName: { - serializedName: "repoFullName", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - repoUrl: { - serializedName: "repoUrl", - readOnly: true, - type: { - name: "String", - }, - }, - parentOwnerName: { - serializedName: "parentOwnerName", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitLabGroupListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabGroupListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GitLabGroup", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitLabGroupProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabGroupProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - fullyQualifiedName: { - serializedName: "fullyQualifiedName", - readOnly: true, - type: { - name: "String", - }, - }, - fullyQualifiedFriendlyName: { - serializedName: "fullyQualifiedFriendlyName", - readOnly: true, - type: { - name: "String", - }, - }, - url: { - serializedName: "url", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitLabProjectListResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabProjectListResponse", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "GitLabProject", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitLabProjectProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabProjectProperties", - modelProperties: { - provisioningStatusMessage: { - serializedName: "provisioningStatusMessage", - readOnly: true, - type: { - name: "String", - }, - }, - provisioningStatusUpdateTimeUtc: { - serializedName: "provisioningStatusUpdateTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - provisioningState: { - serializedName: "provisioningState", - type: { - name: "String", - }, - }, - fullyQualifiedName: { - serializedName: "fullyQualifiedName", - readOnly: true, - type: { - name: "String", - }, - }, - fullyQualifiedFriendlyName: { - serializedName: "fullyQualifiedFriendlyName", - readOnly: true, - type: { - name: "String", - }, - }, - fullyQualifiedParentGroupName: { - serializedName: "fullyQualifiedParentGroupName", - readOnly: true, - type: { - name: "String", - }, - }, - url: { - serializedName: "url", - readOnly: true, - type: { - name: "String", - }, - }, - onboardingState: { - serializedName: "onboardingState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const OperationStatusResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationStatusResult", - modelProperties: { - id: { - serializedName: "id", - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - type: { - name: "String", - }, - }, - status: { - serializedName: "status", - required: true, - type: { - name: "String", - }, - }, - percentComplete: { - constraints: { - InclusiveMaximum: 100, - InclusiveMinimum: 0, - }, - serializedName: "percentComplete", - type: { - name: "Number", - }, - }, - startTime: { - serializedName: "startTime", - type: { - name: "DateTime", - }, - }, - endTime: { - serializedName: "endTime", - type: { - name: "DateTime", - }, - }, - operations: { - serializedName: "operations", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "OperationStatusResult", - }, - }, - }, - }, - error: { - serializedName: "error", - type: { - name: "Composite", - className: "ErrorDetailAutoGenerated", - }, - }, - }, - }, -}; - -export const SecurityConnectorsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityConnectorsList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityConnector", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CloudOffering: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CloudOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: { - serializedName: "offeringType", - clientName: "offeringType", - }, - modelProperties: { - offeringType: { - serializedName: "offeringType", - required: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const EnvironmentData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: { - serializedName: "environmentType", - clientName: "environmentType", - }, - modelProperties: { - environmentType: { - serializedName: "environmentType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ComplianceResultList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ComplianceResultList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ComplianceResult", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DeviceSecurityGroupList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DeviceSecurityGroupList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DeviceSecurityGroup", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CustomAlertRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomAlertRule", - uberParent: "CustomAlertRule", - polymorphicDiscriminator: { - serializedName: "ruleType", - clientName: "ruleType", - }, - modelProperties: { - displayName: { - serializedName: "displayName", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - readOnly: true, - type: { - name: "String", - }, - }, - isEnabled: { - serializedName: "isEnabled", - required: true, - type: { - name: "Boolean", - }, - }, - ruleType: { - serializedName: "ruleType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const IoTSecuritySolutionAnalyticsModelList: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "IoTSecuritySolutionAnalyticsModelList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "IoTSecuritySolutionAnalyticsModel", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const IoTSeverityMetrics: coreClient.CompositeMapper = { - 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: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "IoTSecuritySolutionAnalyticsModelPropertiesDevicesMetricsItem", - modelProperties: { - date: { - serializedName: "date", - type: { - name: "DateTime", - }, - }, - devicesMetrics: { - serializedName: "devicesMetrics", - type: { - name: "Composite", - className: "IoTSeverityMetrics", - }, - }, - }, - }, - }; - -export const IoTSecurityAlertedDevice: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityAlertedDevice", - modelProperties: { - deviceId: { - serializedName: "deviceId", - readOnly: true, - type: { - name: "String", - }, - }, - alertsCount: { - serializedName: "alertsCount", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const IoTSecurityDeviceAlert: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityDeviceAlert", - modelProperties: { - alertDisplayName: { - serializedName: "alertDisplayName", - readOnly: true, - type: { - name: "String", - }, - }, - reportedSeverity: { - serializedName: "reportedSeverity", - readOnly: true, - type: { - name: "String", - }, - }, - alertsCount: { - serializedName: "alertsCount", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const IoTSecurityDeviceRecommendation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityDeviceRecommendation", - modelProperties: { - recommendationDisplayName: { - serializedName: "recommendationDisplayName", - readOnly: true, - type: { - name: "String", - }, - }, - reportedSeverity: { - serializedName: "reportedSeverity", - readOnly: true, - type: { - name: "String", - }, - }, - devicesCount: { - serializedName: "devicesCount", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const IoTSecurityAggregatedAlertList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityAggregatedAlertList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "IoTSecurityAggregatedAlert", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const IoTSecurityAggregatedAlertPropertiesTopDevicesListItem: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", - modelProperties: { - deviceId: { - serializedName: "deviceId", - readOnly: true, - type: { - name: "String", - }, - }, - alertsCount: { - serializedName: "alertsCount", - readOnly: true, - type: { - name: "Number", - }, - }, - lastOccurrence: { - serializedName: "lastOccurrence", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const TagsResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TagsResource", - modelProperties: { - tags: { - serializedName: "tags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, -}; - -export const IoTSecurityAggregatedRecommendationList: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "IoTSecurityAggregatedRecommendationList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "IoTSecurityAggregatedRecommendation", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const IoTSecuritySolutionsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecuritySolutionsList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "IoTSecuritySolutionModel", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const UserDefinedResourcesProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UserDefinedResourcesProperties", - modelProperties: { - query: { - serializedName: "query", - required: true, - nullable: true, - type: { - name: "String", - }, - }, - querySubscriptions: { - serializedName: "querySubscriptions", - required: true, - nullable: true, - type: { - name: "Sequence", - element: { - constraints: { - Pattern: new RegExp( - "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - ), - }, - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const RecommendationConfigurationProperties: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "RecommendationConfigurationProperties", - modelProperties: { - recommendationType: { - serializedName: "recommendationType", - required: true, - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - status: { - defaultValue: "Enabled", - serializedName: "status", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const AdditionalWorkspacesProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdditionalWorkspacesProperties", - modelProperties: { - workspace: { - serializedName: "workspace", - type: { - name: "String", - }, - }, - type: { - defaultValue: "Sentinel", - serializedName: "type", - type: { - name: "String", - }, - }, - dataTypes: { - serializedName: "dataTypes", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const AdaptiveNetworkHardeningsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdaptiveNetworkHardeningsList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AdaptiveNetworkHardening", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Rule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Rule", - modelProperties: { - name: { - serializedName: "name", - type: { - name: "String", - }, - }, - direction: { - serializedName: "direction", - type: { - name: "String", - }, - }, - destinationPort: { - constraints: { - InclusiveMaximum: 65535, - InclusiveMinimum: 0, - }, - 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 EffectiveNetworkSecurityGroups: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "EffectiveNetworkSecurityGroups", - modelProperties: { - networkInterface: { - serializedName: "networkInterface", - type: { - name: "String", - }, - }, - networkSecurityGroups: { - serializedName: "networkSecurityGroups", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const AdaptiveNetworkHardeningEnforceRequest: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "AdaptiveNetworkHardeningEnforceRequest", - modelProperties: { - rules: { - serializedName: "rules", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Rule", - }, - }, - }, - }, - networkSecurityGroups: { - serializedName: "networkSecurityGroups", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }; - -export const AllowedConnectionsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AllowedConnectionsList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AllowedConnectionsResource", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ConnectableResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ConnectableResource", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - inboundConnectedResources: { - serializedName: "inboundConnectedResources", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectedResource", - }, - }, - }, - }, - outboundConnectedResources: { - serializedName: "outboundConnectedResources", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectedResource", - }, - }, - }, - }, - }, - }, -}; - -export const ConnectedResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ConnectedResource", - modelProperties: { - connectedResourceId: { - serializedName: "connectedResourceId", - readOnly: true, - type: { - name: "String", - }, - }, - tcpPorts: { - serializedName: "tcpPorts", - readOnly: true, - type: { - name: "String", - }, - }, - udpPorts: { - serializedName: "udpPorts", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Location: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Location", - modelProperties: { - location: { - serializedName: "location", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AdaptiveApplicationControlGroups: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdaptiveApplicationControlGroups", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AdaptiveApplicationControlGroup", - }, - }, - }, - }, - }, - }, -}; - -export const ProtectionMode: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ProtectionMode", - modelProperties: { - exe: { - serializedName: "exe", - type: { - name: "String", - }, - }, - msi: { - serializedName: "msi", - type: { - name: "String", - }, - }, - script: { - serializedName: "script", - type: { - name: "String", - }, - }, - executable: { - serializedName: "executable", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AdaptiveApplicationControlIssueSummary: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "AdaptiveApplicationControlIssueSummary", - modelProperties: { - issue: { - serializedName: "issue", - type: { - name: "String", - }, - }, - numberOfVms: { - serializedName: "numberOfVms", - type: { - name: "Number", - }, - }, - }, - }, - }; - -export const VmRecommendation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "VmRecommendation", - modelProperties: { - configurationStatus: { - serializedName: "configurationStatus", - type: { - name: "String", - }, - }, - recommendationAction: { - serializedName: "recommendationAction", - type: { - name: "String", - }, - }, - resourceId: { - serializedName: "resourceId", - type: { - name: "String", - }, - }, - enforcementSupport: { - serializedName: "enforcementSupport", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const PathRecommendation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PathRecommendation", - modelProperties: { - path: { - serializedName: "path", - type: { - name: "String", - }, - }, - action: { - serializedName: "action", - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - 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", - }, - }, - configurationStatus: { - serializedName: "configurationStatus", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const PublisherInfo: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PublisherInfo", - modelProperties: { - 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: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "UserRecommendation", - modelProperties: { - username: { - serializedName: "username", - type: { - name: "String", - }, - }, - recommendationAction: { - serializedName: "recommendationAction", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DiscoveredSecuritySolutionList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DiscoveredSecuritySolutionList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "DiscoveredSecuritySolution", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ExternalSecuritySolutionList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ExternalSecuritySolutionList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ExternalSecuritySolution", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ExternalSecuritySolutionKindAutoGenerated: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "ExternalSecuritySolutionKindAutoGenerated", - modelProperties: { - kind: { - serializedName: "kind", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const JitNetworkAccessPoliciesList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessPoliciesList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicy", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const JitNetworkAccessPolicyVirtualMachine: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyVirtualMachine", - modelProperties: { - id: { - serializedName: "id", - required: true, - type: { - name: "String", - }, - }, - ports: { - serializedName: "ports", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPortRule", - }, - }, - }, - }, - publicIpAddress: { - serializedName: "publicIpAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const JitNetworkAccessPortRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessPortRule", - modelProperties: { - number: { - constraints: { - InclusiveMaximum: 65535, - InclusiveMinimum: 0, - }, - serializedName: "number", - required: true, - type: { - name: "Number", - }, - }, - protocol: { - serializedName: "protocol", - required: true, - type: { - name: "String", - }, - }, - allowedSourceAddressPrefix: { - serializedName: "allowedSourceAddressPrefix", - type: { - name: "String", - }, - }, - allowedSourceAddressPrefixes: { - serializedName: "allowedSourceAddressPrefixes", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - maxRequestAccessDuration: { - serializedName: "maxRequestAccessDuration", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const JitNetworkAccessRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessRequest", - modelProperties: { - virtualMachines: { - serializedName: "virtualMachines", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessRequestVirtualMachine", - }, - }, - }, - }, - startTimeUtc: { - serializedName: "startTimeUtc", - required: true, - type: { - name: "DateTime", - }, - }, - requestor: { - serializedName: "requestor", - required: true, - type: { - name: "String", - }, - }, - justification: { - serializedName: "justification", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const JitNetworkAccessRequestVirtualMachine: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "JitNetworkAccessRequestVirtualMachine", - modelProperties: { - id: { - serializedName: "id", - required: true, - type: { - name: "String", - }, - }, - ports: { - serializedName: "ports", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessRequestPort", - }, - }, - }, - }, - }, - }, - }; - -export const JitNetworkAccessRequestPort: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessRequestPort", - modelProperties: { - number: { - constraints: { - InclusiveMaximum: 65535, - InclusiveMinimum: 0, - }, - serializedName: "number", - required: true, - type: { - name: "Number", - }, - }, - allowedSourceAddressPrefix: { - serializedName: "allowedSourceAddressPrefix", - type: { - name: "String", - }, - }, - allowedSourceAddressPrefixes: { - serializedName: "allowedSourceAddressPrefixes", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - endTimeUtc: { - serializedName: "endTimeUtc", - required: true, - type: { - name: "DateTime", - }, - }, - status: { - serializedName: "status", - required: true, - type: { - name: "String", - }, - }, - statusReason: { - serializedName: "statusReason", - required: true, - type: { - name: "String", - }, - }, - mappedPort: { - serializedName: "mappedPort", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const JitNetworkAccessPolicyInitiateRequest: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateRequest", - modelProperties: { - virtualMachines: { - serializedName: "virtualMachines", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateVirtualMachine", - }, - }, - }, - }, - justification: { - serializedName: "justification", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const JitNetworkAccessPolicyInitiateVirtualMachine: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiateVirtualMachine", - modelProperties: { - id: { - serializedName: "id", - required: true, - type: { - name: "String", - }, - }, - ports: { - serializedName: "ports", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiatePort", - }, - }, - }, - }, - }, - }, - }; - -export const JitNetworkAccessPolicyInitiatePort: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyInitiatePort", - modelProperties: { - number: { - constraints: { - InclusiveMaximum: 65535, - InclusiveMinimum: 0, - }, - serializedName: "number", - required: true, - type: { - name: "Number", - }, - }, - allowedSourceAddressPrefix: { - serializedName: "allowedSourceAddressPrefix", - type: { - name: "String", - }, - }, - endTimeUtc: { - serializedName: "endTimeUtc", - required: true, - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const SecureScoresList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoresList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecureScoreItem", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecureScoreControlList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecureScoreControlDetails", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecureScoreControlDefinitionSource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlDefinitionSource", - modelProperties: { - sourceType: { - serializedName: "sourceType", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureResourceLink: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureResourceLink", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecureScoreControlDefinitionList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlDefinitionList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecureScoreControlDefinitionItem", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecuritySolutionList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySolutionList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecuritySolution", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecuritySolutionsReferenceDataList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySolutionsReferenceDataList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecuritySolutionsReferenceData", - }, - }, - }, - }, - }, - }, -}; - -export const ServerVulnerabilityAssessmentsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServerVulnerabilityAssessmentsList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ServerVulnerabilityAssessment", - }, - }, - }, - }, - }, - }, -}; - -export const TopologyList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TopologyList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "TopologyResource", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TopologySingleResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TopologySingleResource", - modelProperties: { - resourceId: { - serializedName: "resourceId", - readOnly: true, - type: { - name: "String", - }, - }, - severity: { - serializedName: "severity", - readOnly: true, - type: { - name: "String", - }, - }, - recommendationsExist: { - serializedName: "recommendationsExist", - readOnly: true, - type: { - name: "Boolean", - }, - }, - networkZones: { - serializedName: "networkZones", - readOnly: true, - type: { - name: "String", - }, - }, - topologyScore: { - serializedName: "topologyScore", - readOnly: true, - type: { - name: "Number", - }, - }, - location: { - serializedName: "location", - readOnly: true, - type: { - name: "String", - }, - }, - parents: { - serializedName: "parents", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "TopologySingleResourceParent", - }, - }, - }, - }, - children: { - serializedName: "children", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "TopologySingleResourceChild", - }, - }, - }, - }, - }, - }, -}; - -export const TopologySingleResourceParent: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TopologySingleResourceParent", - modelProperties: { - resourceId: { - serializedName: "resourceId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TopologySingleResourceChild: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TopologySingleResourceChild", - modelProperties: { - resourceId: { - serializedName: "resourceId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityAssessmentMetadataResponseList: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataResponseList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataResponse", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const SecurityAssessmentMetadataPropertiesResponsePublishDates: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPropertiesResponsePublishDates", - modelProperties: { - ga: { - constraints: { - Pattern: new RegExp("^([0-9]{2}\\/){2}[0-9]{4}$"), - }, - serializedName: "GA", - type: { - name: "String", - }, - }, - public: { - constraints: { - Pattern: new RegExp("^([0-9]{2}\\/){2}[0-9]{4}$"), - }, - serializedName: "public", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const SecurityAssessmentMetadataProperties: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataProperties", - modelProperties: { - displayName: { - serializedName: "displayName", - required: true, - type: { - name: "String", - }, - }, - policyDefinitionId: { - serializedName: "policyDefinitionId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - remediationDescription: { - serializedName: "remediationDescription", - type: { - name: "String", - }, - }, - categories: { - serializedName: "categories", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - severity: { - serializedName: "severity", - required: true, - 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: { - serializedName: "assessmentType", - required: true, - type: { - name: "String", - }, - }, - partnerData: { - serializedName: "partnerData", - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPartnerData", - }, - }, - }, - }, - }; - -export const SecurityAssessmentMetadataPartnerData: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPartnerData", - modelProperties: { - partnerName: { - serializedName: "partnerName", - required: true, - type: { - name: "String", - }, - }, - productName: { - serializedName: "productName", - type: { - name: "String", - }, - }, - secret: { - serializedName: "secret", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const SecurityAssessmentList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "SecurityAssessmentResponse", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AssessmentStatus: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AssessmentStatus", - modelProperties: { - code: { - serializedName: "code", - required: true, - type: { - name: "String", - }, - }, - cause: { - serializedName: "cause", - type: { - name: "String", - }, - }, - description: { - serializedName: "description", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityAssessmentPropertiesBase: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentPropertiesBase", - modelProperties: { - resourceDetails: { - serializedName: "resourceDetails", - type: { - name: "Composite", - className: "ResourceDetails", - }, - }, - displayName: { - serializedName: "displayName", - readOnly: true, - type: { - name: "String", - }, - }, - additionalData: { - serializedName: "additionalData", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - links: { - serializedName: "links", - type: { - name: "Composite", - className: "AssessmentLinks", - }, - }, - metadata: { - serializedName: "metadata", - type: { - name: "Composite", - className: "SecurityAssessmentMetadataProperties", - }, - }, - partnersData: { - serializedName: "partnersData", - type: { - name: "Composite", - className: "SecurityAssessmentPartnerData", - }, - }, - }, - }, -}; - -export const AssessmentLinks: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AssessmentLinks", - modelProperties: { - azurePortalUri: { - serializedName: "azurePortalUri", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecurityAssessmentPartnerData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentPartnerData", - modelProperties: { - partnerName: { - serializedName: "partnerName", - required: true, - type: { - name: "String", - }, - }, - secret: { - serializedName: "secret", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Alert", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ResourceIdentifier: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ResourceIdentifier", - uberParent: "ResourceIdentifier", - polymorphicDiscriminator: { - serializedName: "type", - clientName: "type", - }, - modelProperties: { - type: { - serializedName: "type", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertEntity: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertEntity", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertPropertiesSupportingEvidence: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertPropertiesSupportingEvidence", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertSimulatorRequestBody: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertSimulatorRequestBody", - modelProperties: { - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AlertSimulatorRequestProperties", - }, - }, - }, - }, -}; - -export const AlertSimulatorRequestProperties: coreClient.CompositeMapper = { - serializedName: "AlertSimulatorRequestProperties", - type: { - name: "Composite", - className: "AlertSimulatorRequestProperties", - uberParent: "AlertSimulatorRequestProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind", - }, - modelProperties: { - kind: { - serializedName: "kind", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SettingsList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SettingsList", - modelProperties: { - value: { - serializedName: "value", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Setting", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ServerVulnerabilityAssessmentsSettingsList: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "ServerVulnerabilityAssessmentsSettingsList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ServerVulnerabilityAssessmentsSetting", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const ResourceAutoGenerated2: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ResourceAutoGenerated2", - modelProperties: { - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - name: { - serializedName: "name", - readOnly: true, - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - }, - }, -}; - -export const ApiCollectionList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApiCollectionList", - modelProperties: { - value: { - serializedName: "value", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ApiCollection", - }, - }, - }, - }, - nextLink: { - serializedName: "nextLink", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Extension: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Extension", - modelProperties: { - name: { - serializedName: "name", - required: true, - type: { - name: "String", - }, - }, - isEnabled: { - serializedName: "isEnabled", - required: true, - type: { - name: "String", - }, - }, - additionalExtensionProperties: { - serializedName: "additionalExtensionProperties", - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - operationStatus: { - serializedName: "operationStatus", - type: { - name: "Composite", - className: "OperationStatusAutoGenerated", - }, - }, - }, - }, -}; - -export const OperationStatusAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "OperationStatusAutoGenerated", - modelProperties: { - code: { - serializedName: "code", - type: { - name: "String", - }, - }, - message: { - serializedName: "message", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const PricingList: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "PricingList", - modelProperties: { - value: { - serializedName: "value", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Pricing", - }, - }, - }, - }, - }, - }, -}; - -export const Cvss: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Cvss", - modelProperties: { - base: { - serializedName: "base", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const Cve: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Cve", - modelProperties: { - title: { - serializedName: "title", - readOnly: true, - type: { - name: "String", - }, - }, - link: { - serializedName: "link", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const VendorReference: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "VendorReference", - modelProperties: { - title: { - serializedName: "title", - readOnly: true, - type: { - name: "String", - }, - }, - link: { - serializedName: "link", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Condition: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Condition", - modelProperties: { - property: { - serializedName: "property", - type: { - name: "String", - }, - }, - value: { - serializedName: "value", - type: { - name: "String", - }, - }, - operator: { - serializedName: "operator", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ApplicationCondition: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApplicationCondition", - modelProperties: { - property: { - serializedName: "property", - type: { - name: "String", - }, - }, - value: { - serializedName: "value", - type: { - name: "String", - }, - }, - operator: { - serializedName: "operator", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureDevOpsOrganizationConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "AzureDevOpsOrganizationConfiguration", - modelProperties: { - autoDiscovery: { - serializedName: "autoDiscovery", - type: { - name: "String", - }, - }, - projectConfigs: { - serializedName: "projectConfigs", - nullable: true, - type: { - name: "Dictionary", - value: { - type: { - name: "Composite", - className: "AzureDevOpsProjectConfiguration", - }, - }, - }, - }, - }, - }, - }; - -export const AzureDevOpsProjectConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsProjectConfiguration", - modelProperties: { - autoDiscovery: { - serializedName: "autoDiscovery", - type: { - name: "String", - }, - }, - repositoryConfigs: { - serializedName: "repositoryConfigs", - nullable: true, - type: { - name: "Dictionary", - value: { - type: { name: "Composite", className: "BaseResourceConfiguration" }, - }, - }, - }, - }, - }, -}; - -export const BaseResourceConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "BaseResourceConfiguration", - modelProperties: { - desiredOnboardingState: { - serializedName: "desiredOnboardingState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GitHubOwnerConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubOwnerConfiguration", - modelProperties: { - autoDiscovery: { - serializedName: "autoDiscovery", - type: { - name: "String", - }, - }, - repositoryConfigs: { - serializedName: "repositoryConfigs", - nullable: true, - type: { - name: "Dictionary", - value: { - type: { name: "Composite", className: "BaseResourceConfiguration" }, - }, - }, - }, - }, - }, -}; - -export const GitLabGroupConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabGroupConfiguration", - modelProperties: { - autoDiscovery: { - serializedName: "autoDiscovery", - type: { - name: "String", - }, - }, - projectConfigs: { - serializedName: "projectConfigs", - nullable: true, - type: { - name: "Dictionary", - value: { - type: { name: "Composite", className: "BaseResourceConfiguration" }, - }, - }, - }, - }, - }, -}; - -export const AwsOrganizationalData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AwsOrganizationalData", - uberParent: "AwsOrganizationalData", - polymorphicDiscriminator: { - serializedName: "organizationMembershipType", - clientName: "organizationMembershipType", - }, - modelProperties: { - organizationMembershipType: { - serializedName: "organizationMembershipType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GcpOrganizationalData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GcpOrganizationalData", - uberParent: "GcpOrganizationalData", - polymorphicDiscriminator: { - serializedName: "organizationMembershipType", - clientName: "organizationMembershipType", - }, - modelProperties: { - organizationMembershipType: { - serializedName: "organizationMembershipType", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GcpProjectDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GcpProjectDetails", - modelProperties: { - projectNumber: { - serializedName: "projectNumber", - type: { - name: "String", - }, - }, - projectId: { - serializedName: "projectId", - type: { - name: "String", - }, - }, - workloadIdentityPoolId: { - serializedName: "workloadIdentityPoolId", - readOnly: true, - type: { - name: "String", - }, - }, - projectName: { - serializedName: "projectName", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CspmMonitorAwsOfferingNativeCloudConnection: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "CspmMonitorAwsOfferingNativeCloudConnection", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingKubernetesService: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKubernetesService", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingKubernetesScubaReader: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKubernetesScubaReader", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingCloudWatchToKinesis: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingCloudWatchToKinesis", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingKinesisToS3: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKinesisToS3", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingContainerVulnerabilityAssessment: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingContainerVulnerabilityAssessment", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingMdcContainersImageAssessment: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingMdcContainersImageAssessment", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingDefenderForServers: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingDefenderForServers", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingArcAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingArcAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderForServersAwsOfferingArcAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingArcAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForServersAwsOfferingArcAutoProvisioningConfiguration", - modelProperties: { - proxy: { - serializedName: "proxy", - type: { - name: "String", - }, - }, - privateLinkScope: { - serializedName: "privateLinkScope", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingVaAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVaAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderForServersAwsOfferingVaAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingVaAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVaAutoProvisioningConfiguration", - modelProperties: { - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingMdeAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingMdeAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingSubPlan: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingSubPlan", - modelProperties: { - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingVmScanners: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVmScanners", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVmScannersConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersAwsOfferingVmScannersConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVmScannersConfiguration", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - scanningMode: { - serializedName: "scanningMode", - type: { - name: "String", - }, - }, - exclusionTags: { - serializedName: "exclusionTags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, - }; - -export const DefenderFoDatabasesAwsOfferingArcAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingArcAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderFoDatabasesAwsOfferingArcAutoProvisioningConfiguration", - modelProperties: { - proxy: { - serializedName: "proxy", - type: { - name: "String", - }, - }, - privateLinkScope: { - serializedName: "privateLinkScope", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderFoDatabasesAwsOfferingRds: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingRds", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DefenderFoDatabasesAwsOfferingDatabasesDspm: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingDatabasesDspm", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const InformationProtectionAwsOfferingInformationProtection: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "InformationProtectionAwsOfferingInformationProtection", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const CspmMonitorGcpOfferingNativeCloudConnection: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "CspmMonitorGcpOfferingNativeCloudConnection", - modelProperties: { - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingDefenderForServers: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingDefenderForServers", - modelProperties: { - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingArcAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingArcAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderForServersGcpOfferingArcAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingArcAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForServersGcpOfferingArcAutoProvisioningConfiguration", - modelProperties: { - proxy: { - serializedName: "proxy", - type: { - name: "String", - }, - }, - privateLinkScope: { - serializedName: "privateLinkScope", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingVaAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVaAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingVaAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVaAutoProvisioningConfiguration", - modelProperties: { - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingMdeAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingMdeAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingSubPlan: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingSubPlan", - modelProperties: { - type: { - serializedName: "type", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingVmScanners: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVmScanners", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVmScannersConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForServersGcpOfferingVmScannersConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVmScannersConfiguration", - modelProperties: { - scanningMode: { - serializedName: "scanningMode", - type: { - name: "String", - }, - }, - exclusionTags: { - serializedName: "exclusionTags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, - }; - -export const DefenderForDatabasesGcpOfferingArcAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForDatabasesGcpOfferingArcAutoProvisioning", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: - "DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration", - }, - }, - }, - }, - }; - -export const DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForDatabasesGcpOfferingArcAutoProvisioningConfiguration", - modelProperties: { - proxy: { - serializedName: "proxy", - type: { - name: "String", - }, - }, - privateLinkScope: { - serializedName: "privateLinkScope", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning", - modelProperties: { - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersGcpOfferingNativeCloudConnection: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersGcpOfferingNativeCloudConnection", - modelProperties: { - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection", - modelProperties: { - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersGcpOfferingMdcContainersImageAssessment: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderForContainersGcpOfferingMdcContainersImageAssessment", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: - "DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingVmScanners: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingVmScanners", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingVmScannersConfiguration", - }, - }, - }, - }, -}; - -export const DefenderCspmAwsOfferingVmScannersConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingVmScannersConfiguration", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - scanningMode: { - serializedName: "scanningMode", - type: { - name: "String", - }, - }, - exclusionTags: { - serializedName: "exclusionTags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingDataSensitivityDiscovery: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingDataSensitivityDiscovery", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingDatabasesDspm: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingDatabasesDspm", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingCiem: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiem", - modelProperties: { - ciemDiscovery: { - serializedName: "ciemDiscovery", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiemDiscovery", - }, - }, - ciemOidc: { - serializedName: "ciemOidc", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiemOidc", - }, - }, - }, - }, -}; - -export const DefenderCspmAwsOfferingCiemDiscovery: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiemDiscovery", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingCiemOidc: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiemOidc", - modelProperties: { - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - azureActiveDirectoryAppName: { - serializedName: "azureActiveDirectoryAppName", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const DefenderCspmAwsOfferingMdcContainersImageAssessment: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingMdcContainersImageAssessment", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - cloudRoleArn: { - serializedName: "cloudRoleArn", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmGcpOfferingCiemDiscovery: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingCiemDiscovery", - modelProperties: { - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - azureActiveDirectoryAppName: { - serializedName: "azureActiveDirectoryAppName", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmGcpOfferingVmScanners: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingVmScanners", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - configuration: { - serializedName: "configuration", - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingVmScannersConfiguration", - }, - }, - }, - }, -}; - -export const DefenderCspmGcpOfferingVmScannersConfiguration: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingVmScannersConfiguration", - modelProperties: { - scanningMode: { - serializedName: "scanningMode", - type: { - name: "String", - }, - }, - exclusionTags: { - serializedName: "exclusionTags", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, - }; - -export const DefenderCspmGcpOfferingDataSensitivityDiscovery: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingDataSensitivityDiscovery", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmGcpOfferingMdcContainersImageAssessment: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingMdcContainersImageAssessment", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S", - modelProperties: { - enabled: { - serializedName: "enabled", - type: { - name: "Boolean", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const ExternalSecuritySolutionProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ExternalSecuritySolutionProperties", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - deviceVendor: { - serializedName: "deviceVendor", - type: { - name: "String", - }, - }, - deviceType: { - serializedName: "deviceType", - type: { - name: "String", - }, - }, - workspace: { - serializedName: "workspace", - type: { - name: "Composite", - className: "ConnectedWorkspace", - }, - }, - }, - }, -}; - -export const ConnectedWorkspace: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ConnectedWorkspace", - modelProperties: { - id: { - serializedName: "id", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AadConnectivityStateAutoGenerated: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AadConnectivityStateAutoGenerated", - modelProperties: { - connectivityState: { - serializedName: "connectivityState", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecureScoreControlScore: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlScore", - modelProperties: { - max: { - constraints: { - InclusiveMaximum: 10, - InclusiveMinimum: 0, - }, - serializedName: "max", - readOnly: true, - type: { - name: "Number", - }, - }, - current: { - constraints: { - InclusiveMaximum: 10, - InclusiveMinimum: 0, - }, - serializedName: "current", - readOnly: true, - type: { - name: "Number", - }, - }, - percentage: { - constraints: { - InclusiveMaximum: 1, - InclusiveMinimum: 0, - }, - serializedName: "percentage", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const AscLocation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AscLocation", - modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, -}; - -export const SecurityTask: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityTask", - modelProperties: { - ...Resource.type.modelProperties, - state: { - serializedName: "properties.state", - readOnly: true, - type: { - name: "String", - }, - }, - creationTimeUtc: { - serializedName: "properties.creationTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - securityTaskParameters: { - serializedName: "properties.securityTaskParameters", - type: { - name: "Composite", - className: "SecurityTaskParameters", - }, - }, - lastStateChangeTimeUtc: { - serializedName: "properties.lastStateChangeTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - subState: { - serializedName: "properties.subState", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutoProvisioningSetting: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutoProvisioningSetting", - modelProperties: { - ...Resource.type.modelProperties, - autoProvision: { - serializedName: "properties.autoProvision", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Compliance: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Compliance", - modelProperties: { - ...Resource.type.modelProperties, - assessmentTimestampUtcDate: { - serializedName: "properties.assessmentTimestampUtcDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - resourceCount: { - serializedName: "properties.resourceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - assessmentResult: { - serializedName: "properties.assessmentResult", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ComplianceSegment", - }, - }, - }, - }, - }, - }, -}; - -export const InformationProtectionPolicy: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "InformationProtectionPolicy", - modelProperties: { - ...Resource.type.modelProperties, - lastModifiedUtc: { - serializedName: "properties.lastModifiedUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - version: { - serializedName: "properties.version", - readOnly: true, - 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 WorkspaceSetting: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "WorkspaceSetting", - modelProperties: { - ...Resource.type.modelProperties, - workspaceId: { - serializedName: "properties.workspaceId", - type: { - name: "String", - }, - }, - scope: { - serializedName: "properties.scope", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertsSuppressionRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AlertsSuppressionRule", - modelProperties: { - ...Resource.type.modelProperties, - alertType: { - serializedName: "properties.alertType", - type: { - name: "String", - }, - }, - lastModifiedUtc: { - serializedName: "properties.lastModifiedUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - expirationDateUtc: { - serializedName: "properties.expirationDateUtc", - type: { - name: "DateTime", - }, - }, - reason: { - serializedName: "properties.reason", - type: { - name: "String", - }, - }, - state: { - serializedName: "properties.state", - type: { - name: "Enum", - allowedValues: ["Enabled", "Disabled", "Expired"], - }, - }, - comment: { - serializedName: "properties.comment", - type: { - name: "String", - }, - }, - suppressionAlertsScope: { - serializedName: "properties.suppressionAlertsScope", - type: { - name: "Composite", - className: "SuppressionAlertsScope", - }, - }, - }, - }, -}; - -export const TrackedResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TrackedResource", - modelProperties: { - ...Resource.type.modelProperties, - ...AzureTrackedResourceLocation.type.modelProperties, - ...KindAutoGenerated.type.modelProperties, - ...ETag.type.modelProperties, - ...Tags.type.modelProperties, - }, - }, -}; - -export const RegulatoryComplianceStandard: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceStandard", - modelProperties: { - ...Resource.type.modelProperties, - state: { - serializedName: "properties.state", - type: { - name: "String", - }, - }, - passedControls: { - serializedName: "properties.passedControls", - readOnly: true, - type: { - name: "Number", - }, - }, - failedControls: { - serializedName: "properties.failedControls", - readOnly: true, - type: { - name: "Number", - }, - }, - skippedControls: { - serializedName: "properties.skippedControls", - readOnly: true, - type: { - name: "Number", - }, - }, - unsupportedControls: { - serializedName: "properties.unsupportedControls", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const RegulatoryComplianceControl: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceControl", - modelProperties: { - ...Resource.type.modelProperties, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - state: { - serializedName: "properties.state", - type: { - name: "String", - }, - }, - passedAssessments: { - serializedName: "properties.passedAssessments", - readOnly: true, - type: { - name: "Number", - }, - }, - failedAssessments: { - serializedName: "properties.failedAssessments", - readOnly: true, - type: { - name: "Number", - }, - }, - skippedAssessments: { - serializedName: "properties.skippedAssessments", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const RegulatoryComplianceAssessment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RegulatoryComplianceAssessment", - modelProperties: { - ...Resource.type.modelProperties, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - assessmentType: { - serializedName: "properties.assessmentType", - readOnly: true, - type: { - name: "String", - }, - }, - assessmentDetailsLink: { - serializedName: "properties.assessmentDetailsLink", - readOnly: true, - type: { - name: "String", - }, - }, - state: { - serializedName: "properties.state", - type: { - name: "String", - }, - }, - passedResources: { - serializedName: "properties.passedResources", - readOnly: true, - type: { - name: "Number", - }, - }, - failedResources: { - serializedName: "properties.failedResources", - readOnly: true, - type: { - name: "Number", - }, - }, - skippedResources: { - serializedName: "properties.skippedResources", - readOnly: true, - type: { - name: "Number", - }, - }, - unsupportedResources: { - serializedName: "properties.unsupportedResources", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const SecuritySubAssessment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySubAssessment", - modelProperties: { - ...Resource.type.modelProperties, - idPropertiesId: { - serializedName: "properties.id", - readOnly: true, - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - status: { - serializedName: "properties.status", - type: { - name: "Composite", - className: "SubAssessmentStatus", - }, - }, - remediation: { - serializedName: "properties.remediation", - readOnly: true, - type: { - name: "String", - }, - }, - impact: { - serializedName: "properties.impact", - readOnly: true, - type: { - name: "String", - }, - }, - category: { - serializedName: "properties.category", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - timeGenerated: { - serializedName: "properties.timeGenerated", - readOnly: true, - type: { - name: "DateTime", - }, - }, - resourceDetails: { - serializedName: "properties.resourceDetails", - type: { - name: "Composite", - className: "ResourceDetails", - }, - }, - additionalData: { - serializedName: "properties.additionalData", - type: { - name: "Composite", - className: "AdditionalData", - }, - }, - }, - }, -}; - -export const ConnectorSetting: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ConnectorSetting", - modelProperties: { - ...Resource.type.modelProperties, - hybridComputeSettings: { - serializedName: "properties.hybridComputeSettings", - type: { - name: "Composite", - className: "HybridComputeSettingsProperties", - }, - }, - authenticationDetails: { - serializedName: "properties.authenticationDetails", - type: { - name: "Composite", - className: "AuthenticationDetailsProperties", - }, - }, - }, - }, -}; - -export const SecurityContact: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityContact", - modelProperties: { - ...Resource.type.modelProperties, - emails: { - serializedName: "properties.emails", - type: { - name: "String", - }, - }, - phone: { - serializedName: "properties.phone", - type: { - name: "String", - }, - }, - isEnabled: { - serializedName: "properties.isEnabled", - type: { - name: "Boolean", - }, - }, - notificationsSources: { - serializedName: "properties.notificationsSources", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "NotificationsSource", - }, - }, - }, - }, - notificationsByRole: { - serializedName: "properties.notificationsByRole", - type: { - name: "Composite", - className: "SecurityContactPropertiesNotificationsByRole", - }, - }, - }, - }, -}; - -export const Software: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Software", - modelProperties: { - ...Resource.type.modelProperties, - deviceId: { - serializedName: "properties.deviceId", - type: { - name: "String", - }, - }, - osPlatform: { - serializedName: "properties.osPlatform", - type: { - name: "String", - }, - }, - vendor: { - serializedName: "properties.vendor", - type: { - name: "String", - }, - }, - softwareName: { - serializedName: "properties.softwareName", - type: { - name: "String", - }, - }, - version: { - serializedName: "properties.version", - type: { - name: "String", - }, - }, - endOfSupportStatus: { - serializedName: "properties.endOfSupportStatus", - type: { - name: "String", - }, - }, - endOfSupportDate: { - serializedName: "properties.endOfSupportDate", - type: { - name: "String", - }, - }, - numberOfKnownVulnerabilities: { - serializedName: "properties.numberOfKnownVulnerabilities", - type: { - name: "Number", - }, - }, - firstSeenAt: { - serializedName: "properties.firstSeenAt", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CustomAssessmentAutomation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomAssessmentAutomation", - modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - compressedQuery: { - serializedName: "properties.compressedQuery", - type: { - name: "String", - }, - }, - supportedCloud: { - serializedName: "properties.supportedCloud", - type: { - name: "String", - }, - }, - severity: { - serializedName: "properties.severity", - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - remediationDescription: { - serializedName: "properties.remediationDescription", - type: { - name: "String", - }, - }, - assessmentKey: { - serializedName: "properties.assessmentKey", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CustomAssessmentAutomationRequest: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomAssessmentAutomationRequest", - modelProperties: { - ...Resource.type.modelProperties, - compressedQuery: { - serializedName: "properties.compressedQuery", - type: { - name: "String", - }, - }, - supportedCloud: { - serializedName: "properties.supportedCloud", - type: { - name: "String", - }, - }, - severity: { - serializedName: "properties.severity", - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - remediationDescription: { - serializedName: "properties.remediationDescription", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CustomEntityStoreAssignment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CustomEntityStoreAssignment", - modelProperties: { - ...Resource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - principal: { - serializedName: "properties.principal", - type: { - name: "String", - }, - }, - entityStoreDatabaseLink: { - serializedName: "properties.entityStoreDatabaseLink", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const MdeOnboardingData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "MdeOnboardingData", - modelProperties: { - ...Resource.type.modelProperties, - onboardingPackageWindows: { - serializedName: "properties.onboardingPackageWindows", - type: { - name: "ByteArray", - }, - }, - onboardingPackageLinux: { - serializedName: "properties.onboardingPackageLinux", - type: { - name: "ByteArray", - }, - }, - }, - }, -}; - -export const GovernanceAssignment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceAssignment", - modelProperties: { - ...Resource.type.modelProperties, - owner: { - serializedName: "properties.owner", - type: { - name: "String", - }, - }, - remediationDueDate: { - serializedName: "properties.remediationDueDate", - type: { - name: "DateTime", - }, - }, - remediationEta: { - serializedName: "properties.remediationEta", - type: { - name: "Composite", - className: "RemediationEta", - }, - }, - isGracePeriod: { - serializedName: "properties.isGracePeriod", - type: { - name: "Boolean", - }, - }, - governanceEmailNotification: { - serializedName: "properties.governanceEmailNotification", - type: { - name: "Composite", - className: "GovernanceEmailNotification", - }, - }, - additionalData: { - serializedName: "properties.additionalData", - type: { - name: "Composite", - className: "GovernanceAssignmentAdditionalData", - }, - }, - }, - }, -}; - -export const GovernanceRule: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRule", - modelProperties: { - ...Resource.type.modelProperties, - tenantId: { - serializedName: "properties.tenantId", - readOnly: true, - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - remediationTimeframe: { - constraints: { - Pattern: new RegExp("^[0-9]+\\.[0-9]{2}:[0-9]{2}:[0-9]{2}$"), - }, - serializedName: "properties.remediationTimeframe", - type: { - name: "String", - }, - }, - isGracePeriod: { - serializedName: "properties.isGracePeriod", - type: { - name: "Boolean", - }, - }, - rulePriority: { - constraints: { - InclusiveMaximum: 1000, - InclusiveMinimum: 0, - }, - serializedName: "properties.rulePriority", - type: { - name: "Number", - }, - }, - isDisabled: { - serializedName: "properties.isDisabled", - type: { - name: "Boolean", - }, - }, - ruleType: { - serializedName: "properties.ruleType", - type: { - name: "String", - }, - }, - sourceResourceType: { - serializedName: "properties.sourceResourceType", - type: { - name: "String", - }, - }, - excludedScopes: { - serializedName: "properties.excludedScopes", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - conditionSets: { - serializedName: "properties.conditionSets", - type: { - name: "Sequence", - element: { - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, - includeMemberScopes: { - serializedName: "properties.includeMemberScopes", - type: { - name: "Boolean", - }, - }, - ownerSource: { - serializedName: "properties.ownerSource", - type: { - name: "Composite", - className: "GovernanceRuleOwnerSource", - }, - }, - governanceEmailNotification: { - serializedName: "properties.governanceEmailNotification", - type: { - name: "Composite", - className: "GovernanceRuleEmailNotification", - }, - }, - metadata: { - serializedName: "properties.metadata", - type: { - name: "Composite", - className: "GovernanceRuleMetadata", - }, - }, - }, - }, -}; - -export const Application: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Application", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - sourceResourceType: { - serializedName: "properties.sourceResourceType", - type: { - name: "String", - }, - }, - conditionSets: { - serializedName: "properties.conditionSets", - type: { - name: "Sequence", - element: { - type: { - name: "Dictionary", - value: { type: { name: "any" } }, - }, - }, - }, - }, - }, - }, -}; - -export const DefenderForStorageSetting: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DefenderForStorageSetting", - modelProperties: { - ...Resource.type.modelProperties, - isEnabledPropertiesIsEnabled: { - serializedName: "properties.isEnabled", - type: { - name: "Boolean", - }, - }, - overrideSubscriptionLevelSettings: { - serializedName: "properties.overrideSubscriptionLevelSettings", - type: { - name: "Boolean", - }, - }, - isEnabledPropertiesSensitiveDataDiscoveryIsEnabled: { - serializedName: "properties.sensitiveDataDiscovery.isEnabled", - type: { - name: "Boolean", - }, - }, - operationStatusPropertiesSensitiveDataDiscoveryOperationStatus: { - serializedName: "properties.sensitiveDataDiscovery.operationStatus", - type: { - name: "Composite", - className: "OperationStatus", - }, - }, - scanResultsEventGridTopicResourceId: { - serializedName: - "properties.malwareScanning.scanResultsEventGridTopicResourceId", - type: { - name: "String", - }, - }, - operationStatusPropertiesMalwareScanningOperationStatus: { - serializedName: "properties.malwareScanning.operationStatus", - type: { - name: "Composite", - className: "OperationStatus", - }, - }, - isEnabledPropertiesMalwareScanningOnUploadIsEnabled: { - serializedName: "properties.malwareScanning.onUpload.isEnabled", - type: { - name: "Boolean", - }, - }, - capGBPerMonth: { - serializedName: "properties.malwareScanning.onUpload.capGBPerMonth", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const SecurityOperator: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityOperator", - modelProperties: { - ...Resource.type.modelProperties, - identity: { - serializedName: "identity", - type: { - name: "Composite", - className: "Identity", - }, - }, - }, - }, -}; - -export const RuleResults: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "RuleResults", - modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "RuleResultsProperties", - }, - }, - }, - }, -}; - -export const Scan: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Scan", - modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "ScanProperties", - }, - }, - }, - }, -}; - -export const ScanResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ScanResult", - modelProperties: { - ...Resource.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "ScanResultProperties", - }, - }, - }, - }, -}; - -export const HealthReport: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "HealthReport", - modelProperties: { - ...Resource.type.modelProperties, - resourceDetails: { - serializedName: "properties.resourceDetails", - type: { - name: "Composite", - className: "ResourceDetailsAutoGenerated", - }, - }, - environmentDetails: { - serializedName: "properties.environmentDetails", - type: { - name: "Composite", - className: "EnvironmentDetails", - }, - }, - healthDataClassification: { - serializedName: "properties.healthDataClassification", - type: { - name: "Composite", - className: "HealthDataClassification", - }, - }, - status: { - serializedName: "properties.status", - type: { - name: "Composite", - className: "StatusAutoGenerated", - }, - }, - affectedDefendersPlans: { - serializedName: "properties.affectedDefendersPlans", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - affectedDefendersSubPlans: { - serializedName: "properties.affectedDefendersSubPlans", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - reportAdditionalData: { - serializedName: "properties.reportAdditionalData", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - issues: { - serializedName: "properties.issues", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Issue", - }, - }, - }, - }, - }, - }, -}; - -export const ComplianceResult: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ComplianceResult", - modelProperties: { - ...Resource.type.modelProperties, - resourceStatus: { - serializedName: "properties.resourceStatus", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AdvancedThreatProtectionSetting: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdvancedThreatProtectionSetting", - modelProperties: { - ...Resource.type.modelProperties, - isEnabled: { - serializedName: "properties.isEnabled", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const DeviceSecurityGroup: coreClient.CompositeMapper = { - 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 IoTSecuritySolutionAnalyticsModel: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecuritySolutionAnalyticsModel", - modelProperties: { - ...Resource.type.modelProperties, - metrics: { - serializedName: "properties.metrics", - type: { - name: "Composite", - className: "IoTSeverityMetrics", - }, - }, - unhealthyDeviceCount: { - serializedName: "properties.unhealthyDeviceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - devicesMetrics: { - serializedName: "properties.devicesMetrics", - readOnly: true, - 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 IoTSecurityAggregatedAlert: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityAggregatedAlert", - modelProperties: { - ...Resource.type.modelProperties, - ...TagsResource.type.modelProperties, - alertType: { - serializedName: "properties.alertType", - readOnly: true, - type: { - name: "String", - }, - }, - alertDisplayName: { - serializedName: "properties.alertDisplayName", - readOnly: true, - type: { - name: "String", - }, - }, - aggregatedDateUtc: { - serializedName: "properties.aggregatedDateUtc", - readOnly: true, - type: { - name: "Date", - }, - }, - vendorName: { - serializedName: "properties.vendorName", - readOnly: true, - type: { - name: "String", - }, - }, - reportedSeverity: { - serializedName: "properties.reportedSeverity", - readOnly: true, - type: { - name: "String", - }, - }, - remediationSteps: { - serializedName: "properties.remediationSteps", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - count: { - serializedName: "properties.count", - readOnly: true, - type: { - name: "Number", - }, - }, - effectedResourceType: { - serializedName: "properties.effectedResourceType", - readOnly: true, - type: { - name: "String", - }, - }, - systemSource: { - serializedName: "properties.systemSource", - readOnly: true, - type: { - name: "String", - }, - }, - actionTaken: { - serializedName: "properties.actionTaken", - readOnly: true, - type: { - name: "String", - }, - }, - logAnalyticsQuery: { - serializedName: "properties.logAnalyticsQuery", - readOnly: true, - type: { - name: "String", - }, - }, - topDevicesList: { - serializedName: "properties.topDevicesList", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: - "IoTSecurityAggregatedAlertPropertiesTopDevicesListItem", - }, - }, - }, - }, - }, - }, -}; - -export const IoTSecurityAggregatedRecommendation: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecurityAggregatedRecommendation", - modelProperties: { - ...Resource.type.modelProperties, - ...TagsResource.type.modelProperties, - recommendationName: { - serializedName: "properties.recommendationName", - type: { - name: "String", - }, - }, - recommendationDisplayName: { - serializedName: "properties.recommendationDisplayName", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - recommendationTypeId: { - serializedName: "properties.recommendationTypeId", - readOnly: true, - type: { - name: "String", - }, - }, - detectedBy: { - serializedName: "properties.detectedBy", - readOnly: true, - type: { - name: "String", - }, - }, - remediationSteps: { - serializedName: "properties.remediationSteps", - readOnly: true, - type: { - name: "String", - }, - }, - reportedSeverity: { - serializedName: "properties.reportedSeverity", - readOnly: true, - type: { - name: "String", - }, - }, - healthyDevices: { - serializedName: "properties.healthyDevices", - readOnly: true, - type: { - name: "Number", - }, - }, - unhealthyDeviceCount: { - serializedName: "properties.unhealthyDeviceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - logAnalyticsQuery: { - serializedName: "properties.logAnalyticsQuery", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const IoTSecuritySolutionModel: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "IoTSecuritySolutionModel", - modelProperties: { - ...Resource.type.modelProperties, - ...TagsResource.type.modelProperties, - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - workspace: { - serializedName: "properties.workspace", - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - status: { - defaultValue: "Enabled", - serializedName: "properties.status", - type: { - name: "String", - }, - }, - export: { - serializedName: "properties.export", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - disabledDataSources: { - serializedName: "properties.disabledDataSources", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - iotHubs: { - serializedName: "properties.iotHubs", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - userDefinedResources: { - serializedName: "properties.userDefinedResources", - type: { - name: "Composite", - className: "UserDefinedResourcesProperties", - }, - }, - autoDiscoveredResources: { - serializedName: "properties.autoDiscoveredResources", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - recommendationsConfiguration: { - serializedName: "properties.recommendationsConfiguration", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "RecommendationConfigurationProperties", - }, - }, - }, - }, - unmaskedIpLoggingStatus: { - defaultValue: "Disabled", - serializedName: "properties.unmaskedIpLoggingStatus", - type: { - name: "String", - }, - }, - additionalWorkspaces: { - serializedName: "properties.additionalWorkspaces", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AdditionalWorkspacesProperties", - }, - }, - }, - }, - }, - }, -}; - -export const AdaptiveNetworkHardening: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdaptiveNetworkHardening", - modelProperties: { - ...Resource.type.modelProperties, - rules: { - serializedName: "properties.rules", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Rule", - }, - }, - }, - }, - rulesCalculationTime: { - serializedName: "properties.rulesCalculationTime", - type: { - name: "DateTime", - }, - }, - effectiveNetworkSecurityGroups: { - serializedName: "properties.effectiveNetworkSecurityGroups", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "EffectiveNetworkSecurityGroups", - }, - }, - }, - }, - }, - }, -}; - -export const AllowedConnectionsResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AllowedConnectionsResource", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - calculatedDateTime: { - serializedName: "properties.calculatedDateTime", - readOnly: true, - type: { - name: "DateTime", - }, - }, - connectableResources: { - serializedName: "properties.connectableResources", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ConnectableResource", - }, - }, - }, - }, - }, - }, -}; - -export const AdaptiveApplicationControlGroup: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AdaptiveApplicationControlGroup", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - enforcementMode: { - serializedName: "properties.enforcementMode", - type: { - name: "String", - }, - }, - protectionMode: { - serializedName: "properties.protectionMode", - type: { - name: "Composite", - className: "ProtectionMode", - }, - }, - configurationStatus: { - serializedName: "properties.configurationStatus", - readOnly: true, - type: { - name: "String", - }, - }, - recommendationStatus: { - serializedName: "properties.recommendationStatus", - readOnly: true, - type: { - name: "String", - }, - }, - issues: { - serializedName: "properties.issues", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AdaptiveApplicationControlIssueSummary", - }, - }, - }, - }, - sourceSystem: { - serializedName: "properties.sourceSystem", - readOnly: true, - type: { - name: "String", - }, - }, - vmRecommendations: { - serializedName: "properties.vmRecommendations", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "VmRecommendation", - }, - }, - }, - }, - pathRecommendations: { - serializedName: "properties.pathRecommendations", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "PathRecommendation", - }, - }, - }, - }, - }, - }, -}; - -export const DiscoveredSecuritySolution: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DiscoveredSecuritySolution", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - securityFamily: { - serializedName: "properties.securityFamily", - required: true, - type: { - name: "String", - }, - }, - offer: { - serializedName: "properties.offer", - required: true, - type: { - name: "String", - }, - }, - publisher: { - serializedName: "properties.publisher", - required: true, - type: { - name: "String", - }, - }, - sku: { - serializedName: "properties.sku", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ExternalSecuritySolution: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ExternalSecuritySolution", - modelProperties: { - ...Resource.type.modelProperties, - ...ExternalSecuritySolutionKindAutoGenerated.type.modelProperties, - ...Location.type.modelProperties, - }, - }, -}; - -export const JitNetworkAccessPolicy: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "JitNetworkAccessPolicy", - modelProperties: { - ...Resource.type.modelProperties, - ...KindAutoGenerated.type.modelProperties, - ...Location.type.modelProperties, - virtualMachines: { - serializedName: "properties.virtualMachines", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessPolicyVirtualMachine", - }, - }, - }, - }, - requests: { - serializedName: "properties.requests", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "JitNetworkAccessRequest", - }, - }, - }, - }, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecureScoreItem: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreItem", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - weight: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.weight", - readOnly: true, - type: { - name: "Number", - }, - }, - max: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.score.max", - readOnly: true, - type: { - name: "Number", - }, - }, - current: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.score.current", - readOnly: true, - type: { - name: "Number", - }, - }, - percentage: { - constraints: { - InclusiveMaximum: 1, - InclusiveMinimum: 0, - }, - serializedName: "properties.score.percentage", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const SecureScoreControlDefinitionItem: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlDefinitionItem", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - constraints: { - MaxLength: 256, - }, - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - maxScore: { - constraints: { - InclusiveMaximum: 10, - InclusiveMinimum: 0, - }, - serializedName: "properties.maxScore", - readOnly: true, - type: { - name: "Number", - }, - }, - source: { - serializedName: "properties.source", - type: { - name: "Composite", - className: "SecureScoreControlDefinitionSource", - }, - }, - assessmentDefinitions: { - serializedName: "properties.assessmentDefinitions", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AzureResourceLink", - }, - }, - }, - }, - }, - }, -}; - -export const SecureScoreControlDetails: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecureScoreControlDetails", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - healthyResourceCount: { - serializedName: "properties.healthyResourceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - unhealthyResourceCount: { - serializedName: "properties.unhealthyResourceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - notApplicableResourceCount: { - serializedName: "properties.notApplicableResourceCount", - readOnly: true, - type: { - name: "Number", - }, - }, - weight: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.weight", - readOnly: true, - type: { - name: "Number", - }, - }, - definition: { - serializedName: "properties.definition", - type: { - name: "Composite", - className: "SecureScoreControlDefinitionItem", - }, - }, - max: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.score.max", - readOnly: true, - type: { - name: "Number", - }, - }, - current: { - constraints: { - InclusiveMinimum: 0, - }, - serializedName: "properties.score.current", - readOnly: true, - type: { - name: "Number", - }, - }, - percentage: { - constraints: { - InclusiveMaximum: 1, - InclusiveMinimum: 0, - }, - serializedName: "properties.score.percentage", - readOnly: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const SecuritySolution: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySolution", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - securityFamily: { - serializedName: "properties.securityFamily", - type: { - name: "String", - }, - }, - provisioningState: { - serializedName: "properties.provisioningState", - type: { - name: "String", - }, - }, - template: { - serializedName: "properties.template", - type: { - name: "String", - }, - }, - protectionStatus: { - serializedName: "properties.protectionStatus", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SecuritySolutionsReferenceData: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecuritySolutionsReferenceData", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - securityFamily: { - serializedName: "properties.securityFamily", - required: true, - type: { - name: "String", - }, - }, - alertVendorName: { - serializedName: "properties.alertVendorName", - required: true, - type: { - name: "String", - }, - }, - packageInfoUrl: { - serializedName: "properties.packageInfoUrl", - required: true, - type: { - name: "String", - }, - }, - productName: { - serializedName: "properties.productName", - required: true, - type: { - name: "String", - }, - }, - publisher: { - serializedName: "properties.publisher", - required: true, - type: { - name: "String", - }, - }, - publisherDisplayName: { - serializedName: "properties.publisherDisplayName", - required: true, - type: { - name: "String", - }, - }, - template: { - serializedName: "properties.template", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ServerVulnerabilityAssessment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ServerVulnerabilityAssessment", - modelProperties: { - ...Resource.type.modelProperties, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const TopologyResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "TopologyResource", - modelProperties: { - ...Resource.type.modelProperties, - ...Location.type.modelProperties, - calculatedDateTime: { - serializedName: "properties.calculatedDateTime", - readOnly: true, - type: { - name: "DateTime", - }, - }, - topologyResources: { - serializedName: "properties.topologyResources", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "TopologySingleResource", - }, - }, - }, - }, - }, - }, -}; - -export const SecurityAssessmentMetadataResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataResponse", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - policyDefinitionId: { - serializedName: "properties.policyDefinitionId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - remediationDescription: { - serializedName: "properties.remediationDescription", - type: { - name: "String", - }, - }, - categories: { - serializedName: "properties.categories", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - severity: { - serializedName: "properties.severity", - type: { - name: "String", - }, - }, - userImpact: { - serializedName: "properties.userImpact", - type: { - name: "String", - }, - }, - implementationEffort: { - serializedName: "properties.implementationEffort", - type: { - name: "String", - }, - }, - threats: { - serializedName: "properties.threats", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - preview: { - serializedName: "properties.preview", - type: { - name: "Boolean", - }, - }, - assessmentType: { - serializedName: "properties.assessmentType", - type: { - name: "String", - }, - }, - partnerData: { - serializedName: "properties.partnerData", - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPartnerData", - }, - }, - publishDates: { - serializedName: "properties.publishDates", - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPropertiesResponsePublishDates", - }, - }, - plannedDeprecationDate: { - constraints: { - Pattern: new RegExp("^[0-9]{2}\\/[0-9]{4}$"), - }, - serializedName: "properties.plannedDeprecationDate", - type: { - name: "String", - }, - }, - tactics: { - serializedName: "properties.tactics", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - techniques: { - serializedName: "properties.techniques", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const SecurityAssessmentResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentResponse", - modelProperties: { - ...Resource.type.modelProperties, - resourceDetails: { - serializedName: "properties.resourceDetails", - type: { - name: "Composite", - className: "ResourceDetails", - }, - }, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - additionalData: { - serializedName: "properties.additionalData", - type: { - name: "Dictionary", - value: { type: { 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", - }, - }, - status: { - serializedName: "properties.status", - type: { - name: "Composite", - className: "AssessmentStatusResponse", - }, - }, - }, - }, -}; - -export const SecurityAssessment: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessment", - modelProperties: { - ...Resource.type.modelProperties, - resourceDetails: { - serializedName: "properties.resourceDetails", - type: { - name: "Composite", - className: "ResourceDetails", - }, - }, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - additionalData: { - serializedName: "properties.additionalData", - type: { - name: "Dictionary", - value: { type: { 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", - }, - }, - status: { - serializedName: "properties.status", - type: { - name: "Composite", - className: "AssessmentStatus", - }, - }, - }, - }, -}; - -export const Alert: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Alert", - modelProperties: { - ...Resource.type.modelProperties, - version: { - serializedName: "properties.version", - readOnly: true, - type: { - name: "String", - }, - }, - alertType: { - serializedName: "properties.alertType", - readOnly: true, - type: { - name: "String", - }, - }, - systemAlertId: { - serializedName: "properties.systemAlertId", - readOnly: true, - type: { - name: "String", - }, - }, - productComponentName: { - serializedName: "properties.productComponentName", - readOnly: true, - type: { - name: "String", - }, - }, - alertDisplayName: { - serializedName: "properties.alertDisplayName", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - readOnly: true, - type: { - name: "String", - }, - }, - severity: { - serializedName: "properties.severity", - readOnly: true, - type: { - name: "String", - }, - }, - intent: { - serializedName: "properties.intent", - readOnly: true, - type: { - name: "String", - }, - }, - startTimeUtc: { - serializedName: "properties.startTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - endTimeUtc: { - serializedName: "properties.endTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - resourceIdentifiers: { - serializedName: "properties.resourceIdentifiers", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "ResourceIdentifier", - }, - }, - }, - }, - remediationSteps: { - serializedName: "properties.remediationSteps", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - vendorName: { - serializedName: "properties.vendorName", - readOnly: true, - type: { - name: "String", - }, - }, - status: { - serializedName: "properties.status", - readOnly: true, - type: { - name: "String", - }, - }, - extendedLinks: { - serializedName: "properties.extendedLinks", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - }, - }, - alertUri: { - serializedName: "properties.alertUri", - readOnly: true, - type: { - name: "String", - }, - }, - timeGeneratedUtc: { - serializedName: "properties.timeGeneratedUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - productName: { - serializedName: "properties.productName", - readOnly: true, - type: { - name: "String", - }, - }, - processingEndTimeUtc: { - serializedName: "properties.processingEndTimeUtc", - readOnly: true, - type: { - name: "DateTime", - }, - }, - entities: { - serializedName: "properties.entities", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "AlertEntity", - }, - }, - }, - }, - isIncident: { - serializedName: "properties.isIncident", - readOnly: true, - type: { - name: "Boolean", - }, - }, - correlationKey: { - serializedName: "properties.correlationKey", - readOnly: true, - type: { - name: "String", - }, - }, - extendedProperties: { - serializedName: "properties.extendedProperties", - type: { - name: "Dictionary", - value: { type: { name: "String" } }, - }, - }, - compromisedEntity: { - serializedName: "properties.compromisedEntity", - readOnly: true, - type: { - name: "String", - }, - }, - techniques: { - serializedName: "properties.techniques", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - subTechniques: { - serializedName: "properties.subTechniques", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - supportingEvidence: { - serializedName: "properties.supportingEvidence", - type: { - name: "Composite", - className: "AlertPropertiesSupportingEvidence", - }, - }, - }, - }, -}; - -export const Setting: coreClient.CompositeMapper = { - serializedName: "Setting", - type: { - name: "Composite", - className: "Setting", - uberParent: "Resource", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind", - }, - modelProperties: { - ...Resource.type.modelProperties, - kind: { - serializedName: "kind", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ApiCollection: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ApiCollection", - modelProperties: { - ...Resource.type.modelProperties, - provisioningState: { - serializedName: "properties.provisioningState", - readOnly: true, - type: { - name: "String", - }, - }, - displayName: { - serializedName: "properties.displayName", - readOnly: true, - type: { - name: "String", - }, - }, - discoveredVia: { - serializedName: "properties.discoveredVia", - readOnly: true, - type: { - name: "String", - }, - }, - baseUrl: { - serializedName: "properties.baseUrl", - readOnly: true, - type: { - name: "String", - }, - }, - numberOfApiEndpoints: { - serializedName: "properties.numberOfApiEndpoints", - readOnly: true, - type: { - name: "Number", - }, - }, - numberOfInactiveApiEndpoints: { - serializedName: "properties.numberOfInactiveApiEndpoints", - readOnly: true, - type: { - name: "Number", - }, - }, - numberOfUnauthenticatedApiEndpoints: { - serializedName: "properties.numberOfUnauthenticatedApiEndpoints", - readOnly: true, - type: { - name: "Number", - }, - }, - numberOfExternalApiEndpoints: { - serializedName: "properties.numberOfExternalApiEndpoints", - readOnly: true, - type: { - name: "Number", - }, - }, - numberOfApiEndpointsWithSensitiveDataExposed: { - serializedName: - "properties.numberOfApiEndpointsWithSensitiveDataExposed", - readOnly: true, - type: { - name: "Number", - }, - }, - sensitivityLabel: { - serializedName: "properties.sensitivityLabel", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const Pricing: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "Pricing", - modelProperties: { - ...Resource.type.modelProperties, - pricingTier: { - serializedName: "properties.pricingTier", - type: { - name: "String", - }, - }, - subPlan: { - serializedName: "properties.subPlan", - type: { - name: "String", - }, - }, - freeTrialRemainingTime: { - serializedName: "properties.freeTrialRemainingTime", - readOnly: true, - type: { - name: "TimeSpan", - }, - }, - enablementTime: { - serializedName: "properties.enablementTime", - readOnly: true, - type: { - name: "DateTime", - }, - }, - enforce: { - serializedName: "properties.enforce", - type: { - name: "String", - }, - }, - inherited: { - serializedName: "properties.inherited", - readOnly: true, - type: { - name: "String", - }, - }, - inheritedFrom: { - serializedName: "properties.inheritedFrom", - readOnly: true, - type: { - name: "String", - }, - }, - resourcesCoverageStatus: { - serializedName: "properties.resourcesCoverageStatus", - readOnly: true, - type: { - name: "String", - }, - }, - extensions: { - serializedName: "properties.extensions", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Extension", - }, - }, - }, - }, - deprecated: { - serializedName: "properties.deprecated", - readOnly: true, - type: { - name: "Boolean", - }, - }, - replacedBy: { - serializedName: "properties.replacedBy", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const SecurityAssessmentMetadata: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentMetadata", - modelProperties: { - ...Resource.type.modelProperties, - displayName: { - serializedName: "properties.displayName", - type: { - name: "String", - }, - }, - policyDefinitionId: { - serializedName: "properties.policyDefinitionId", - readOnly: true, - type: { - name: "String", - }, - }, - description: { - serializedName: "properties.description", - type: { - name: "String", - }, - }, - remediationDescription: { - serializedName: "properties.remediationDescription", - type: { - name: "String", - }, - }, - categories: { - serializedName: "properties.categories", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - severity: { - serializedName: "properties.severity", - type: { - name: "String", - }, - }, - userImpact: { - serializedName: "properties.userImpact", - type: { - name: "String", - }, - }, - implementationEffort: { - serializedName: "properties.implementationEffort", - type: { - name: "String", - }, - }, - threats: { - serializedName: "properties.threats", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - preview: { - serializedName: "properties.preview", - type: { - name: "Boolean", - }, - }, - assessmentType: { - serializedName: "properties.assessmentType", - type: { - name: "String", - }, - }, - partnerData: { - serializedName: "properties.partnerData", - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPartnerData", - }, - }, - }, - }, -}; - -export const AutomationActionLogicApp: coreClient.CompositeMapper = { - serializedName: "LogicApp", - type: { - name: "Composite", - className: "AutomationActionLogicApp", - uberParent: "AutomationAction", - polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, - modelProperties: { - ...AutomationAction.type.modelProperties, - logicAppResourceId: { - serializedName: "logicAppResourceId", - type: { - name: "String", - }, - }, - uri: { - serializedName: "uri", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutomationActionEventHub: coreClient.CompositeMapper = { - serializedName: "EventHub", - type: { - name: "Composite", - className: "AutomationActionEventHub", - uberParent: "AutomationAction", - polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, - modelProperties: { - ...AutomationAction.type.modelProperties, - eventHubResourceId: { - serializedName: "eventHubResourceId", - type: { - name: "String", - }, - }, - sasPolicyName: { - serializedName: "sasPolicyName", - readOnly: true, - type: { - name: "String", - }, - }, - connectionString: { - serializedName: "connectionString", - type: { - name: "String", - }, - }, - isTrustedServiceEnabled: { - serializedName: "isTrustedServiceEnabled", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const AutomationActionWorkspace: coreClient.CompositeMapper = { - serializedName: "Workspace", - type: { - name: "Composite", - className: "AutomationActionWorkspace", - uberParent: "AutomationAction", - polymorphicDiscriminator: AutomationAction.type.polymorphicDiscriminator, - modelProperties: { - ...AutomationAction.type.modelProperties, - workspaceResourceId: { - serializedName: "workspaceResourceId", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AutomationUpdateModel: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AutomationUpdateModel", - modelProperties: { - ...Tags.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 AzureResourceDetails: coreClient.CompositeMapper = { - serializedName: "Azure", - type: { - name: "Composite", - className: "AzureResourceDetails", - uberParent: "ResourceDetails", - polymorphicDiscriminator: ResourceDetails.type.polymorphicDiscriminator, - modelProperties: { - ...ResourceDetails.type.modelProperties, - id: { - serializedName: "id", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const OnPremiseResourceDetails: coreClient.CompositeMapper = { - serializedName: "OnPremise", - type: { - name: "Composite", - className: "OnPremiseResourceDetails", - uberParent: "ResourceDetails", - polymorphicDiscriminator: { - serializedName: "source", - clientName: "source", - }, - modelProperties: { - ...ResourceDetails.type.modelProperties, - workspaceId: { - serializedName: "workspaceId", - required: true, - type: { - name: "String", - }, - }, - vmuuid: { - serializedName: "vmuuid", - required: true, - type: { - name: "String", - }, - }, - sourceComputerId: { - serializedName: "sourceComputerId", - required: true, - type: { - name: "String", - }, - }, - machineName: { - serializedName: "machineName", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const SqlServerVulnerabilityProperties: coreClient.CompositeMapper = { - serializedName: "SqlServerVulnerability", - type: { - name: "Composite", - className: "SqlServerVulnerabilityProperties", - uberParent: "AdditionalData", - polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, - modelProperties: { - ...AdditionalData.type.modelProperties, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - query: { - serializedName: "query", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ContainerRegistryVulnerabilityProperties: coreClient.CompositeMapper = - { - serializedName: "ContainerRegistryVulnerability", - type: { - name: "Composite", - className: "ContainerRegistryVulnerabilityProperties", - uberParent: "AdditionalData", - polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, - modelProperties: { - ...AdditionalData.type.modelProperties, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - cvss: { - serializedName: "cvss", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "Composite", className: "Cvss" } }, - }, - }, - patchable: { - serializedName: "patchable", - readOnly: true, - type: { - name: "Boolean", - }, - }, - cve: { - serializedName: "cve", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Cve", - }, - }, - }, - }, - publishedTime: { - serializedName: "publishedTime", - readOnly: true, - type: { - name: "DateTime", - }, - }, - vendorReferences: { - serializedName: "vendorReferences", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "VendorReference", - }, - }, - }, - }, - repositoryName: { - serializedName: "repositoryName", - readOnly: true, - type: { - name: "String", - }, - }, - imageDigest: { - serializedName: "imageDigest", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const ServerVulnerabilityProperties: coreClient.CompositeMapper = { - serializedName: "ServerVulnerabilityAssessment", - type: { - name: "Composite", - className: "ServerVulnerabilityProperties", - uberParent: "AdditionalData", - polymorphicDiscriminator: AdditionalData.type.polymorphicDiscriminator, - modelProperties: { - ...AdditionalData.type.modelProperties, - type: { - serializedName: "type", - readOnly: true, - type: { - name: "String", - }, - }, - cvss: { - serializedName: "cvss", - readOnly: true, - type: { - name: "Dictionary", - value: { type: { name: "Composite", className: "Cvss" } }, - }, - }, - patchable: { - serializedName: "patchable", - readOnly: true, - type: { - name: "Boolean", - }, - }, - cve: { - serializedName: "cve", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "Cve", - }, - }, - }, - }, - threat: { - serializedName: "threat", - readOnly: true, - type: { - name: "String", - }, - }, - publishedTime: { - serializedName: "publishedTime", - readOnly: true, - type: { - name: "DateTime", - }, - }, - vendorReferences: { - serializedName: "vendorReferences", - readOnly: true, - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "VendorReference", - }, - }, - }, - }, - }, - }, -}; - -export const AwsCredsAuthenticationDetailsProperties: coreClient.CompositeMapper = - { - serializedName: "awsCreds", - type: { - name: "Composite", - className: "AwsCredsAuthenticationDetailsProperties", - uberParent: "AuthenticationDetailsProperties", - polymorphicDiscriminator: - AuthenticationDetailsProperties.type.polymorphicDiscriminator, - modelProperties: { - ...AuthenticationDetailsProperties.type.modelProperties, - accountId: { - serializedName: "accountId", - readOnly: true, - type: { - name: "String", - }, - }, - awsAccessKeyId: { - serializedName: "awsAccessKeyId", - required: true, - type: { - name: "String", - }, - }, - awsSecretAccessKey: { - serializedName: "awsSecretAccessKey", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const AwAssumeRoleAuthenticationDetailsProperties: coreClient.CompositeMapper = - { - serializedName: "awsAssumeRole", - type: { - name: "Composite", - className: "AwAssumeRoleAuthenticationDetailsProperties", - uberParent: "AuthenticationDetailsProperties", - polymorphicDiscriminator: - AuthenticationDetailsProperties.type.polymorphicDiscriminator, - modelProperties: { - ...AuthenticationDetailsProperties.type.modelProperties, - accountId: { - serializedName: "accountId", - readOnly: true, - type: { - name: "String", - }, - }, - awsAssumeRoleArn: { - serializedName: "awsAssumeRoleArn", - required: true, - type: { - name: "String", - }, - }, - awsExternalId: { - serializedName: "awsExternalId", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const GcpCredentialsDetailsProperties: coreClient.CompositeMapper = { - serializedName: "gcpCredentials", - type: { - name: "Composite", - className: "GcpCredentialsDetailsProperties", - uberParent: "AuthenticationDetailsProperties", - polymorphicDiscriminator: - AuthenticationDetailsProperties.type.polymorphicDiscriminator, - modelProperties: { - ...AuthenticationDetailsProperties.type.modelProperties, - organizationId: { - serializedName: "organizationId", - required: true, - type: { - name: "String", - }, - }, - type: { - serializedName: "type", - required: true, - type: { - name: "String", - }, - }, - projectId: { - serializedName: "projectId", - required: true, - type: { - name: "String", - }, - }, - privateKeyId: { - serializedName: "privateKeyId", - required: true, - type: { - name: "String", - }, - }, - privateKey: { - serializedName: "privateKey", - required: true, - type: { - name: "String", - }, - }, - clientEmail: { - serializedName: "clientEmail", - required: true, - type: { - name: "String", - }, - }, - clientId: { - serializedName: "clientId", - required: true, - type: { - name: "String", - }, - }, - authUri: { - serializedName: "authUri", - required: true, - type: { - name: "String", - }, - }, - tokenUri: { - serializedName: "tokenUri", - required: true, - type: { - name: "String", - }, - }, - authProviderX509CertUrl: { - serializedName: "authProviderX509CertUrl", - required: true, - type: { - name: "String", - }, - }, - clientX509CertUrl: { - serializedName: "clientX509CertUrl", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const NotificationsSourceAlert: coreClient.CompositeMapper = { - serializedName: "Alert", - type: { - name: "Composite", - className: "NotificationsSourceAlert", - uberParent: "NotificationsSource", - polymorphicDiscriminator: NotificationsSource.type.polymorphicDiscriminator, - modelProperties: { - ...NotificationsSource.type.modelProperties, - minimalSeverity: { - serializedName: "minimalSeverity", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const NotificationsSourceAttackPath: coreClient.CompositeMapper = { - serializedName: "AttackPath", - type: { - name: "Composite", - className: "NotificationsSourceAttackPath", - uberParent: "NotificationsSource", - polymorphicDiscriminator: NotificationsSource.type.polymorphicDiscriminator, - modelProperties: { - ...NotificationsSource.type.modelProperties, - minimalRiskLevel: { - serializedName: "minimalRiskLevel", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ProxyResource: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "ProxyResource", - modelProperties: { - ...ResourceAutoGenerated.type.modelProperties, - }, - }, -}; - -export const CspmMonitorAwsOffering: coreClient.CompositeMapper = { - serializedName: "CspmMonitorAws", - type: { - name: "Composite", - className: "CspmMonitorAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - nativeCloudConnection: { - serializedName: "nativeCloudConnection", - type: { - name: "Composite", - className: "CspmMonitorAwsOfferingNativeCloudConnection", - }, - }, - }, - }, -}; - -export const DefenderForContainersAwsOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForContainersAws", - type: { - name: "Composite", - className: "DefenderForContainersAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - kubernetesService: { - serializedName: "kubernetesService", - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKubernetesService", - }, - }, - kubernetesScubaReader: { - serializedName: "kubernetesScubaReader", - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKubernetesScubaReader", - }, - }, - cloudWatchToKinesis: { - serializedName: "cloudWatchToKinesis", - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingCloudWatchToKinesis", - }, - }, - kinesisToS3: { - serializedName: "kinesisToS3", - type: { - name: "Composite", - className: "DefenderForContainersAwsOfferingKinesisToS3", - }, - }, - containerVulnerabilityAssessment: { - serializedName: "containerVulnerabilityAssessment", - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingContainerVulnerabilityAssessment", - }, - }, - containerVulnerabilityAssessmentTask: { - serializedName: "containerVulnerabilityAssessmentTask", - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingContainerVulnerabilityAssessmentTask", - }, - }, - enableContainerVulnerabilityAssessment: { - serializedName: "enableContainerVulnerabilityAssessment", - type: { - name: "Boolean", - }, - }, - autoProvisioning: { - serializedName: "autoProvisioning", - type: { - name: "Boolean", - }, - }, - kubeAuditRetentionTime: { - serializedName: "kubeAuditRetentionTime", - type: { - name: "Number", - }, - }, - scubaExternalId: { - serializedName: "scubaExternalId", - type: { - name: "String", - }, - }, - mdcContainersImageAssessment: { - serializedName: "mdcContainersImageAssessment", - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingMdcContainersImageAssessment", - }, - }, - mdcContainersAgentlessDiscoveryK8S: { - serializedName: "mdcContainersAgentlessDiscoveryK8s", - type: { - name: "Composite", - className: - "DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S", - }, - }, - }, - }, -}; - -export const DefenderForServersAwsOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForServersAws", - type: { - name: "Composite", - className: "DefenderForServersAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - defenderForServers: { - serializedName: "defenderForServers", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingDefenderForServers", - }, - }, - arcAutoProvisioning: { - serializedName: "arcAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingArcAutoProvisioning", - }, - }, - vaAutoProvisioning: { - serializedName: "vaAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVaAutoProvisioning", - }, - }, - mdeAutoProvisioning: { - serializedName: "mdeAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingMdeAutoProvisioning", - }, - }, - subPlan: { - serializedName: "subPlan", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingSubPlan", - }, - }, - vmScanners: { - serializedName: "vmScanners", - type: { - name: "Composite", - className: "DefenderForServersAwsOfferingVmScanners", - }, - }, - }, - }, -}; - -export const DefenderFoDatabasesAwsOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForDatabasesAws", - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - arcAutoProvisioning: { - serializedName: "arcAutoProvisioning", - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingArcAutoProvisioning", - }, - }, - rds: { - serializedName: "rds", - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingRds", - }, - }, - databasesDspm: { - serializedName: "databasesDspm", - type: { - name: "Composite", - className: "DefenderFoDatabasesAwsOfferingDatabasesDspm", - }, - }, - }, - }, -}; - -export const InformationProtectionAwsOffering: coreClient.CompositeMapper = { - serializedName: "InformationProtectionAws", - type: { - name: "Composite", - className: "InformationProtectionAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - informationProtection: { - serializedName: "informationProtection", - type: { - name: "Composite", - className: "InformationProtectionAwsOfferingInformationProtection", - }, - }, - }, - }, -}; - -export const CspmMonitorGcpOffering: coreClient.CompositeMapper = { - serializedName: "CspmMonitorGcp", - type: { - name: "Composite", - className: "CspmMonitorGcpOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - nativeCloudConnection: { - serializedName: "nativeCloudConnection", - type: { - name: "Composite", - className: "CspmMonitorGcpOfferingNativeCloudConnection", - }, - }, - }, - }, -}; - -export const DefenderForServersGcpOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForServersGcp", - type: { - name: "Composite", - className: "DefenderForServersGcpOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - defenderForServers: { - serializedName: "defenderForServers", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingDefenderForServers", - }, - }, - arcAutoProvisioning: { - serializedName: "arcAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingArcAutoProvisioning", - }, - }, - vaAutoProvisioning: { - serializedName: "vaAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVaAutoProvisioning", - }, - }, - mdeAutoProvisioning: { - serializedName: "mdeAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingMdeAutoProvisioning", - }, - }, - subPlan: { - serializedName: "subPlan", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingSubPlan", - }, - }, - vmScanners: { - serializedName: "vmScanners", - type: { - name: "Composite", - className: "DefenderForServersGcpOfferingVmScanners", - }, - }, - }, - }, -}; - -export const DefenderForDatabasesGcpOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForDatabasesGcp", - type: { - name: "Composite", - className: "DefenderForDatabasesGcpOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - arcAutoProvisioning: { - serializedName: "arcAutoProvisioning", - type: { - name: "Composite", - className: "DefenderForDatabasesGcpOfferingArcAutoProvisioning", - }, - }, - defenderForDatabasesArcAutoProvisioning: { - serializedName: "defenderForDatabasesArcAutoProvisioning", - type: { - name: "Composite", - className: - "DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning", - }, - }, - }, - }, -}; - -export const DefenderForContainersGcpOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForContainersGcp", - type: { - name: "Composite", - className: "DefenderForContainersGcpOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - nativeCloudConnection: { - serializedName: "nativeCloudConnection", - type: { - name: "Composite", - className: "DefenderForContainersGcpOfferingNativeCloudConnection", - }, - }, - dataPipelineNativeCloudConnection: { - serializedName: "dataPipelineNativeCloudConnection", - type: { - name: "Composite", - className: - "DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection", - }, - }, - auditLogsAutoProvisioningFlag: { - serializedName: "auditLogsAutoProvisioningFlag", - type: { - name: "Boolean", - }, - }, - defenderAgentAutoProvisioningFlag: { - serializedName: "defenderAgentAutoProvisioningFlag", - type: { - name: "Boolean", - }, - }, - policyAgentAutoProvisioningFlag: { - serializedName: "policyAgentAutoProvisioningFlag", - type: { - name: "Boolean", - }, - }, - mdcContainersImageAssessment: { - serializedName: "mdcContainersImageAssessment", - type: { - name: "Composite", - className: - "DefenderForContainersGcpOfferingMdcContainersImageAssessment", - }, - }, - mdcContainersAgentlessDiscoveryK8S: { - serializedName: "mdcContainersAgentlessDiscoveryK8s", - type: { - name: "Composite", - className: - "DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S", - }, - }, - }, - }, -}; - -export const CspmMonitorGithubOffering: coreClient.CompositeMapper = { - serializedName: "CspmMonitorGithub", - type: { - name: "Composite", - className: "CspmMonitorGithubOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, -}; - -export const CspmMonitorAzureDevOpsOffering: coreClient.CompositeMapper = { - serializedName: "CspmMonitorAzureDevOps", - type: { - name: "Composite", - className: "CspmMonitorAzureDevOpsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, -}; - -export const DefenderCspmAwsOffering: coreClient.CompositeMapper = { - serializedName: "DefenderCspmAws", - type: { - name: "Composite", - className: "DefenderCspmAwsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - vmScanners: { - serializedName: "vmScanners", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingVmScanners", - }, - }, - dataSensitivityDiscovery: { - serializedName: "dataSensitivityDiscovery", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingDataSensitivityDiscovery", - }, - }, - databasesDspm: { - serializedName: "databasesDspm", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingDatabasesDspm", - }, - }, - ciem: { - serializedName: "ciem", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingCiem", - }, - }, - mdcContainersImageAssessment: { - serializedName: "mdcContainersImageAssessment", - type: { - name: "Composite", - className: "DefenderCspmAwsOfferingMdcContainersImageAssessment", - }, - }, - mdcContainersAgentlessDiscoveryK8S: { - serializedName: "mdcContainersAgentlessDiscoveryK8s", - type: { - name: "Composite", - className: - "DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S", - }, - }, - }, - }, -}; - -export const DefenderCspmGcpOffering: coreClient.CompositeMapper = { - serializedName: "DefenderCspmGcp", - type: { - name: "Composite", - className: "DefenderCspmGcpOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - ciemDiscovery: { - serializedName: "ciemDiscovery", - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingCiemDiscovery", - }, - }, - vmScanners: { - serializedName: "vmScanners", - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingVmScanners", - }, - }, - dataSensitivityDiscovery: { - serializedName: "dataSensitivityDiscovery", - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingDataSensitivityDiscovery", - }, - }, - mdcContainersImageAssessment: { - serializedName: "mdcContainersImageAssessment", - type: { - name: "Composite", - className: "DefenderCspmGcpOfferingMdcContainersImageAssessment", - }, - }, - mdcContainersAgentlessDiscoveryK8S: { - serializedName: "mdcContainersAgentlessDiscoveryK8s", - type: { - name: "Composite", - className: - "DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S", - }, - }, - }, - }, -}; - -export const DefenderForDevOpsGithubOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForDevOpsGithub", - type: { - name: "Composite", - className: "DefenderForDevOpsGithubOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, -}; - -export const DefenderForDevOpsAzureDevOpsOffering: coreClient.CompositeMapper = - { - serializedName: "DefenderForDevOpsAzureDevOps", - type: { - name: "Composite", - className: "DefenderForDevOpsAzureDevOpsOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, - }; - -export const CspmMonitorGitLabOffering: coreClient.CompositeMapper = { - serializedName: "CspmMonitorGitLab", - type: { - name: "Composite", - className: "CspmMonitorGitLabOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, -}; - -export const DefenderForDevOpsGitLabOffering: coreClient.CompositeMapper = { - serializedName: "DefenderForDevOpsGitLab", - type: { - name: "Composite", - className: "DefenderForDevOpsGitLabOffering", - uberParent: "CloudOffering", - polymorphicDiscriminator: CloudOffering.type.polymorphicDiscriminator, - modelProperties: { - ...CloudOffering.type.modelProperties, - }, - }, -}; - -export const AwsEnvironmentData: coreClient.CompositeMapper = { - serializedName: "AwsAccount", - type: { - name: "Composite", - className: "AwsEnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: EnvironmentData.type.polymorphicDiscriminator, - modelProperties: { - ...EnvironmentData.type.modelProperties, - organizationalData: { - serializedName: "organizationalData", - type: { - name: "Composite", - className: "AwsOrganizationalData", - }, - }, - regions: { - serializedName: "regions", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - accountName: { - serializedName: "accountName", - readOnly: true, - type: { - name: "String", - }, - }, - scanInterval: { - serializedName: "scanInterval", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const GcpProjectEnvironmentData: coreClient.CompositeMapper = { - serializedName: "GcpProject", - type: { - name: "Composite", - className: "GcpProjectEnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: EnvironmentData.type.polymorphicDiscriminator, - modelProperties: { - ...EnvironmentData.type.modelProperties, - organizationalData: { - serializedName: "organizationalData", - type: { - name: "Composite", - className: "GcpOrganizationalData", - }, - }, - projectDetails: { - serializedName: "projectDetails", - type: { - name: "Composite", - className: "GcpProjectDetails", - }, - }, - scanInterval: { - serializedName: "scanInterval", - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const GithubScopeEnvironmentData: coreClient.CompositeMapper = { - serializedName: "GithubScope", - type: { - name: "Composite", - className: "GithubScopeEnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: EnvironmentData.type.polymorphicDiscriminator, - modelProperties: { - ...EnvironmentData.type.modelProperties, - }, - }, -}; - -export const AzureDevOpsScopeEnvironmentData: coreClient.CompositeMapper = { - serializedName: "AzureDevOpsScope", - type: { - name: "Composite", - className: "AzureDevOpsScopeEnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: EnvironmentData.type.polymorphicDiscriminator, - modelProperties: { - ...EnvironmentData.type.modelProperties, - }, - }, -}; - -export const GitlabScopeEnvironmentData: coreClient.CompositeMapper = { - serializedName: "GitlabScope", - type: { - name: "Composite", - className: "GitlabScopeEnvironmentData", - uberParent: "EnvironmentData", - polymorphicDiscriminator: EnvironmentData.type.polymorphicDiscriminator, - modelProperties: { - ...EnvironmentData.type.modelProperties, - }, - }, -}; - -export const ThresholdCustomAlertRule: coreClient.CompositeMapper = { - serializedName: "ThresholdCustomAlertRule", - type: { - name: "Composite", - className: "ThresholdCustomAlertRule", - uberParent: "CustomAlertRule", - polymorphicDiscriminator: { - serializedName: "ruleType", - clientName: "ruleType", - }, - modelProperties: { - ...CustomAlertRule.type.modelProperties, - minThreshold: { - serializedName: "minThreshold", - required: true, - type: { - name: "Number", - }, - }, - maxThreshold: { - serializedName: "maxThreshold", - required: true, - type: { - name: "Number", - }, - }, - }, - }, -}; - -export const ListCustomAlertRule: coreClient.CompositeMapper = { - serializedName: "ListCustomAlertRule", - type: { - name: "Composite", - className: "ListCustomAlertRule", - uberParent: "CustomAlertRule", - polymorphicDiscriminator: { - serializedName: "ruleType", - clientName: "ruleType", - }, - modelProperties: { - ...CustomAlertRule.type.modelProperties, - valueType: { - serializedName: "valueType", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const UpdateIotSecuritySolutionData: coreClient.CompositeMapper = { - 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 SecurityAssessmentMetadataPropertiesResponse: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentMetadataPropertiesResponse", - modelProperties: { - ...SecurityAssessmentMetadataProperties.type.modelProperties, - publishDates: { - serializedName: "publishDates", - type: { - name: "Composite", - className: - "SecurityAssessmentMetadataPropertiesResponsePublishDates", - }, - }, - plannedDeprecationDate: { - constraints: { - Pattern: new RegExp("^[0-9]{2}\\/[0-9]{4}$"), - }, - serializedName: "plannedDeprecationDate", - type: { - name: "String", - }, - }, - tactics: { - serializedName: "tactics", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - techniques: { - serializedName: "techniques", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }; - -export const AssessmentStatusResponse: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AssessmentStatusResponse", - modelProperties: { - ...AssessmentStatus.type.modelProperties, - firstEvaluationDate: { - serializedName: "firstEvaluationDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - statusChangeDate: { - serializedName: "statusChangeDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - }, - }, -}; - -export const SecurityAssessmentPropertiesResponse: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "SecurityAssessmentPropertiesResponse", - modelProperties: { - ...SecurityAssessmentPropertiesBase.type.modelProperties, - status: { - serializedName: "status", - type: { - name: "Composite", - className: "AssessmentStatusResponse", - }, - }, - }, - }, - }; - -export const SecurityAssessmentProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityAssessmentProperties", - modelProperties: { - ...SecurityAssessmentPropertiesBase.type.modelProperties, - status: { - serializedName: "status", - type: { - name: "Composite", - className: "AssessmentStatus", - }, - }, - }, - }, -}; - -export const AzureResourceIdentifier: coreClient.CompositeMapper = { - serializedName: "AzureResource", - type: { - name: "Composite", - className: "AzureResourceIdentifier", - uberParent: "ResourceIdentifier", - polymorphicDiscriminator: ResourceIdentifier.type.polymorphicDiscriminator, - modelProperties: { - ...ResourceIdentifier.type.modelProperties, - azureResourceId: { - serializedName: "azureResourceId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const LogAnalyticsIdentifier: coreClient.CompositeMapper = { - serializedName: "LogAnalytics", - type: { - name: "Composite", - className: "LogAnalyticsIdentifier", - uberParent: "ResourceIdentifier", - polymorphicDiscriminator: ResourceIdentifier.type.polymorphicDiscriminator, - modelProperties: { - ...ResourceIdentifier.type.modelProperties, - workspaceId: { - serializedName: "workspaceId", - readOnly: true, - type: { - name: "String", - }, - }, - workspaceSubscriptionId: { - constraints: { - Pattern: new RegExp( - "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - ), - }, - serializedName: "workspaceSubscriptionId", - readOnly: true, - type: { - name: "String", - }, - }, - workspaceResourceGroup: { - serializedName: "workspaceResourceGroup", - readOnly: true, - type: { - name: "String", - }, - }, - agentId: { - serializedName: "agentId", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AlertSimulatorBundlesRequestProperties: coreClient.CompositeMapper = - { - serializedName: "Bundles", - type: { - name: "Composite", - className: "AlertSimulatorBundlesRequestProperties", - uberParent: "AlertSimulatorRequestProperties", - additionalProperties: { type: { name: "Object" } }, - polymorphicDiscriminator: - AlertSimulatorRequestProperties.type.polymorphicDiscriminator, - modelProperties: { - ...AlertSimulatorRequestProperties.type.modelProperties, - bundles: { - serializedName: "bundles", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, - }; - -export const ServerVulnerabilityAssessmentsSetting: coreClient.CompositeMapper = - { - serializedName: "ServerVulnerabilityAssessmentsSetting", - type: { - name: "Composite", - className: "ServerVulnerabilityAssessmentsSetting", - uberParent: "ResourceAutoGenerated2", - polymorphicDiscriminator: { - serializedName: "kind", - clientName: "kind", - }, - modelProperties: { - ...ResourceAutoGenerated2.type.modelProperties, - kind: { - serializedName: "kind", - required: true, - type: { - name: "String", - }, - }, - }, - }, - }; - -export const AwsOrganizationalDataMaster: coreClient.CompositeMapper = { - serializedName: "Organization", - type: { - name: "Composite", - className: "AwsOrganizationalDataMaster", - uberParent: "AwsOrganizationalData", - polymorphicDiscriminator: - AwsOrganizationalData.type.polymorphicDiscriminator, - modelProperties: { - ...AwsOrganizationalData.type.modelProperties, - stacksetName: { - serializedName: "stacksetName", - type: { - name: "String", - }, - }, - excludedAccountIds: { - serializedName: "excludedAccountIds", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const AwsOrganizationalDataMember: coreClient.CompositeMapper = { - serializedName: "Member", - type: { - name: "Composite", - className: "AwsOrganizationalDataMember", - uberParent: "AwsOrganizationalData", - polymorphicDiscriminator: - AwsOrganizationalData.type.polymorphicDiscriminator, - modelProperties: { - ...AwsOrganizationalData.type.modelProperties, - parentHierarchyId: { - serializedName: "parentHierarchyId", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GcpOrganizationalDataOrganization: coreClient.CompositeMapper = { - serializedName: "Organization", - type: { - name: "Composite", - className: "GcpOrganizationalDataOrganization", - uberParent: "GcpOrganizationalData", - polymorphicDiscriminator: - GcpOrganizationalData.type.polymorphicDiscriminator, - modelProperties: { - ...GcpOrganizationalData.type.modelProperties, - excludedProjectNumbers: { - serializedName: "excludedProjectNumbers", - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - serviceAccountEmailAddress: { - serializedName: "serviceAccountEmailAddress", - type: { - name: "String", - }, - }, - workloadIdentityProviderId: { - serializedName: "workloadIdentityProviderId", - type: { - name: "String", - }, - }, - organizationName: { - serializedName: "organizationName", - readOnly: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GcpOrganizationalDataMember: coreClient.CompositeMapper = { - serializedName: "Member", - type: { - name: "Composite", - className: "GcpOrganizationalDataMember", - uberParent: "GcpOrganizationalData", - polymorphicDiscriminator: - GcpOrganizationalData.type.polymorphicDiscriminator, - modelProperties: { - ...GcpOrganizationalData.type.modelProperties, - parentHierarchyId: { - serializedName: "parentHierarchyId", - type: { - name: "String", - }, - }, - managementProjectNumber: { - serializedName: "managementProjectNumber", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const CefSolutionProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "CefSolutionProperties", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - ...ExternalSecuritySolutionProperties.type.modelProperties, - hostname: { - serializedName: "hostname", - type: { - name: "String", - }, - }, - agent: { - serializedName: "agent", - type: { - name: "String", - }, - }, - lastEventReceived: { - serializedName: "lastEventReceived", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AtaSolutionProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AtaSolutionProperties", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - ...ExternalSecuritySolutionProperties.type.modelProperties, - lastEventReceived: { - serializedName: "lastEventReceived", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AadSolutionProperties: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AadSolutionProperties", - additionalProperties: { type: { name: "Object" } }, - modelProperties: { - ...ExternalSecuritySolutionProperties.type.modelProperties, - ...AadConnectivityStateAutoGenerated.type.modelProperties, - }, - }, -}; - -export const Automation: coreClient.CompositeMapper = { - 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 SecurityConnector: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "SecurityConnector", - modelProperties: { - ...TrackedResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - hierarchyIdentifier: { - serializedName: "properties.hierarchyIdentifier", - type: { - name: "String", - }, - }, - hierarchyIdentifierTrialEndDate: { - serializedName: "properties.hierarchyIdentifierTrialEndDate", - readOnly: true, - type: { - name: "DateTime", - }, - }, - environmentName: { - serializedName: "properties.environmentName", - type: { - name: "String", - }, - }, - offerings: { - serializedName: "properties.offerings", - type: { - name: "Sequence", - element: { - type: { - name: "Composite", - className: "CloudOffering", - }, - }, - }, - }, - environmentData: { - serializedName: "properties.environmentData", - type: { - name: "Composite", - className: "EnvironmentData", - }, - }, - }, - }, -}; - -export const CefExternalSecuritySolution: coreClient.CompositeMapper = { - serializedName: "CEF", - type: { - name: "Composite", - className: "CefExternalSecuritySolution", - uberParent: "ExternalSecuritySolution", - polymorphicDiscriminator: - ExternalSecuritySolution.type.polymorphicDiscriminator, - modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "CefSolutionProperties", - }, - }, - }, - }, -}; - -export const AtaExternalSecuritySolution: coreClient.CompositeMapper = { - serializedName: "ATA", - type: { - name: "Composite", - className: "AtaExternalSecuritySolution", - uberParent: "ExternalSecuritySolution", - polymorphicDiscriminator: - ExternalSecuritySolution.type.polymorphicDiscriminator, - modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AtaSolutionProperties", - }, - }, - }, - }, -}; - -export const AadExternalSecuritySolution: coreClient.CompositeMapper = { - serializedName: "AAD", - type: { - name: "Composite", - className: "AadExternalSecuritySolution", - uberParent: "ExternalSecuritySolution", - polymorphicDiscriminator: - ExternalSecuritySolution.type.polymorphicDiscriminator, - modelProperties: { - ...ExternalSecuritySolution.type.modelProperties, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AadSolutionProperties", - }, - }, - }, - }, -}; - -export const DataExportSettings: coreClient.CompositeMapper = { - serializedName: "DataExportSettings", - type: { - name: "Composite", - className: "DataExportSettings", - uberParent: "Setting", - polymorphicDiscriminator: Setting.type.polymorphicDiscriminator, - modelProperties: { - ...Setting.type.modelProperties, - enabled: { - serializedName: "properties.enabled", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const AlertSyncSettings: coreClient.CompositeMapper = { - serializedName: "AlertSyncSettings", - type: { - name: "Composite", - className: "AlertSyncSettings", - uberParent: "Setting", - polymorphicDiscriminator: Setting.type.polymorphicDiscriminator, - modelProperties: { - ...Setting.type.modelProperties, - enabled: { - serializedName: "properties.enabled", - type: { - name: "Boolean", - }, - }, - }, - }, -}; - -export const OnPremiseSqlResourceDetails: coreClient.CompositeMapper = { - serializedName: "OnPremiseSql", - type: { - name: "Composite", - className: "OnPremiseSqlResourceDetails", - uberParent: "OnPremiseResourceDetails", - polymorphicDiscriminator: - OnPremiseResourceDetails.type.polymorphicDiscriminator, - modelProperties: { - ...OnPremiseResourceDetails.type.modelProperties, - serverName: { - serializedName: "serverName", - required: true, - type: { - name: "String", - }, - }, - databaseName: { - serializedName: "databaseName", - required: true, - type: { - name: "String", - }, - }, - }, - }, -}; - -export const AzureDevOpsOrg: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsOrg", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AzureDevOpsOrgProperties", - }, - }, - }, - }, -}; - -export const AzureDevOpsProject: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsProject", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AzureDevOpsProjectProperties", - }, - }, - }, - }, -}; - -export const AzureDevOpsRepository: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "AzureDevOpsRepository", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "AzureDevOpsRepositoryProperties", - }, - }, - }, - }, -}; - -export const DevOpsConfiguration: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "DevOpsConfiguration", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "DevOpsConfigurationProperties", - }, - }, - }, - }, -}; - -export const GitHubOwner: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubOwner", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "GitHubOwnerProperties", - }, - }, - }, - }, -}; - -export const GitHubRepository: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitHubRepository", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "GitHubRepositoryProperties", - }, - }, - }, - }, -}; - -export const GitLabGroup: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabGroup", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "GitLabGroupProperties", - }, - }, - }, - }, -}; - -export const GitLabProject: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GitLabProject", - modelProperties: { - ...ProxyResource.type.modelProperties, - systemData: { - serializedName: "systemData", - type: { - name: "Composite", - className: "SystemData", - }, - }, - properties: { - serializedName: "properties", - type: { - name: "Composite", - className: "GitLabProjectProperties", - }, - }, - }, - }, -}; - -export const TimeWindowCustomAlertRule: coreClient.CompositeMapper = { - serializedName: "TimeWindowCustomAlertRule", - type: { - name: "Composite", - className: "TimeWindowCustomAlertRule", - uberParent: "ThresholdCustomAlertRule", - polymorphicDiscriminator: { - serializedName: "ruleType", - clientName: "ruleType", - }, - modelProperties: { - ...ThresholdCustomAlertRule.type.modelProperties, - timeWindowSize: { - serializedName: "timeWindowSize", - required: true, - type: { - name: "TimeSpan", - }, - }, - }, - }, -}; - -export const AllowlistCustomAlertRule: coreClient.CompositeMapper = { - serializedName: "AllowlistCustomAlertRule", - type: { - name: "Composite", - className: "AllowlistCustomAlertRule", - uberParent: "ListCustomAlertRule", - polymorphicDiscriminator: { - serializedName: "ruleType", - clientName: "ruleType", - }, - modelProperties: { - ...ListCustomAlertRule.type.modelProperties, - allowlistValues: { - serializedName: "allowlistValues", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const DenylistCustomAlertRule: coreClient.CompositeMapper = { - serializedName: "DenylistCustomAlertRule", - type: { - name: "Composite", - className: "DenylistCustomAlertRule", - uberParent: "ListCustomAlertRule", - polymorphicDiscriminator: ListCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...ListCustomAlertRule.type.modelProperties, - denylistValues: { - serializedName: "denylistValues", - required: true, - type: { - name: "Sequence", - element: { - type: { - name: "String", - }, - }, - }, - }, - }, - }, -}; - -export const AzureServersSetting: coreClient.CompositeMapper = { - serializedName: "AzureServersSetting", - type: { - name: "Composite", - className: "AzureServersSetting", - uberParent: "ServerVulnerabilityAssessmentsSetting", - polymorphicDiscriminator: - ServerVulnerabilityAssessmentsSetting.type.polymorphicDiscriminator, - modelProperties: { - ...ServerVulnerabilityAssessmentsSetting.type.modelProperties, - selectedProvider: { - serializedName: "properties.selectedProvider", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const ActiveConnectionsNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "ActiveConnectionsNotInAllowedRange", - type: { - name: "Composite", - className: "ActiveConnectionsNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const AmqpC2DMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "AmqpC2DMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "AmqpC2DMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const MqttC2DMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "MqttC2DMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "MqttC2DMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const HttpC2DMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "HttpC2DMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "HttpC2DMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const AmqpC2DRejectedMessagesNotInAllowedRange: coreClient.CompositeMapper = - { - serializedName: "AmqpC2DRejectedMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "AmqpC2DRejectedMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, - }; - -export const MqttC2DRejectedMessagesNotInAllowedRange: coreClient.CompositeMapper = - { - serializedName: "MqttC2DRejectedMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "MqttC2DRejectedMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, - }; - -export const HttpC2DRejectedMessagesNotInAllowedRange: coreClient.CompositeMapper = - { - serializedName: "HttpC2DRejectedMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "HttpC2DRejectedMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, - }; - -export const AmqpD2CMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "AmqpD2CMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "AmqpD2CMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const MqttD2CMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "MqttD2CMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "MqttD2CMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const HttpD2CMessagesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "HttpD2CMessagesNotInAllowedRange", - type: { - name: "Composite", - className: "HttpD2CMessagesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const DirectMethodInvokesNotInAllowedRange: coreClient.CompositeMapper = - { - serializedName: "DirectMethodInvokesNotInAllowedRange", - type: { - name: "Composite", - className: "DirectMethodInvokesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, - }; - -export const FailedLocalLoginsNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "FailedLocalLoginsNotInAllowedRange", - type: { - name: "Composite", - className: "FailedLocalLoginsNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const FileUploadsNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "FileUploadsNotInAllowedRange", - type: { - name: "Composite", - className: "FileUploadsNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const QueuePurgesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "QueuePurgesNotInAllowedRange", - type: { - name: "Composite", - className: "QueuePurgesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const TwinUpdatesNotInAllowedRange: coreClient.CompositeMapper = { - serializedName: "TwinUpdatesNotInAllowedRange", - type: { - name: "Composite", - className: "TwinUpdatesNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const UnauthorizedOperationsNotInAllowedRange: coreClient.CompositeMapper = - { - serializedName: "UnauthorizedOperationsNotInAllowedRange", - type: { - name: "Composite", - className: "UnauthorizedOperationsNotInAllowedRange", - uberParent: "TimeWindowCustomAlertRule", - polymorphicDiscriminator: - TimeWindowCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...TimeWindowCustomAlertRule.type.modelProperties, - }, - }, - }; - -export const ConnectionToIpNotAllowed: coreClient.CompositeMapper = { - serializedName: "ConnectionToIpNotAllowed", - type: { - name: "Composite", - className: "ConnectionToIpNotAllowed", - uberParent: "AllowlistCustomAlertRule", - polymorphicDiscriminator: - AllowlistCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...AllowlistCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const ConnectionFromIpNotAllowed: coreClient.CompositeMapper = { - serializedName: "ConnectionFromIpNotAllowed", - type: { - name: "Composite", - className: "ConnectionFromIpNotAllowed", - uberParent: "AllowlistCustomAlertRule", - polymorphicDiscriminator: - AllowlistCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...AllowlistCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const LocalUserNotAllowed: coreClient.CompositeMapper = { - serializedName: "LocalUserNotAllowed", - type: { - name: "Composite", - className: "LocalUserNotAllowed", - uberParent: "AllowlistCustomAlertRule", - polymorphicDiscriminator: - AllowlistCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...AllowlistCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const ProcessNotAllowed: coreClient.CompositeMapper = { - serializedName: "ProcessNotAllowed", - type: { - name: "Composite", - className: "ProcessNotAllowed", - uberParent: "AllowlistCustomAlertRule", - polymorphicDiscriminator: - AllowlistCustomAlertRule.type.polymorphicDiscriminator, - modelProperties: { - ...AllowlistCustomAlertRule.type.modelProperties, - }, - }, -}; - -export const GovernanceRulesDeleteHeaders: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRulesDeleteHeaders", - modelProperties: { - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceRulesExecuteHeaders: coreClient.CompositeMapper = { - type: { - name: "Composite", - className: "GovernanceRulesExecuteHeaders", - modelProperties: { - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - }, - }, -}; - -export const GovernanceRulesOperationResultsHeaders: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "GovernanceRulesOperationResultsHeaders", - modelProperties: { - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - }, - }, - }; - -export const APICollectionsOnboardAzureApiManagementApiHeaders: coreClient.CompositeMapper = - { - type: { - name: "Composite", - className: "APICollectionsOnboardAzureApiManagementApiHeaders", - modelProperties: { - location: { - serializedName: "location", - type: { - name: "String", - }, - }, - }, - }, - }; - -export let discriminators = { - AutomationAction: AutomationAction, - ResourceDetails: ResourceDetails, - AdditionalData: AdditionalData, - AuthenticationDetailsProperties: AuthenticationDetailsProperties, - NotificationsSource: NotificationsSource, - CloudOffering: CloudOffering, - EnvironmentData: EnvironmentData, - CustomAlertRule: CustomAlertRule, - ResourceIdentifier: ResourceIdentifier, - AlertSimulatorRequestProperties: AlertSimulatorRequestProperties, - AwsOrganizationalData: AwsOrganizationalData, - GcpOrganizationalData: GcpOrganizationalData, - "Resource.Setting": Setting, - "AutomationAction.LogicApp": AutomationActionLogicApp, - "AutomationAction.EventHub": AutomationActionEventHub, - "AutomationAction.Workspace": AutomationActionWorkspace, - "ResourceDetails.Azure": AzureResourceDetails, - "ResourceDetails.OnPremise": OnPremiseResourceDetails, - "AdditionalData.SqlServerVulnerability": SqlServerVulnerabilityProperties, - "AdditionalData.ContainerRegistryVulnerability": - ContainerRegistryVulnerabilityProperties, - "AdditionalData.ServerVulnerabilityAssessment": ServerVulnerabilityProperties, - "AuthenticationDetailsProperties.awsCreds": - AwsCredsAuthenticationDetailsProperties, - "AuthenticationDetailsProperties.awsAssumeRole": - AwAssumeRoleAuthenticationDetailsProperties, - "AuthenticationDetailsProperties.gcpCredentials": - GcpCredentialsDetailsProperties, - "NotificationsSource.Alert": NotificationsSourceAlert, - "NotificationsSource.AttackPath": NotificationsSourceAttackPath, - "CloudOffering.CspmMonitorAws": CspmMonitorAwsOffering, - "CloudOffering.DefenderForContainersAws": DefenderForContainersAwsOffering, - "CloudOffering.DefenderForServersAws": DefenderForServersAwsOffering, - "CloudOffering.DefenderForDatabasesAws": DefenderFoDatabasesAwsOffering, - "CloudOffering.InformationProtectionAws": InformationProtectionAwsOffering, - "CloudOffering.CspmMonitorGcp": CspmMonitorGcpOffering, - "CloudOffering.DefenderForServersGcp": DefenderForServersGcpOffering, - "CloudOffering.DefenderForDatabasesGcp": DefenderForDatabasesGcpOffering, - "CloudOffering.DefenderForContainersGcp": DefenderForContainersGcpOffering, - "CloudOffering.CspmMonitorGithub": CspmMonitorGithubOffering, - "CloudOffering.CspmMonitorAzureDevOps": CspmMonitorAzureDevOpsOffering, - "CloudOffering.DefenderCspmAws": DefenderCspmAwsOffering, - "CloudOffering.DefenderCspmGcp": DefenderCspmGcpOffering, - "CloudOffering.DefenderForDevOpsGithub": DefenderForDevOpsGithubOffering, - "CloudOffering.DefenderForDevOpsAzureDevOps": - DefenderForDevOpsAzureDevOpsOffering, - "CloudOffering.CspmMonitorGitLab": CspmMonitorGitLabOffering, - "CloudOffering.DefenderForDevOpsGitLab": DefenderForDevOpsGitLabOffering, - "EnvironmentData.AwsAccount": AwsEnvironmentData, - "EnvironmentData.GcpProject": GcpProjectEnvironmentData, - "EnvironmentData.GithubScope": GithubScopeEnvironmentData, - "EnvironmentData.AzureDevOpsScope": AzureDevOpsScopeEnvironmentData, - "EnvironmentData.GitlabScope": GitlabScopeEnvironmentData, - "CustomAlertRule.ThresholdCustomAlertRule": ThresholdCustomAlertRule, - "CustomAlertRule.ListCustomAlertRule": ListCustomAlertRule, - "ResourceIdentifier.AzureResource": AzureResourceIdentifier, - "ResourceIdentifier.LogAnalytics": LogAnalyticsIdentifier, - "AlertSimulatorRequestProperties.Bundles": - AlertSimulatorBundlesRequestProperties, - "ResourceAutoGenerated2.ServerVulnerabilityAssessmentsSetting": - ServerVulnerabilityAssessmentsSetting, - "AwsOrganizationalData.Organization": AwsOrganizationalDataMaster, - "AwsOrganizationalData.Member": AwsOrganizationalDataMember, - "GcpOrganizationalData.Organization": GcpOrganizationalDataOrganization, - "GcpOrganizationalData.Member": GcpOrganizationalDataMember, - "ExternalSecuritySolution.CEF": CefExternalSecuritySolution, - "ExternalSecuritySolution.ATA": AtaExternalSecuritySolution, - "ExternalSecuritySolution.AAD": AadExternalSecuritySolution, - "Setting.DataExportSettings": DataExportSettings, - "Setting.AlertSyncSettings": AlertSyncSettings, - "OnPremiseResourceDetails.OnPremiseSql": OnPremiseSqlResourceDetails, - "ThresholdCustomAlertRule.TimeWindowCustomAlertRule": - TimeWindowCustomAlertRule, - "ListCustomAlertRule.AllowlistCustomAlertRule": AllowlistCustomAlertRule, - "ListCustomAlertRule.DenylistCustomAlertRule": DenylistCustomAlertRule, - "ServerVulnerabilityAssessmentsSetting.AzureServersSetting": - AzureServersSetting, - "TimeWindowCustomAlertRule.ActiveConnectionsNotInAllowedRange": - ActiveConnectionsNotInAllowedRange, - "TimeWindowCustomAlertRule.AmqpC2DMessagesNotInAllowedRange": - AmqpC2DMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.MqttC2DMessagesNotInAllowedRange": - MqttC2DMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.HttpC2DMessagesNotInAllowedRange": - HttpC2DMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.AmqpC2DRejectedMessagesNotInAllowedRange": - AmqpC2DRejectedMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.MqttC2DRejectedMessagesNotInAllowedRange": - MqttC2DRejectedMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.HttpC2DRejectedMessagesNotInAllowedRange": - HttpC2DRejectedMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.AmqpD2CMessagesNotInAllowedRange": - AmqpD2CMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.MqttD2CMessagesNotInAllowedRange": - MqttD2CMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.HttpD2CMessagesNotInAllowedRange": - HttpD2CMessagesNotInAllowedRange, - "TimeWindowCustomAlertRule.DirectMethodInvokesNotInAllowedRange": - DirectMethodInvokesNotInAllowedRange, - "TimeWindowCustomAlertRule.FailedLocalLoginsNotInAllowedRange": - FailedLocalLoginsNotInAllowedRange, - "TimeWindowCustomAlertRule.FileUploadsNotInAllowedRange": - FileUploadsNotInAllowedRange, - "TimeWindowCustomAlertRule.QueuePurgesNotInAllowedRange": - QueuePurgesNotInAllowedRange, - "TimeWindowCustomAlertRule.TwinUpdatesNotInAllowedRange": - TwinUpdatesNotInAllowedRange, - "TimeWindowCustomAlertRule.UnauthorizedOperationsNotInAllowedRange": - UnauthorizedOperationsNotInAllowedRange, - "AllowlistCustomAlertRule.ConnectionToIpNotAllowed": ConnectionToIpNotAllowed, - "AllowlistCustomAlertRule.ConnectionFromIpNotAllowed": - ConnectionFromIpNotAllowed, - "AllowlistCustomAlertRule.LocalUserNotAllowed": LocalUserNotAllowed, - "AllowlistCustomAlertRule.ProcessNotAllowed": ProcessNotAllowed, -}; diff --git a/sdk/security/arm-security/src/models/mdeOnboardingAPI/index.ts b/sdk/security/arm-security/src/models/mdeOnboardingAPI/index.ts new file mode 100644 index 000000000000..ed2da0d74eec --- /dev/null +++ b/sdk/security/arm-security/src/models/mdeOnboardingAPI/index.ts @@ -0,0 +1,8 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + MdeOnboardingData, + MdeOnboardingDataProperties, + MdeOnboardingDataList, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/mdeOnboardingAPI/models.ts b/sdk/security/arm-security/src/models/mdeOnboardingAPI/models.ts new file mode 100644 index 000000000000..b16bfc5f8fe4 --- /dev/null +++ b/sdk/security/arm-security/src/models/mdeOnboardingAPI/models.ts @@ -0,0 +1,89 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProxyResource, systemDataDeserializer } from "../models.js"; +import { stringToUint8Array } from "@azure/core-util"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The resource of the configuration or data needed to onboard the machine to MDE */ +export interface MdeOnboardingData extends ProxyResource { + /** The onboarding package used to onboard Windows machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ + onboardingPackageWindows?: Uint8Array; + /** The onboarding package used to onboard Linux machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ + onboardingPackageLinux?: Uint8Array; +} + +export function mdeOnboardingDataDeserializer(item: any): MdeOnboardingData { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _mdeOnboardingDataPropertiesDeserializer(item["properties"])), + }; +} + +/** Properties of the MDE configuration or data parameter needed to onboard the machine to MDE */ +export interface MdeOnboardingDataProperties { + /** The onboarding package used to onboard Windows machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ + onboardingPackageWindows?: Uint8Array; + /** The onboarding package used to onboard Linux machines to MDE, coded in base64. This can also be used for onboarding using the dedicated VM Extension */ + onboardingPackageLinux?: Uint8Array; +} + +export function mdeOnboardingDataPropertiesDeserializer(item: any): MdeOnboardingDataProperties { + return { + onboardingPackageWindows: !item["onboardingPackageWindows"] + ? item["onboardingPackageWindows"] + : typeof item["onboardingPackageWindows"] === "string" + ? stringToUint8Array(item["onboardingPackageWindows"], "base64") + : item["onboardingPackageWindows"], + onboardingPackageLinux: !item["onboardingPackageLinux"] + ? item["onboardingPackageLinux"] + : typeof item["onboardingPackageLinux"] === "string" + ? stringToUint8Array(item["onboardingPackageLinux"], "base64") + : item["onboardingPackageLinux"], + }; +} + +/** List of all MDE onboarding data resources */ +export interface MdeOnboardingDataList { + /** List of the resources of the configuration or data needed to onboard the machine to MDE */ + value?: MdeOnboardingData[]; +} + +export function mdeOnboardingDataListDeserializer(item: any): MdeOnboardingDataList { + return { + value: !item["value"] ? item["value"] : mdeOnboardingDataArrayDeserializer(item["value"]), + }; +} + +export function mdeOnboardingDataArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return mdeOnboardingDataDeserializer(item); + }); +} + +export function _mdeOnboardingDataPropertiesDeserializer(item: any) { + return { + onboardingPackageWindows: !item["onboardingPackageWindows"] + ? item["onboardingPackageWindows"] + : typeof item["onboardingPackageWindows"] === "string" + ? stringToUint8Array(item["onboardingPackageWindows"], "base64") + : item["onboardingPackageWindows"], + onboardingPackageLinux: !item["onboardingPackageLinux"] + ? item["onboardingPackageLinux"] + : typeof item["onboardingPackageLinux"] === "string" + ? stringToUint8Array(item["onboardingPackageLinux"], "base64") + : item["onboardingPackageLinux"], + }; +} diff --git a/sdk/security/arm-security/src/models/models.ts b/sdk/security/arm-security/src/models/models.ts new file mode 100644 index 000000000000..c3166206bfa0 --- /dev/null +++ b/sdk/security/arm-security/src/models/models.ts @@ -0,0 +1,649 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { + PrivateLinkGroupResource, + privateLinkGroupResourceArrayDeserializer, + PrivateEndpointConnection, + privateEndpointConnectionArrayDeserializer, +} from "./privateLinksAPI/models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */ +export interface ProxyResource extends Resource {} + +export function proxyResourceSerializer(_item: ProxyResource): any { + return {}; +} + +export function proxyResourceDeserializer(item: any): ProxyResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** Common fields that are returned in the response for all Azure Resource Manager resources */ +export interface Resource { + /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */ + readonly id?: string; + /** The name of the resource */ + readonly name?: string; + /** The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ + readonly type?: string; + /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */ + readonly systemData?: SystemData; +} + +export function resourceSerializer(_item: Resource): any { + return {}; +} + +export function resourceDeserializer(item: any): Resource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** Metadata pertaining to creation and last modification of the resource. */ +export interface SystemData { + /** The identity that created the resource. */ + createdBy?: string; + /** The type of identity that created the resource. */ + createdByType?: CreatedByType; + /** The timestamp of resource creation (UTC). */ + createdAt?: Date; + /** The identity that last modified the resource. */ + lastModifiedBy?: string; + /** The type of identity that last modified the resource. */ + lastModifiedByType?: CreatedByType; + /** The timestamp of resource last modification (UTC) */ + lastModifiedAt?: Date; +} + +export function systemDataDeserializer(item: any): SystemData { + return { + createdBy: item["createdBy"], + createdByType: item["createdByType"], + createdAt: !item["createdAt"] ? item["createdAt"] : new Date(item["createdAt"]), + lastModifiedBy: item["lastModifiedBy"], + lastModifiedByType: item["lastModifiedByType"], + lastModifiedAt: !item["lastModifiedAt"] + ? item["lastModifiedAt"] + : new Date(item["lastModifiedAt"]), + }; +} + +/** The kind of entity that created the resource. */ +export enum KnownCreatedByType { + /** The entity was created by a user. */ + User = "User", + /** The entity was created by an application. */ + Application = "Application", + /** The entity was created by a managed identity. */ + ManagedIdentity = "ManagedIdentity", + /** The entity was created by a key. */ + Key = "Key", +} + +/** + * The kind of entity that created the resource. \ + * {@link KnownCreatedByType} can be used interchangeably with CreatedByType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **User**: The entity was created by a user. \ + * **Application**: The entity was created by an application. \ + * **ManagedIdentity**: The entity was created by a managed identity. \ + * **Key**: The entity was created by a key. + */ +export type CreatedByType = string; + +export function errorAdditionalInfoArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return errorAdditionalInfoDeserializer(item); + }); +} + +/** The resource management error additional info. */ +export interface ErrorAdditionalInfo { + /** The additional info type. */ + readonly type?: string; + /** The additional info. */ + readonly info?: any; +} + +export function errorAdditionalInfoDeserializer(item: any): ErrorAdditionalInfo { + return { + type: item["type"], + info: item["info"], + }; +} + +/** Common error response for all Azure Resource Manager APIs to return error details for failed operations. */ +export interface ErrorResponse { + /** The error object. */ + error?: ErrorDetail; +} + +export function errorResponseDeserializer(item: any): ErrorResponse { + return { + error: !item["error"] ? item["error"] : errorDetailDeserializer(item["error"]), + }; +} + +/** The error detail. */ +export interface ErrorDetail { + /** The error code. */ + readonly code?: string; + /** The error message. */ + readonly message?: string; + /** The error target. */ + readonly target?: string; + /** The error details. */ + readonly details?: ErrorDetail[]; + /** The error additional info. */ + readonly additionalInfo?: ErrorAdditionalInfo[]; +} + +export function errorDetailDeserializer(item: any): ErrorDetail { + return { + code: item["code"], + message: item["message"], + target: item["target"], + details: !item["details"] ? item["details"] : errorDetailArrayDeserializer(item["details"]), + additionalInfo: !item["additionalInfo"] + ? item["additionalInfo"] + : errorAdditionalInfoArrayDeserializer(item["additionalInfo"]), + }; +} + +export function errorDetailArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return errorDetailDeserializer(item); + }); +} + +/** The base extension resource. */ +export interface ExtensionResource extends Resource {} + +export function extensionResourceSerializer(_item: ExtensionResource): any { + return {}; +} + +export function extensionResourceDeserializer(item: any): ExtensionResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** A list of REST API operations supported by an Azure Resource Provider. It contains an URL link to get the next set of results. */ +export interface _OperationListResult { + /** The Operation items on this page */ + value: Operation[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _operationListResultDeserializer(item: any): _OperationListResult { + return { + value: operationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function operationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return operationDeserializer(item); + }); +} + +/** Details of a REST API operation, returned from the Resource Provider Operations API */ +export interface Operation { + /** The name of the operation, as per Resource-Based Access Control (RBAC). Examples: "Microsoft.Compute/virtualMachines/write", "Microsoft.Compute/virtualMachines/capture/action" */ + readonly name?: string; + /** Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure Resource Manager/control-plane operations. */ + readonly isDataAction?: boolean; + /** Localized display information for this particular operation. */ + display?: OperationDisplay; + /** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ + readonly origin?: Origin; + /** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ + readonly actionType?: ArmActionType; +} + +export function operationDeserializer(item: any): Operation { + return { + name: item["name"], + isDataAction: item["isDataAction"], + display: !item["display"] ? item["display"] : operationDisplayDeserializer(item["display"]), + origin: item["origin"], + actionType: item["actionType"], + }; +} + +/** Localized display information for an operation. */ +export interface OperationDisplay { + /** The localized friendly form of the resource provider name, e.g. "Microsoft Monitoring Insights" or "Microsoft Compute". */ + readonly provider?: string; + /** The localized friendly name of the resource type related to this operation. E.g. "Virtual Machines" or "Job Schedule Collections". */ + readonly resource?: string; + /** The concise, localized friendly name for the operation; suitable for dropdowns. E.g. "Create or Update Virtual Machine", "Restart Virtual Machine". */ + readonly operation?: string; + /** The short, localized friendly description of the operation; suitable for tool tips and detailed views. */ + readonly description?: string; +} + +export function operationDisplayDeserializer(item: any): OperationDisplay { + return { + provider: item["provider"], + resource: item["resource"], + operation: item["operation"], + description: item["description"], + }; +} + +/** The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" */ +export enum KnownOrigin { + /** Indicates the operation is initiated by a user. */ + User = "user", + /** Indicates the operation is initiated by a system. */ + System = "system", + /** Indicates the operation is initiated by a user or system. */ + UserSystem = "user,system", +} + +/** + * The intended executor of the operation; as in Resource Based Access Control (RBAC) and audit logs UX. Default value is "user,system" \ + * {@link KnownOrigin} can be used interchangeably with Origin, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **user**: Indicates the operation is initiated by a user. \ + * **system**: Indicates the operation is initiated by a system. \ + * **user,system**: Indicates the operation is initiated by a user or system. + */ +export type Origin = string; + +/** Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. */ +export enum KnownArmActionType { + /** Actions are for internal-only APIs. */ + Internal = "Internal", +} + +/** + * Extensible enum. Indicates the action type. "Internal" refers to actions that are for internal only APIs. \ + * {@link KnownArmActionType} can be used interchangeably with ArmActionType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Internal**: Actions are for internal-only APIs. + */ +export type ArmActionType = string; + +/** Properties of a private link resource. */ +export interface PrivateLinkResourceProperties { + /** The private link resource group id. */ + readonly groupId?: string; + /** The private link resource required member names. */ + readonly requiredMembers?: string[]; + /** The private link resource private link DNS zone name. */ + requiredZoneNames?: string[]; +} + +export function privateLinkResourcePropertiesDeserializer( + item: any, +): PrivateLinkResourceProperties { + return { + groupId: item["groupId"], + requiredMembers: !item["requiredMembers"] + ? item["requiredMembers"] + : item["requiredMembers"].map((p: any) => { + return p; + }), + requiredZoneNames: !item["requiredZoneNames"] + ? item["requiredZoneNames"] + : item["requiredZoneNames"].map((p: any) => { + return p; + }), + }; +} + +/** The response of a PrivateLinkGroupResource list operation. */ +export interface _PrivateLinkGroupResourceListResult { + /** The PrivateLinkGroupResource items on this page */ + value: PrivateLinkGroupResource[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _privateLinkGroupResourceListResultDeserializer( + item: any, +): _PrivateLinkGroupResourceListResult { + return { + value: privateLinkGroupResourceArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +/** Properties of the private endpoint connection. */ +export interface PrivateEndpointConnectionProperties { + /** The group ids for the private endpoint resource. */ + readonly groupIds?: string[]; + /** The private endpoint resource. */ + privateEndpoint?: PrivateEndpoint; + /** A collection of information about the state of the connection between service consumer and provider. */ + privateLinkServiceConnectionState: PrivateLinkServiceConnectionState; + /** The provisioning state of the private endpoint connection resource. */ + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +} + +export function privateEndpointConnectionPropertiesSerializer( + item: PrivateEndpointConnectionProperties, +): any { + return { + privateEndpoint: !item["privateEndpoint"] + ? item["privateEndpoint"] + : privateEndpointSerializer(item["privateEndpoint"]), + privateLinkServiceConnectionState: privateLinkServiceConnectionStateSerializer( + item["privateLinkServiceConnectionState"], + ), + }; +} + +export function privateEndpointConnectionPropertiesDeserializer( + item: any, +): PrivateEndpointConnectionProperties { + return { + groupIds: !item["groupIds"] + ? item["groupIds"] + : item["groupIds"].map((p: any) => { + return p; + }), + privateEndpoint: !item["privateEndpoint"] + ? item["privateEndpoint"] + : privateEndpointDeserializer(item["privateEndpoint"]), + privateLinkServiceConnectionState: privateLinkServiceConnectionStateDeserializer( + item["privateLinkServiceConnectionState"], + ), + provisioningState: item["provisioningState"], + }; +} + +/** The private endpoint resource. */ +export interface PrivateEndpoint { + /** The resource identifier of the private endpoint */ + readonly id?: string; +} + +export function privateEndpointSerializer(_item: PrivateEndpoint): any { + return {}; +} + +export function privateEndpointDeserializer(item: any): PrivateEndpoint { + return { + id: item["id"], + }; +} + +/** A collection of information about the state of the connection between service consumer and provider. */ +export interface PrivateLinkServiceConnectionState { + /** Indicates whether the connection has been Approved/Rejected/Removed by the owner of the service. */ + status?: PrivateEndpointServiceConnectionStatus; + /** The reason for approval/rejection of the connection. */ + description?: string; + /** A message indicating if changes on the service provider require any updates on the consumer. */ + actionsRequired?: string; +} + +export function privateLinkServiceConnectionStateSerializer( + item: PrivateLinkServiceConnectionState, +): any { + return { + status: item["status"], + description: item["description"], + actionsRequired: item["actionsRequired"], + }; +} + +export function privateLinkServiceConnectionStateDeserializer( + item: any, +): PrivateLinkServiceConnectionState { + return { + status: item["status"], + description: item["description"], + actionsRequired: item["actionsRequired"], + }; +} + +/** The private endpoint connection status. */ +export enum KnownPrivateEndpointServiceConnectionStatus { + /** Connection waiting for approval or rejection */ + Pending = "Pending", + /** Connection approved */ + Approved = "Approved", + /** Connection Rejected */ + Rejected = "Rejected", +} + +/** + * The private endpoint connection status. \ + * {@link KnownPrivateEndpointServiceConnectionStatus} can be used interchangeably with PrivateEndpointServiceConnectionStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Pending**: Connection waiting for approval or rejection \ + * **Approved**: Connection approved \ + * **Rejected**: Connection Rejected + */ +export type PrivateEndpointServiceConnectionStatus = string; + +/** The current provisioning state. */ +export enum KnownPrivateEndpointConnectionProvisioningState { + /** Connection has been provisioned */ + Succeeded = "Succeeded", + /** Connection is being created */ + Creating = "Creating", + /** Connection is being deleted */ + Deleting = "Deleting", + /** Connection provisioning has failed */ + Failed = "Failed", +} + +/** + * The current provisioning state. \ + * {@link KnownPrivateEndpointConnectionProvisioningState} can be used interchangeably with PrivateEndpointConnectionProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: Connection has been provisioned \ + * **Creating**: Connection is being created \ + * **Deleting**: Connection is being deleted \ + * **Failed**: Connection provisioning has failed + */ +export type PrivateEndpointConnectionProvisioningState = string; + +/** The private endpoint connection resource */ +export interface ArmPrivateEndpointConnection extends Resource { + /** The private endpoint connection properties */ + properties?: PrivateEndpointConnectionProperties; +} + +export function armPrivateEndpointConnectionSerializer(item: ArmPrivateEndpointConnection): any { + return { + properties: !item["properties"] + ? item["properties"] + : privateEndpointConnectionPropertiesSerializer(item["properties"]), + }; +} + +/** The response of a PrivateEndpointConnection list operation. */ +export interface _PrivateEndpointConnectionListResult { + /** The PrivateEndpointConnection items on this page */ + value: PrivateEndpointConnection[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _privateEndpointConnectionListResultDeserializer( + item: any, +): _PrivateEndpointConnectionListResult { + return { + value: privateEndpointConnectionArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +/** Identity for the resource. */ +export interface Identity { + /** The principal ID of resource identity. The value must be an UUID. */ + readonly principalId?: string; + /** The tenant ID of resource. The value must be an UUID. */ + readonly tenantId?: string; + /** The identity type. */ + type?: ResourceIdentityType; +} + +export function identityDeserializer(item: any): Identity { + return { + principalId: item["principalId"], + tenantId: item["tenantId"], + type: item["type"], + }; +} + +/** Type of ResourceIdentityType */ +export type ResourceIdentityType = "SystemAssigned"; + +/** The current status of an async operation. */ +export interface OperationStatusResult { + /** Fully qualified ID for the async operation. */ + id?: string; + /** Name of the async operation. */ + name?: string; + /** Operation status. */ + status: string; + /** Percent of the operation that is complete. */ + percentComplete?: number; + /** The start time of the operation. */ + startTime?: Date; + /** The end time of the operation. */ + endTime?: Date; + /** The operations list. */ + operations?: OperationStatusResult[]; + /** If present, details of the operation error. */ + error?: ErrorDetail; + /** Fully qualified ID of the resource against which the original async operation was started. */ + readonly resourceId?: string; +} + +export function operationStatusResultDeserializer(item: any): OperationStatusResult { + return { + id: item["id"], + name: item["name"], + status: item["status"], + percentComplete: item["percentComplete"], + startTime: !item["startTime"] ? item["startTime"] : new Date(item["startTime"]), + endTime: !item["endTime"] ? item["endTime"] : new Date(item["endTime"]), + operations: !item["operations"] + ? item["operations"] + : operationStatusResultArrayDeserializer(item["operations"]), + error: !item["error"] ? item["error"] : errorDetailDeserializer(item["error"]), + resourceId: item["resourceId"], + }; +} + +export function operationStatusResultArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return operationStatusResultDeserializer(item); + }); +} + +/** The resource model definition for an Azure Resource Manager tracked top level resource which has 'tags' and a 'location' */ +export interface TrackedResource extends Resource { + /** Resource tags. */ + tags?: Record; + /** The geo-location where the resource lives */ + location: string; +} + +export function trackedResourceSerializer(item: TrackedResource): any { + return { tags: item["tags"], location: item["location"] }; +} + +export function trackedResourceDeserializer(item: any): TrackedResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + location: item["location"], + }; +} + +export function _privateLinkGroupResourcePropertiesDeserializer(item: any) { + return { + groupId: item["groupId"], + requiredMembers: !item["requiredMembers"] + ? item["requiredMembers"] + : item["requiredMembers"].map((p: any) => { + return p; + }), + requiredZoneNames: !item["requiredZoneNames"] + ? item["requiredZoneNames"] + : item["requiredZoneNames"].map((p: any) => { + return p; + }), + }; +} + +export function _privateEndpointConnectionPropertiesSerializer( + item: PrivateEndpointConnection, +): any { + return { + privateEndpoint: !item["privateEndpoint"] + ? item["privateEndpoint"] + : privateEndpointSerializer(item["privateEndpoint"]), + privateLinkServiceConnectionState: !item["privateLinkServiceConnectionState"] + ? item["privateLinkServiceConnectionState"] + : privateLinkServiceConnectionStateSerializer(item["privateLinkServiceConnectionState"]), + }; +} + +export function _privateEndpointConnectionPropertiesDeserializer(item: any) { + return { + groupIds: !item["groupIds"] + ? item["groupIds"] + : item["groupIds"].map((p: any) => { + return p; + }), + privateEndpoint: !item["privateEndpoint"] + ? item["privateEndpoint"] + : privateEndpointDeserializer(item["privateEndpoint"]), + privateLinkServiceConnectionState: !item["privateLinkServiceConnectionState"] + ? item["privateLinkServiceConnectionState"] + : privateLinkServiceConnectionStateDeserializer(item["privateLinkServiceConnectionState"]), + provisioningState: item["provisioningState"], + }; +} diff --git a/sdk/security/arm-security/src/models/parameters.ts b/sdk/security/arm-security/src/models/parameters.ts deleted file mode 100644 index bc6a6b46507e..000000000000 --- a/sdk/security/arm-security/src/models/parameters.ts +++ /dev/null @@ -1,1546 +0,0 @@ -/* - * Copyright (c) Microsoft Corporation. - * Licensed under the MIT License. - * - * Code generated by Microsoft (R) AutoRest Code Generator. - * Changes may cause incorrect behavior and will be lost if the code is regenerated. - */ - -import { - OperationParameter, - OperationURLParameter, - OperationQueryParameter, -} from "@azure/core-client"; -import { - AutoProvisioningSetting as AutoProvisioningSettingMapper, - InformationProtectionPolicy as InformationProtectionPolicyMapper, - WorkspaceSetting as WorkspaceSettingMapper, - AlertsSuppressionRule as AlertsSuppressionRuleMapper, - Automation as AutomationMapper, - AutomationUpdateModel as AutomationUpdateModelMapper, - ConnectorSetting as ConnectorSettingMapper, - SecurityContact as SecurityContactMapper, - CustomAssessmentAutomationRequest as CustomAssessmentAutomationRequestMapper, - CustomEntityStoreAssignmentRequest as CustomEntityStoreAssignmentRequestMapper, - GovernanceAssignment as GovernanceAssignmentMapper, - GovernanceRule as GovernanceRuleMapper, - ExecuteGovernanceRuleParams as ExecuteGovernanceRuleParamsMapper, - Application as ApplicationMapper, - DefenderForStorageSetting as DefenderForStorageSettingMapper, - RuleResultsInput as RuleResultsInputMapper, - RulesResultsInput as RulesResultsInputMapper, - UpdateSensitivitySettingsRequest as UpdateSensitivitySettingsRequestMapper, - AzureDevOpsOrg as AzureDevOpsOrgMapper, - AzureDevOpsProject as AzureDevOpsProjectMapper, - AzureDevOpsRepository as AzureDevOpsRepositoryMapper, - DevOpsConfiguration as DevOpsConfigurationMapper, - SecurityConnector as SecurityConnectorMapper, - AdvancedThreatProtectionSetting as AdvancedThreatProtectionSettingMapper, - DeviceSecurityGroup as DeviceSecurityGroupMapper, - IoTSecuritySolutionModel as IoTSecuritySolutionModelMapper, - UpdateIotSecuritySolutionData as UpdateIotSecuritySolutionDataMapper, - AdaptiveNetworkHardeningEnforceRequest as AdaptiveNetworkHardeningEnforceRequestMapper, - AdaptiveApplicationControlGroup as AdaptiveApplicationControlGroupMapper, - JitNetworkAccessPolicy as JitNetworkAccessPolicyMapper, - JitNetworkAccessPolicyInitiateRequest as JitNetworkAccessPolicyInitiateRequestMapper, - SecurityAssessmentMetadataResponse as SecurityAssessmentMetadataResponseMapper, - SecurityAssessment as SecurityAssessmentMapper, - AlertSimulatorRequestBody as AlertSimulatorRequestBodyMapper, - Setting as SettingMapper, - ServerVulnerabilityAssessmentsSetting as ServerVulnerabilityAssessmentsSettingMapper, - Pricing as PricingMapper, -} from "../models/mappers.js"; - -export const accept: OperationParameter = { - parameterPath: "accept", - mapper: { - defaultValue: "application/json", - isConstant: true, - serializedName: "Accept", - type: { - name: "String", - }, - }, -}; - -export const $host: OperationURLParameter = { - parameterPath: "$host", - mapper: { - serializedName: "$host", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const apiVersion: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2015-06-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const subscriptionId: OperationURLParameter = { - parameterPath: "subscriptionId", - mapper: { - constraints: { - Pattern: new RegExp( - "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - ), - }, - serializedName: "subscriptionId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const ascLocation: OperationURLParameter = { - parameterPath: "ascLocation", - mapper: { - serializedName: "ascLocation", - required: true, - type: { - name: "String", - }, - }, -}; - -export const nextLink: OperationURLParameter = { - parameterPath: "nextLink", - mapper: { - serializedName: "nextLink", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const filter: OperationQueryParameter = { - parameterPath: ["options", "filter"], - mapper: { - serializedName: "$filter", - type: { - name: "String", - }, - }, -}; - -export const taskName: OperationURLParameter = { - parameterPath: "taskName", - mapper: { - serializedName: "taskName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const taskUpdateActionType: OperationURLParameter = { - parameterPath: "taskUpdateActionType", - mapper: { - serializedName: "taskUpdateActionType", - required: true, - type: { - name: "String", - }, - }, -}; - -export const resourceGroupName: OperationURLParameter = { - parameterPath: "resourceGroupName", - mapper: { - constraints: { - Pattern: new RegExp("^[-\\w\\._\\(\\)]+$"), - MaxLength: 90, - MinLength: 1, - }, - serializedName: "resourceGroupName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion1: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2017-08-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const settingName: OperationURLParameter = { - parameterPath: "settingName", - mapper: { - serializedName: "settingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const contentType: OperationParameter = { - parameterPath: ["options", "contentType"], - mapper: { - defaultValue: "application/json", - isConstant: true, - serializedName: "Content-Type", - type: { - name: "String", - }, - }, -}; - -export const setting: OperationParameter = { - parameterPath: "setting", - mapper: AutoProvisioningSettingMapper, -}; - -export const scope: OperationURLParameter = { - parameterPath: "scope", - mapper: { - serializedName: "scope", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const complianceName: OperationURLParameter = { - parameterPath: "complianceName", - mapper: { - serializedName: "complianceName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const informationProtectionPolicyName: OperationURLParameter = { - parameterPath: "informationProtectionPolicyName", - mapper: { - serializedName: "informationProtectionPolicyName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const informationProtectionPolicy: OperationParameter = { - parameterPath: "informationProtectionPolicy", - mapper: InformationProtectionPolicyMapper, -}; - -export const workspaceSettingName: OperationURLParameter = { - parameterPath: "workspaceSettingName", - mapper: { - serializedName: "workspaceSettingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const workspaceSetting: OperationParameter = { - parameterPath: "workspaceSetting", - mapper: WorkspaceSettingMapper, -}; - -export const apiVersion2: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2019-01-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const alertType: OperationQueryParameter = { - parameterPath: ["options", "alertType"], - mapper: { - serializedName: "AlertType", - type: { - name: "String", - }, - }, -}; - -export const alertsSuppressionRuleName: OperationURLParameter = { - parameterPath: "alertsSuppressionRuleName", - mapper: { - serializedName: "alertsSuppressionRuleName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const alertsSuppressionRule: OperationParameter = { - parameterPath: "alertsSuppressionRule", - mapper: AlertsSuppressionRuleMapper, -}; - -export const apiVersion3: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-12-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const automationName: OperationURLParameter = { - parameterPath: "automationName", - mapper: { - serializedName: "automationName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const automation: OperationParameter = { - parameterPath: "automation", - mapper: AutomationMapper, -}; - -export const automation1: OperationParameter = { - parameterPath: "automation", - mapper: AutomationUpdateModelMapper, -}; - -export const regulatoryComplianceStandardName: OperationURLParameter = { - parameterPath: "regulatoryComplianceStandardName", - mapper: { - serializedName: "regulatoryComplianceStandardName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const regulatoryComplianceControlName: OperationURLParameter = { - parameterPath: "regulatoryComplianceControlName", - mapper: { - serializedName: "regulatoryComplianceControlName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const regulatoryComplianceAssessmentName: OperationURLParameter = { - parameterPath: "regulatoryComplianceAssessmentName", - mapper: { - serializedName: "regulatoryComplianceAssessmentName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const assessmentName: OperationURLParameter = { - parameterPath: "assessmentName", - mapper: { - serializedName: "assessmentName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const subAssessmentName: OperationURLParameter = { - parameterPath: "subAssessmentName", - mapper: { - serializedName: "subAssessmentName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion4: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2020-01-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const connectorName: OperationURLParameter = { - parameterPath: "connectorName", - mapper: { - serializedName: "connectorName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const connectorSetting: OperationParameter = { - parameterPath: "connectorSetting", - mapper: ConnectorSettingMapper, -}; - -export const securityContactName: OperationURLParameter = { - parameterPath: "securityContactName", - mapper: { - serializedName: "securityContactName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const securityContact: OperationParameter = { - parameterPath: "securityContact", - mapper: SecurityContactMapper, -}; - -export const resourceNamespace: OperationURLParameter = { - parameterPath: "resourceNamespace", - mapper: { - serializedName: "resourceNamespace", - required: true, - type: { - name: "String", - }, - }, -}; - -export const resourceType: OperationURLParameter = { - parameterPath: "resourceType", - mapper: { - serializedName: "resourceType", - required: true, - type: { - name: "String", - }, - }, -}; - -export const resourceName: OperationURLParameter = { - parameterPath: "resourceName", - mapper: { - serializedName: "resourceName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion5: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2021-05-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const softwareName: OperationURLParameter = { - parameterPath: "softwareName", - mapper: { - serializedName: "softwareName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion6: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2021-07-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const customAssessmentAutomationName: OperationURLParameter = { - parameterPath: "customAssessmentAutomationName", - mapper: { - serializedName: "customAssessmentAutomationName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const customAssessmentAutomationBody: OperationParameter = { - parameterPath: "customAssessmentAutomationBody", - mapper: CustomAssessmentAutomationRequestMapper, -}; - -export const customEntityStoreAssignmentName: OperationURLParameter = { - parameterPath: "customEntityStoreAssignmentName", - mapper: { - serializedName: "customEntityStoreAssignmentName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const customEntityStoreAssignmentRequestBody: OperationParameter = { - parameterPath: "customEntityStoreAssignmentRequestBody", - mapper: CustomEntityStoreAssignmentRequestMapper, -}; - -export const apiVersion7: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2021-10-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const apiVersion8: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2022-01-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const scope1: OperationURLParameter = { - parameterPath: "scope", - mapper: { - serializedName: "scope", - required: true, - type: { - name: "String", - }, - }, -}; - -export const assessmentName1: OperationURLParameter = { - parameterPath: "assessmentName", - mapper: { - constraints: { - Pattern: new RegExp("^[-\\w\\._\\(\\)]+$"), - }, - serializedName: "assessmentName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const assignmentKey: OperationURLParameter = { - parameterPath: "assignmentKey", - mapper: { - serializedName: "assignmentKey", - required: true, - type: { - name: "String", - }, - }, -}; - -export const governanceAssignment: OperationParameter = { - parameterPath: "governanceAssignment", - mapper: GovernanceAssignmentMapper, -}; - -export const ruleId: OperationURLParameter = { - parameterPath: "ruleId", - mapper: { - serializedName: "ruleId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const governanceRule: OperationParameter = { - parameterPath: "governanceRule", - mapper: GovernanceRuleMapper, -}; - -export const executeGovernanceRuleParams: OperationParameter = { - parameterPath: ["options", "executeGovernanceRuleParams"], - mapper: ExecuteGovernanceRuleParamsMapper, -}; - -export const operationId: OperationURLParameter = { - parameterPath: "operationId", - mapper: { - serializedName: "operationId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion9: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2022-07-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const applicationId: OperationURLParameter = { - parameterPath: "applicationId", - mapper: { - serializedName: "applicationId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const application: OperationParameter = { - parameterPath: "application", - mapper: ApplicationMapper, -}; - -export const securityConnectorName: OperationURLParameter = { - parameterPath: "securityConnectorName", - mapper: { - serializedName: "securityConnectorName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion10: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2022-12-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const resourceId: OperationURLParameter = { - parameterPath: "resourceId", - mapper: { - serializedName: "resourceId", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const settingName1: OperationURLParameter = { - parameterPath: "settingName", - mapper: { - serializedName: "settingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const defenderForStorageSetting: OperationParameter = { - parameterPath: "defenderForStorageSetting", - mapper: DefenderForStorageSettingMapper, -}; - -export const apiVersion11: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-01-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const pricingName: OperationURLParameter = { - parameterPath: "pricingName", - mapper: { - constraints: { - Pattern: new RegExp("^[a-zA-Z][a-zA-Z0-9_]+$"), - MaxLength: 63, - MinLength: 3, - }, - serializedName: "pricingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const securityOperatorName: OperationURLParameter = { - parameterPath: "securityOperatorName", - mapper: { - constraints: { - Pattern: new RegExp("^[a-zA-Z][a-zA-Z0-9_]+$"), - MaxLength: 63, - MinLength: 3, - }, - serializedName: "securityOperatorName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const body: OperationParameter = { - parameterPath: ["options", "body"], - mapper: RuleResultsInputMapper, -}; - -export const workspaceId: OperationQueryParameter = { - parameterPath: "workspaceId", - mapper: { - serializedName: "workspaceId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion12: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-02-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const body1: OperationParameter = { - parameterPath: ["options", "body"], - mapper: RulesResultsInputMapper, -}; - -export const scanId: OperationURLParameter = { - parameterPath: "scanId", - mapper: { - serializedName: "scanId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const scanResultId: OperationURLParameter = { - parameterPath: "scanResultId", - mapper: { - serializedName: "scanResultId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const sensitivitySettings: OperationParameter = { - parameterPath: "sensitivitySettings", - mapper: UpdateSensitivitySettingsRequestMapper, -}; - -export const apiVersion13: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-02-15-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const apiVersion14: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-05-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const scope2: OperationURLParameter = { - parameterPath: "scope", - mapper: { - constraints: { - MinLength: 1, - }, - serializedName: "scope", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const healthReportName: OperationURLParameter = { - parameterPath: "healthReportName", - mapper: { - constraints: { - Pattern: new RegExp( - "[{]?[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}[}]?$", - ), - }, - serializedName: "healthReportName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const resourceGroupName1: OperationURLParameter = { - parameterPath: "resourceGroupName", - mapper: { - constraints: { - MaxLength: 90, - MinLength: 1, - }, - serializedName: "resourceGroupName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion15: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-09-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const orgName: OperationURLParameter = { - parameterPath: "orgName", - mapper: { - serializedName: "orgName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const azureDevOpsOrg: OperationParameter = { - parameterPath: "azureDevOpsOrg", - mapper: AzureDevOpsOrgMapper, -}; - -export const projectName: OperationURLParameter = { - parameterPath: "projectName", - mapper: { - serializedName: "projectName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const azureDevOpsProject: OperationParameter = { - parameterPath: "azureDevOpsProject", - mapper: AzureDevOpsProjectMapper, -}; - -export const repoName: OperationURLParameter = { - parameterPath: "repoName", - mapper: { - serializedName: "repoName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const azureDevOpsRepository: OperationParameter = { - parameterPath: "azureDevOpsRepository", - mapper: AzureDevOpsRepositoryMapper, -}; - -export const devOpsConfiguration: OperationParameter = { - parameterPath: "devOpsConfiguration", - mapper: DevOpsConfigurationMapper, -}; - -export const ownerName: OperationURLParameter = { - parameterPath: "ownerName", - mapper: { - serializedName: "ownerName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const groupFQName: OperationURLParameter = { - parameterPath: "groupFQName", - mapper: { - serializedName: "groupFQName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const operationResultId: OperationURLParameter = { - parameterPath: "operationResultId", - mapper: { - serializedName: "operationResultId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion16: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-10-01-preview", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const securityConnector: OperationParameter = { - parameterPath: "securityConnector", - mapper: SecurityConnectorMapper, -}; - -export const apiVersion17: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2017-08-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const complianceResultName: OperationURLParameter = { - parameterPath: "complianceResultName", - mapper: { - serializedName: "complianceResultName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion18: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2019-01-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const settingName2: OperationURLParameter = { - parameterPath: "settingName", - mapper: { - defaultValue: "current", - isConstant: true, - serializedName: "settingName", - type: { - name: "String", - }, - }, -}; - -export const advancedThreatProtectionSetting: OperationParameter = { - parameterPath: "advancedThreatProtectionSetting", - mapper: AdvancedThreatProtectionSettingMapper, -}; - -export const apiVersion19: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2019-08-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const deviceSecurityGroupName: OperationURLParameter = { - parameterPath: "deviceSecurityGroupName", - mapper: { - serializedName: "deviceSecurityGroupName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const deviceSecurityGroup: OperationParameter = { - parameterPath: "deviceSecurityGroup", - mapper: DeviceSecurityGroupMapper, -}; - -export const solutionName: OperationURLParameter = { - parameterPath: "solutionName", - mapper: { - serializedName: "solutionName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const top: OperationQueryParameter = { - parameterPath: ["options", "top"], - mapper: { - serializedName: "$top", - type: { - name: "Number", - }, - }, -}; - -export const aggregatedAlertName: OperationURLParameter = { - parameterPath: "aggregatedAlertName", - mapper: { - serializedName: "aggregatedAlertName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const aggregatedRecommendationName: OperationURLParameter = { - parameterPath: "aggregatedRecommendationName", - mapper: { - serializedName: "aggregatedRecommendationName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const iotSecuritySolutionData: OperationParameter = { - parameterPath: "iotSecuritySolutionData", - mapper: IoTSecuritySolutionModelMapper, -}; - -export const updateIotSecuritySolutionData: OperationParameter = { - parameterPath: "updateIotSecuritySolutionData", - mapper: UpdateIotSecuritySolutionDataMapper, -}; - -export const apiVersion20: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2020-01-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const adaptiveNetworkHardeningResourceName: OperationURLParameter = { - parameterPath: "adaptiveNetworkHardeningResourceName", - mapper: { - serializedName: "adaptiveNetworkHardeningResourceName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const body2: OperationParameter = { - parameterPath: "body", - mapper: AdaptiveNetworkHardeningEnforceRequestMapper, -}; - -export const adaptiveNetworkHardeningEnforceAction: OperationURLParameter = { - parameterPath: "adaptiveNetworkHardeningEnforceAction", - mapper: { - defaultValue: "enforce", - isConstant: true, - serializedName: "adaptiveNetworkHardeningEnforceAction", - type: { - name: "String", - }, - }, -}; - -export const connectionType: OperationURLParameter = { - parameterPath: "connectionType", - mapper: { - serializedName: "connectionType", - required: true, - type: { - name: "String", - }, - }, -}; - -export const includePathRecommendations: OperationQueryParameter = { - parameterPath: ["options", "includePathRecommendations"], - mapper: { - serializedName: "includePathRecommendations", - type: { - name: "Boolean", - }, - }, -}; - -export const summary: OperationQueryParameter = { - parameterPath: ["options", "summary"], - mapper: { - serializedName: "summary", - type: { - name: "Boolean", - }, - }, -}; - -export const groupName: OperationURLParameter = { - parameterPath: "groupName", - mapper: { - serializedName: "groupName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const body3: OperationParameter = { - parameterPath: "body", - mapper: AdaptiveApplicationControlGroupMapper, -}; - -export const discoveredSecuritySolutionName: OperationURLParameter = { - parameterPath: "discoveredSecuritySolutionName", - mapper: { - serializedName: "discoveredSecuritySolutionName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const externalSecuritySolutionsName: OperationURLParameter = { - parameterPath: "externalSecuritySolutionsName", - mapper: { - serializedName: "externalSecuritySolutionsName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const jitNetworkAccessPolicyName: OperationURLParameter = { - parameterPath: "jitNetworkAccessPolicyName", - mapper: { - serializedName: "jitNetworkAccessPolicyName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const body4: OperationParameter = { - parameterPath: "body", - mapper: JitNetworkAccessPolicyMapper, -}; - -export const body5: OperationParameter = { - parameterPath: "body", - mapper: JitNetworkAccessPolicyInitiateRequestMapper, -}; - -export const jitNetworkAccessPolicyInitiateType: OperationURLParameter = { - parameterPath: "jitNetworkAccessPolicyInitiateType", - mapper: { - defaultValue: "initiate", - isConstant: true, - serializedName: "jitNetworkAccessPolicyInitiateType", - type: { - name: "String", - }, - }, -}; - -export const secureScoreName: OperationURLParameter = { - parameterPath: "secureScoreName", - mapper: { - serializedName: "secureScoreName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const expand: OperationQueryParameter = { - parameterPath: ["options", "expand"], - mapper: { - serializedName: "$expand", - type: { - name: "String", - }, - }, -}; - -export const securitySolutionName: OperationURLParameter = { - parameterPath: "securitySolutionName", - mapper: { - serializedName: "securitySolutionName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const serverVulnerabilityAssessment: OperationURLParameter = { - parameterPath: "serverVulnerabilityAssessment", - mapper: { - defaultValue: "default", - isConstant: true, - serializedName: "serverVulnerabilityAssessment", - type: { - name: "String", - }, - }, -}; - -export const topologyResourceName: OperationURLParameter = { - parameterPath: "topologyResourceName", - mapper: { - serializedName: "topologyResourceName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion21: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2021-06-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const assessmentMetadataName: OperationURLParameter = { - parameterPath: "assessmentMetadataName", - mapper: { - serializedName: "assessmentMetadataName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const assessmentMetadata: OperationParameter = { - parameterPath: "assessmentMetadata", - mapper: SecurityAssessmentMetadataResponseMapper, -}; - -export const expand1: OperationQueryParameter = { - parameterPath: ["options", "expand"], - mapper: { - serializedName: "$expand", - type: { - name: "String", - }, - }, -}; - -export const assessment: OperationParameter = { - parameterPath: "assessment", - mapper: SecurityAssessmentMapper, -}; - -export const apiVersion22: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2022-01-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const alertName: OperationURLParameter = { - parameterPath: "alertName", - mapper: { - serializedName: "alertName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const alertSimulatorRequestBody: OperationParameter = { - parameterPath: "alertSimulatorRequestBody", - mapper: AlertSimulatorRequestBodyMapper, -}; - -export const apiVersion23: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2022-05-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const settingName3: OperationURLParameter = { - parameterPath: "settingName", - mapper: { - serializedName: "settingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const setting1: OperationParameter = { - parameterPath: "setting", - mapper: SettingMapper, -}; - -export const apiVersion24: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-05-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const settingKind: OperationURLParameter = { - parameterPath: "settingKind", - mapper: { - serializedName: "settingKind", - required: true, - type: { - name: "String", - }, - }, -}; - -export const serverVulnerabilityAssessmentsSetting: OperationParameter = { - parameterPath: "serverVulnerabilityAssessmentsSetting", - mapper: ServerVulnerabilityAssessmentsSettingMapper, -}; - -export const apiVersion25: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2023-11-15", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const serviceName: OperationURLParameter = { - parameterPath: "serviceName", - mapper: { - constraints: { - Pattern: new RegExp("^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$"), - MaxLength: 50, - MinLength: 1, - }, - serializedName: "serviceName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiId: OperationURLParameter = { - parameterPath: "apiId", - mapper: { - constraints: { - Pattern: new RegExp("^[^*#&+:<>?]+$"), - MaxLength: 256, - MinLength: 1, - }, - serializedName: "apiId", - required: true, - type: { - name: "String", - }, - }, -}; - -export const apiVersion26: OperationQueryParameter = { - parameterPath: "apiVersion", - mapper: { - defaultValue: "2024-01-01", - isConstant: true, - serializedName: "api-version", - type: { - name: "String", - }, - }, -}; - -export const scopeId: OperationURLParameter = { - parameterPath: "scopeId", - mapper: { - serializedName: "scopeId", - required: true, - type: { - name: "String", - }, - }, - skipEncoding: true, -}; - -export const pricingName1: OperationURLParameter = { - parameterPath: "pricingName", - mapper: { - serializedName: "pricingName", - required: true, - type: { - name: "String", - }, - }, -}; - -export const pricing: OperationParameter = { - parameterPath: "pricing", - mapper: PricingMapper, -}; diff --git a/sdk/security/arm-security/src/models/pricingsAPI/index.ts b/sdk/security/arm-security/src/models/pricingsAPI/index.ts new file mode 100644 index 000000000000..4376f6696fb2 --- /dev/null +++ b/sdk/security/arm-security/src/models/pricingsAPI/index.ts @@ -0,0 +1,21 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + Pricing, + PricingProperties, + PricingTier, + Enforce, + Inherited, + ResourcesCoverageStatus, + Extension, + IsEnabled, + PricingList, +} from "./models.js"; +export { + KnownPricingTier, + KnownEnforce, + KnownInherited, + KnownResourcesCoverageStatus, + KnownIsEnabled, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/pricingsAPI/models.ts b/sdk/security/arm-security/src/models/pricingsAPI/models.ts new file mode 100644 index 000000000000..76bf1ee96ff5 --- /dev/null +++ b/sdk/security/arm-security/src/models/pricingsAPI/models.ts @@ -0,0 +1,323 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { OperationStatus, operationStatusDeserializer } from "../common/models.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ +export interface Pricing extends ExtensionResource { + /** Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ + pricingTier?: PricingTier; + /** The sub-plan selected for a Standard pricing configuration, when more than one sub-plan is available. Each sub-plan enables a set of security features. When not specified, full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for resource level only 'P1' sub plan is supported. */ + subPlan?: string; + /** The duration left for the subscriptions free trial period - in ISO 8601 format (e.g. P3Y6M4DT12H30M5S). */ + readonly freeTrialRemainingTime?: string; + /** Optional. If `pricingTier` is `Standard` then this property holds the date of the last time the `pricingTier` was set to `Standard`, when available (e.g 2023-03-01T12:42:42.1921106Z). */ + readonly enablementTime?: Date; + /** If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it prevents overrides and forces this pricing configuration on all the descendants of this scope. This field is only available for subscription-level pricing. */ + enforce?: Enforce; + /** "inherited" = "True" indicates that the current scope inherits its pricing configuration from its parent. The ID of the parent scope that provides the inherited configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = "False" indicates that the current scope has its own pricing configuration explicitly set, and does not inherit from its parent. This field is read only and available only for resource-level pricing. */ + readonly inherited?: Inherited; + /** The id of the scope inherited from. "Null" if not inherited. This field is only available for resource-level pricing. */ + readonly inheritedFrom?: string; + /** This field is available for subscription-level only, and reflects the coverage status of the resources under the subscription. Please note: The "pricingTier" field reflects the plan status of the subscription. However, since the plan status can also be defined at the resource level, there might be misalignment between the subscription's plan status and the resource status. This field helps indicate the coverage status of the resources. */ + readonly resourcesCoverageStatus?: ResourcesCoverageStatus; + /** Optional. List of extensions offered under a plan. */ + extensions?: Extension[]; + /** Optional. True if the plan is deprecated. If there are replacing plans they will appear in `replacedBy` property */ + readonly deprecated?: boolean; + /** Optional. List of plans that replace this plan. This property exists only if this plan is deprecated. */ + readonly replacedBy?: string[]; +} + +export function pricingSerializer(item: Pricing): any { + return { + properties: areAllPropsUndefined(item, ["pricingTier", "subPlan", "enforce", "extensions"]) + ? undefined + : _pricingPropertiesSerializer(item), + }; +} + +export function pricingDeserializer(item: any): Pricing { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _pricingPropertiesDeserializer(item["properties"])), + }; +} + +/** Pricing properties for the relevant scope */ +export interface PricingProperties { + /** Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ + pricingTier: PricingTier; + /** The sub-plan selected for a Standard pricing configuration, when more than one sub-plan is available. Each sub-plan enables a set of security features. When not specified, full plan is applied. For VirtualMachines plan, available sub plans are 'P1' & 'P2', where for resource level only 'P1' sub plan is supported. */ + subPlan?: string; + /** The duration left for the subscriptions free trial period - in ISO 8601 format (e.g. P3Y6M4DT12H30M5S). */ + readonly freeTrialRemainingTime?: string; + /** Optional. If `pricingTier` is `Standard` then this property holds the date of the last time the `pricingTier` was set to `Standard`, when available (e.g 2023-03-01T12:42:42.1921106Z). */ + readonly enablementTime?: Date; + /** If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it prevents overrides and forces this pricing configuration on all the descendants of this scope. This field is only available for subscription-level pricing. */ + enforce?: Enforce; + /** "inherited" = "True" indicates that the current scope inherits its pricing configuration from its parent. The ID of the parent scope that provides the inherited configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = "False" indicates that the current scope has its own pricing configuration explicitly set, and does not inherit from its parent. This field is read only and available only for resource-level pricing. */ + readonly inherited?: Inherited; + /** The id of the scope inherited from. "Null" if not inherited. This field is only available for resource-level pricing. */ + readonly inheritedFrom?: string; + /** This field is available for subscription-level only, and reflects the coverage status of the resources under the subscription. Please note: The "pricingTier" field reflects the plan status of the subscription. However, since the plan status can also be defined at the resource level, there might be misalignment between the subscription's plan status and the resource status. This field helps indicate the coverage status of the resources. */ + readonly resourcesCoverageStatus?: ResourcesCoverageStatus; + /** Optional. List of extensions offered under a plan. */ + extensions?: Extension[]; + /** Optional. True if the plan is deprecated. If there are replacing plans they will appear in `replacedBy` property */ + readonly deprecated?: boolean; + /** Optional. List of plans that replace this plan. This property exists only if this plan is deprecated. */ + readonly replacedBy?: string[]; +} + +export function pricingPropertiesSerializer(item: PricingProperties): any { + return { + pricingTier: item["pricingTier"], + subPlan: item["subPlan"], + enforce: item["enforce"], + extensions: !item["extensions"] + ? item["extensions"] + : extensionArraySerializer(item["extensions"]), + }; +} + +export function pricingPropertiesDeserializer(item: any): PricingProperties { + return { + pricingTier: item["pricingTier"], + subPlan: item["subPlan"], + freeTrialRemainingTime: item["freeTrialRemainingTime"], + enablementTime: !item["enablementTime"] + ? item["enablementTime"] + : new Date(item["enablementTime"]), + enforce: item["enforce"], + inherited: item["inherited"], + inheritedFrom: item["inheritedFrom"], + resourcesCoverageStatus: item["resourcesCoverageStatus"], + extensions: !item["extensions"] + ? item["extensions"] + : extensionArrayDeserializer(item["extensions"]), + deprecated: item["deprecated"], + replacedBy: !item["replacedBy"] + ? item["replacedBy"] + : item["replacedBy"].map((p: any) => { + return p; + }), + }; +} + +/** Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. */ +export enum KnownPricingTier { + /** Get free Microsoft Defender for Cloud experience with basic security features */ + Free = "Free", + /** Get the standard Microsoft Defender for Cloud experience with advanced security features */ + Standard = "Standard", +} + +/** + * Indicates whether the Defender plan is enabled on the selected scope. Microsoft Defender for Cloud is provided in two pricing tiers: free and standard. The standard tier offers advanced security capabilities, while the free tier offers basic security features. \ + * {@link KnownPricingTier} can be used interchangeably with PricingTier, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Free**: Get free Microsoft Defender for Cloud experience with basic security features \ + * **Standard**: Get the standard Microsoft Defender for Cloud experience with advanced security features + */ +export type PricingTier = string; + +/** If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it prevents overrides and forces this pricing configuration on all the descendants of this scope. This field is only available for subscription-level pricing. */ +export enum KnownEnforce { + /** Allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False") */ + False = "False", + /** Prevents overrides and forces the current scope's pricing configuration to all descendants */ + True = "True", +} + +/** + * If set to "False", it allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False"). If set to "True", it prevents overrides and forces this pricing configuration on all the descendants of this scope. This field is only available for subscription-level pricing. \ + * {@link KnownEnforce} can be used interchangeably with Enforce, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **False**: Allows the descendants of this scope to override the pricing configuration set on this scope (allows setting inherited="False") \ + * **True**: Prevents overrides and forces the current scope's pricing configuration to all descendants + */ +export type Enforce = string; + +/** "inherited" = "True" indicates that the current scope inherits its pricing configuration from its parent. The ID of the parent scope that provides the inherited configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = "False" indicates that the current scope has its own pricing configuration explicitly set, and does not inherit from its parent. This field is read only and available only for resource-level pricing. */ +export enum KnownInherited { + /** Indicates that the current scope is inheriting its pricing configuration from its parent */ + True = "True", + /** Indicates that the current scope sets its own pricing configuration and does not inherit it from its parent */ + False = "False", +} + +/** + * "inherited" = "True" indicates that the current scope inherits its pricing configuration from its parent. The ID of the parent scope that provides the inherited configuration is displayed in the "inheritedFrom" field. On the other hand, "inherited" = "False" indicates that the current scope has its own pricing configuration explicitly set, and does not inherit from its parent. This field is read only and available only for resource-level pricing. \ + * {@link KnownInherited} can be used interchangeably with Inherited, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **True**: Indicates that the current scope is inheriting its pricing configuration from its parent \ + * **False**: Indicates that the current scope sets its own pricing configuration and does not inherit it from its parent + */ +export type Inherited = string; + +/** This field is available for subscription-level only, and reflects the coverage status of the resources under the subscription. Please note: The "pricingTier" field reflects the plan status of the subscription. However, since the plan status can also be defined at the resource level, there might be misalignment between the subscription's plan status and the resource status. This field helps indicate the coverage status of the resources. */ +export enum KnownResourcesCoverageStatus { + /** This value indicates that all resources associated with the subscription have the Defender plan enabled. */ + FullyCovered = "FullyCovered", + /** This value indicates that some resources under the subscription have the Defender plan enabled, while others have it disabled. There is a mixed coverage status among resources. */ + PartiallyCovered = "PartiallyCovered", + /** This value indicates that the Defender plan is disabled for all resources under the subscription. None of the resources are protected by the Defender plan. */ + NotCovered = "NotCovered", +} + +/** + * This field is available for subscription-level only, and reflects the coverage status of the resources under the subscription. Please note: The "pricingTier" field reflects the plan status of the subscription. However, since the plan status can also be defined at the resource level, there might be misalignment between the subscription's plan status and the resource status. This field helps indicate the coverage status of the resources. \ + * {@link KnownResourcesCoverageStatus} can be used interchangeably with ResourcesCoverageStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **FullyCovered**: This value indicates that all resources associated with the subscription have the Defender plan enabled. \ + * **PartiallyCovered**: This value indicates that some resources under the subscription have the Defender plan enabled, while others have it disabled. There is a mixed coverage status among resources. \ + * **NotCovered**: This value indicates that the Defender plan is disabled for all resources under the subscription. None of the resources are protected by the Defender plan. + */ +export type ResourcesCoverageStatus = string; + +export function extensionArraySerializer(result: Array): any[] { + return result.map((item) => { + return extensionSerializer(item); + }); +} + +export function extensionArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return extensionDeserializer(item); + }); +} + +/** A plan's extension properties */ +export interface Extension { + /** The extension name. Supported values are:

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

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

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

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

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

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

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

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

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

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

*/ + name: string; + /** Indicates whether the extension is enabled. */ + isEnabled: IsEnabled; + /** Property values associated with the extension. */ + additionalExtensionProperties?: Record; + /** Optional. A status describing the success/failure of the extension's enablement/disablement operation. */ + readonly operationStatus?: OperationStatus; +} + +export function extensionSerializer(item: Extension): any { + return { + name: item["name"], + isEnabled: item["isEnabled"], + additionalExtensionProperties: item["additionalExtensionProperties"], + }; +} + +export function extensionDeserializer(item: any): Extension { + return { + name: item["name"], + isEnabled: item["isEnabled"], + additionalExtensionProperties: !item["additionalExtensionProperties"] + ? item["additionalExtensionProperties"] + : Object.fromEntries( + Object.entries(item["additionalExtensionProperties"]).map(([k, p]: [string, any]) => [ + k, + p, + ]), + ), + operationStatus: !item["operationStatus"] + ? item["operationStatus"] + : operationStatusDeserializer(item["operationStatus"]), + }; +} + +/** Indicates whether the extension is enabled. */ +export enum KnownIsEnabled { + /** Indicates the extension is enabled */ + True = "True", + /** Indicates the extension is disabled */ + False = "False", +} + +/** + * Indicates whether the extension is enabled. \ + * {@link KnownIsEnabled} can be used interchangeably with IsEnabled, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **True**: Indicates the extension is enabled \ + * **False**: Indicates the extension is disabled + */ +export type IsEnabled = string; + +/** List of pricing configurations response. */ +export interface PricingList { + /** List of pricing configurations */ + value: Pricing[]; +} + +export function pricingListDeserializer(item: any): PricingList { + return { + value: pricingArrayDeserializer(item["value"]), + }; +} + +export function pricingArraySerializer(result: Array): any[] { + return result.map((item) => { + return pricingSerializer(item); + }); +} + +export function pricingArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return pricingDeserializer(item); + }); +} + +export function _pricingPropertiesSerializer(item: Pricing): any { + return { + pricingTier: item["pricingTier"], + subPlan: item["subPlan"], + enforce: item["enforce"], + extensions: !item["extensions"] + ? item["extensions"] + : extensionArraySerializer(item["extensions"]), + }; +} + +export function _pricingPropertiesDeserializer(item: any) { + return { + pricingTier: item["pricingTier"], + subPlan: item["subPlan"], + freeTrialRemainingTime: item["freeTrialRemainingTime"], + enablementTime: !item["enablementTime"] + ? item["enablementTime"] + : new Date(item["enablementTime"]), + enforce: item["enforce"], + inherited: item["inherited"], + inheritedFrom: item["inheritedFrom"], + resourcesCoverageStatus: item["resourcesCoverageStatus"], + extensions: !item["extensions"] + ? item["extensions"] + : extensionArrayDeserializer(item["extensions"]), + deprecated: item["deprecated"], + replacedBy: !item["replacedBy"] + ? item["replacedBy"] + : item["replacedBy"].map((p: any) => { + return p; + }), + }; +} diff --git a/sdk/security/arm-security/src/models/privateLinksAPI/index.ts b/sdk/security/arm-security/src/models/privateLinksAPI/index.ts new file mode 100644 index 000000000000..92d9ad92a670 --- /dev/null +++ b/sdk/security/arm-security/src/models/privateLinksAPI/index.ts @@ -0,0 +1,12 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + PrivateLinkGroupResource, + PrivateEndpointConnection, + PrivateLinkResource, + PrivateLinkProperties, + PublicNetworkAccess, + PrivateLinkUpdate, +} from "./models.js"; +export { KnownPublicNetworkAccess } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/privateLinksAPI/models.ts b/sdk/security/arm-security/src/models/privateLinksAPI/models.ts new file mode 100644 index 000000000000..e42056f4ad0c --- /dev/null +++ b/sdk/security/arm-security/src/models/privateLinksAPI/models.ts @@ -0,0 +1,242 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ProvisioningState } from "../common/models.js"; +import { + ProxyResource, + Resource, + systemDataDeserializer, + PrivateEndpoint, + PrivateLinkServiceConnectionState, + PrivateEndpointConnectionProvisioningState, + TrackedResource, + _privateLinkGroupResourcePropertiesDeserializer, + _privateEndpointConnectionPropertiesSerializer, + _privateEndpointConnectionPropertiesDeserializer, +} from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** A private link group resource that describes a grouping for the private link. */ +export interface PrivateLinkGroupResource extends ProxyResource { + /** The private link resource group id. */ + readonly groupId?: string; + /** The private link resource required member names. */ + readonly requiredMembers?: string[]; + /** The private link resource private link DNS zone name. */ + requiredZoneNames?: string[]; +} + +export function privateLinkGroupResourceDeserializer(item: any): PrivateLinkGroupResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _privateLinkGroupResourcePropertiesDeserializer(item["properties"])), + }; +} + +export function privateLinkGroupResourceArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return privateLinkGroupResourceDeserializer(item); + }); +} + +/** The private endpoint connection resource. */ +export interface PrivateEndpointConnection extends Resource { + /** The group ids for the private endpoint resource. */ + readonly groupIds?: string[]; + /** The private endpoint resource. */ + privateEndpoint?: PrivateEndpoint; + /** A collection of information about the state of the connection between service consumer and provider. */ + privateLinkServiceConnectionState?: PrivateLinkServiceConnectionState; + /** The provisioning state of the private endpoint connection resource. */ + readonly provisioningState?: PrivateEndpointConnectionProvisioningState; +} + +export function privateEndpointConnectionSerializer(item: PrivateEndpointConnection): any { + return { + properties: areAllPropsUndefined(item, ["privateEndpoint", "privateLinkServiceConnectionState"]) + ? undefined + : _privateEndpointConnectionPropertiesSerializer(item), + }; +} + +export function privateEndpointConnectionDeserializer(item: any): PrivateEndpointConnection { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _privateEndpointConnectionPropertiesDeserializer(item["properties"])), + }; +} + +export function privateEndpointConnectionArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return privateEndpointConnectionSerializer(item); + }); +} + +export function privateEndpointConnectionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return privateEndpointConnectionDeserializer(item); + }); +} + +/** A private link resource that enables secure, private connectivity to Microsoft Defender for Cloud services. This resource manages the lifecycle of private endpoint connections and provides the necessary infrastructure for private connectivity. */ +export interface PrivateLinkResource extends TrackedResource { + /** The current provisioning state of the private link resource. Indicates whether the resource is being created, updated, deleted, or has completed successfully. */ + readonly provisioningState?: ProvisioningState; + /** List of private endpoint connections associated with this private link. Each connection represents a private endpoint from a customer's virtual network. */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** List of private link resources available for connection. For Defender services, this typically includes the 'containers' group with 'api' and regional data endpoints. */ + readonly privateLinkResources?: PrivateLinkGroupResource[]; + /** This determines if traffic is allowed over public network. By default it is disabled. */ + publicNetworkAccess?: PublicNetworkAccess; +} + +export function privateLinkResourceSerializer(item: PrivateLinkResource): any { + return { + tags: item["tags"], + location: item["location"], + properties: _privateLinkResourcePropertiesSerializer(item), + }; +} + +export function privateLinkResourceDeserializer(item: any): PrivateLinkResource { + return { + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + location: item["location"], + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ..._privateLinkResourcePropertiesDeserializer(item["properties"]), + }; +} + +/** Properties of a private link resource. These properties control the behavior and configuration of private endpoint connectivity to Defender services. */ +export interface PrivateLinkProperties { + /** The current provisioning state of the private link resource. Indicates whether the resource is being created, updated, deleted, or has completed successfully. */ + readonly provisioningState?: ProvisioningState; + /** List of private endpoint connections associated with this private link. Each connection represents a private endpoint from a customer's virtual network. */ + readonly privateEndpointConnections?: PrivateEndpointConnection[]; + /** List of private link resources available for connection. For Defender services, this typically includes the 'containers' group with 'api' and regional data endpoints. */ + readonly privateLinkResources?: PrivateLinkGroupResource[]; + /** This determines if traffic is allowed over public network. By default it is disabled. */ + publicNetworkAccess?: PublicNetworkAccess; +} + +export function privateLinkPropertiesSerializer(item: PrivateLinkProperties): any { + return { publicNetworkAccess: item["publicNetworkAccess"] }; +} + +export function privateLinkPropertiesDeserializer(item: any): PrivateLinkProperties { + return { + provisioningState: item["provisioningState"], + privateEndpointConnections: !item["privateEndpointConnections"] + ? item["privateEndpointConnections"] + : privateEndpointConnectionArrayDeserializer(item["privateEndpointConnections"]), + privateLinkResources: !item["privateLinkResources"] + ? item["privateLinkResources"] + : privateLinkGroupResourceArrayDeserializer(item["privateLinkResources"]), + publicNetworkAccess: item["publicNetworkAccess"], + }; +} + +/** This determines if traffic is allowed over public network. By default it is disabled. */ +export enum KnownPublicNetworkAccess { + /** Enabled */ + Enabled = "Enabled", + /** Disabled */ + Disabled = "Disabled", +} + +/** + * This determines if traffic is allowed over public network. By default it is disabled. \ + * {@link KnownPublicNetworkAccess} can be used interchangeably with PublicNetworkAccess, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Enabled**: Enabled \ + * **Disabled**: Disabled + */ +export type PublicNetworkAccess = string; + +/** Request payload for updating a private link resource. Used in PATCH operations to update specific mutable properties without affecting the entire resource configuration. */ +export interface PrivateLinkUpdate { + /** Resource tags */ + tags?: Record; +} + +export function privateLinkUpdateSerializer(item: PrivateLinkUpdate): any { + return { tags: item["tags"] }; +} + +/** Paginated list of private link resources. Contains an array of private links and optional pagination information. */ +export interface _PrivateLinksList { + /** The PrivateLinkResource items on this page */ + readonly value: PrivateLinkResource[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _privateLinksListDeserializer(item: any): _PrivateLinksList { + return { + value: privateLinkResourceArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function privateLinkResourceArraySerializer(result: Array): any[] { + return result.map((item) => { + return privateLinkResourceSerializer(item); + }); +} + +export function privateLinkResourceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return privateLinkResourceDeserializer(item); + }); +} + +export function _privateLinkResourcePropertiesSerializer(item: PrivateLinkResource): any { + return { publicNetworkAccess: item["publicNetworkAccess"] }; +} + +export function _privateLinkResourcePropertiesDeserializer(item: any) { + return { + provisioningState: item["provisioningState"], + privateEndpointConnections: !item["privateEndpointConnections"] + ? item["privateEndpointConnections"] + : privateEndpointConnectionArrayDeserializer(item["privateEndpointConnections"]), + privateLinkResources: !item["privateLinkResources"] + ? item["privateLinkResources"] + : privateLinkGroupResourceArrayDeserializer(item["privateLinkResources"]), + publicNetworkAccess: item["publicNetworkAccess"], + }; +} diff --git a/sdk/security/arm-security/src/models/regulatoryComplianceAPI/index.ts b/sdk/security/arm-security/src/models/regulatoryComplianceAPI/index.ts new file mode 100644 index 000000000000..92ed0339e084 --- /dev/null +++ b/sdk/security/arm-security/src/models/regulatoryComplianceAPI/index.ts @@ -0,0 +1,11 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + RegulatoryComplianceStandard, + RegulatoryComplianceStandardProperties, + RegulatoryComplianceControl, + RegulatoryComplianceControlProperties, + RegulatoryComplianceAssessment, + RegulatoryComplianceAssessmentProperties, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/regulatoryComplianceAPI/models.ts b/sdk/security/arm-security/src/models/regulatoryComplianceAPI/models.ts new file mode 100644 index 000000000000..a20a258089c9 --- /dev/null +++ b/sdk/security/arm-security/src/models/regulatoryComplianceAPI/models.ts @@ -0,0 +1,298 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { State } from "../common/models.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Regulatory compliance standard details and state */ +export interface RegulatoryComplianceStandard extends ProxyResource { + /** Aggregative state based on the standard's supported controls states */ + state?: State; + /** The number of supported regulatory compliance controls of the given standard with a passed state */ + readonly passedControls?: number; + /** The number of supported regulatory compliance controls of the given standard with a failed state */ + readonly failedControls?: number; + /** The number of supported regulatory compliance controls of the given standard with a skipped state */ + readonly skippedControls?: number; + /** The number of regulatory compliance controls of the given standard which are unsupported by automated assessments */ + readonly unsupportedControls?: number; +} + +export function regulatoryComplianceStandardDeserializer(item: any): RegulatoryComplianceStandard { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _regulatoryComplianceStandardPropertiesDeserializer(item["properties"])), + }; +} + +/** Regulatory compliance standard data */ +export interface RegulatoryComplianceStandardProperties { + /** Aggregative state based on the standard's supported controls states */ + state?: State; + /** The number of supported regulatory compliance controls of the given standard with a passed state */ + readonly passedControls?: number; + /** The number of supported regulatory compliance controls of the given standard with a failed state */ + readonly failedControls?: number; + /** The number of supported regulatory compliance controls of the given standard with a skipped state */ + readonly skippedControls?: number; + /** The number of regulatory compliance controls of the given standard which are unsupported by automated assessments */ + readonly unsupportedControls?: number; +} + +export function regulatoryComplianceStandardPropertiesDeserializer( + item: any, +): RegulatoryComplianceStandardProperties { + return { + state: item["state"], + passedControls: item["passedControls"], + failedControls: item["failedControls"], + skippedControls: item["skippedControls"], + unsupportedControls: item["unsupportedControls"], + }; +} + +/** List of regulatory compliance standards response */ +export interface _RegulatoryComplianceStandardList { + /** The RegulatoryComplianceStandard items on this page */ + value: RegulatoryComplianceStandard[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _regulatoryComplianceStandardListDeserializer( + item: any, +): _RegulatoryComplianceStandardList { + return { + value: regulatoryComplianceStandardArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function regulatoryComplianceStandardArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return regulatoryComplianceStandardDeserializer(item); + }); +} + +/** Regulatory compliance control details and state */ +export interface RegulatoryComplianceControl extends ProxyResource { + /** The description of the regulatory compliance control */ + readonly description?: string; + /** Aggregative state based on the control's supported assessments states */ + state?: State; + /** The number of supported regulatory compliance assessments of the given control with a passed state */ + readonly passedAssessments?: number; + /** The number of supported regulatory compliance assessments of the given control with a failed state */ + readonly failedAssessments?: number; + /** The number of supported regulatory compliance assessments of the given control with a skipped state */ + readonly skippedAssessments?: number; +} + +export function regulatoryComplianceControlDeserializer(item: any): RegulatoryComplianceControl { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _regulatoryComplianceControlPropertiesDeserializer(item["properties"])), + }; +} + +/** Regulatory compliance control data */ +export interface RegulatoryComplianceControlProperties { + /** The description of the regulatory compliance control */ + readonly description?: string; + /** Aggregative state based on the control's supported assessments states */ + state?: State; + /** The number of supported regulatory compliance assessments of the given control with a passed state */ + readonly passedAssessments?: number; + /** The number of supported regulatory compliance assessments of the given control with a failed state */ + readonly failedAssessments?: number; + /** The number of supported regulatory compliance assessments of the given control with a skipped state */ + readonly skippedAssessments?: number; +} + +export function regulatoryComplianceControlPropertiesDeserializer( + item: any, +): RegulatoryComplianceControlProperties { + return { + description: item["description"], + state: item["state"], + passedAssessments: item["passedAssessments"], + failedAssessments: item["failedAssessments"], + skippedAssessments: item["skippedAssessments"], + }; +} + +/** List of regulatory compliance controls response */ +export interface _RegulatoryComplianceControlList { + /** The RegulatoryComplianceControl items on this page */ + value: RegulatoryComplianceControl[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _regulatoryComplianceControlListDeserializer( + item: any, +): _RegulatoryComplianceControlList { + return { + value: regulatoryComplianceControlArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function regulatoryComplianceControlArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return regulatoryComplianceControlDeserializer(item); + }); +} + +/** Regulatory compliance assessment details and state */ +export interface RegulatoryComplianceAssessment extends ProxyResource { + /** The description of the regulatory compliance assessment */ + readonly description?: string; + /** The expected type of assessment contained in the AssessmentDetailsLink */ + readonly assessmentType?: string; + /** Link to more detailed assessment results data. The response type will be according to the assessmentType field */ + readonly assessmentDetailsLink?: string; + /** Aggregative state based on the assessment's scanned resources states */ + state?: State; + /** The given assessment's related resources count with passed state. */ + readonly passedResources?: number; + /** The given assessment's related resources count with failed state. */ + readonly failedResources?: number; + /** The given assessment's related resources count with skipped state. */ + readonly skippedResources?: number; + /** The given assessment's related resources count with unsupported state. */ + readonly unsupportedResources?: number; +} + +export function regulatoryComplianceAssessmentDeserializer( + item: any, +): RegulatoryComplianceAssessment { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _regulatoryComplianceAssessmentPropertiesDeserializer(item["properties"])), + }; +} + +/** Regulatory compliance assessment data */ +export interface RegulatoryComplianceAssessmentProperties { + /** The description of the regulatory compliance assessment */ + readonly description?: string; + /** The expected type of assessment contained in the AssessmentDetailsLink */ + readonly assessmentType?: string; + /** Link to more detailed assessment results data. The response type will be according to the assessmentType field */ + readonly assessmentDetailsLink?: string; + /** Aggregative state based on the assessment's scanned resources states */ + state?: State; + /** The given assessment's related resources count with passed state. */ + readonly passedResources?: number; + /** The given assessment's related resources count with failed state. */ + readonly failedResources?: number; + /** The given assessment's related resources count with skipped state. */ + readonly skippedResources?: number; + /** The given assessment's related resources count with unsupported state. */ + readonly unsupportedResources?: number; +} + +export function regulatoryComplianceAssessmentPropertiesDeserializer( + item: any, +): RegulatoryComplianceAssessmentProperties { + return { + description: item["description"], + assessmentType: item["assessmentType"], + assessmentDetailsLink: item["assessmentDetailsLink"], + state: item["state"], + passedResources: item["passedResources"], + failedResources: item["failedResources"], + skippedResources: item["skippedResources"], + unsupportedResources: item["unsupportedResources"], + }; +} + +/** List of regulatory compliance assessment response */ +export interface _RegulatoryComplianceAssessmentList { + /** The RegulatoryComplianceAssessment items on this page */ + value: RegulatoryComplianceAssessment[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _regulatoryComplianceAssessmentListDeserializer( + item: any, +): _RegulatoryComplianceAssessmentList { + return { + value: regulatoryComplianceAssessmentArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function regulatoryComplianceAssessmentArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return regulatoryComplianceAssessmentDeserializer(item); + }); +} + +export function _regulatoryComplianceStandardPropertiesDeserializer(item: any) { + return { + state: item["state"], + passedControls: item["passedControls"], + failedControls: item["failedControls"], + skippedControls: item["skippedControls"], + unsupportedControls: item["unsupportedControls"], + }; +} + +export function _regulatoryComplianceControlPropertiesDeserializer(item: any) { + return { + description: item["description"], + state: item["state"], + passedAssessments: item["passedAssessments"], + failedAssessments: item["failedAssessments"], + skippedAssessments: item["skippedAssessments"], + }; +} + +export function _regulatoryComplianceAssessmentPropertiesDeserializer(item: any) { + return { + description: item["description"], + assessmentType: item["assessmentType"], + assessmentDetailsLink: item["assessmentDetailsLink"], + state: item["state"], + passedResources: item["passedResources"], + failedResources: item["failedResources"], + skippedResources: item["skippedResources"], + unsupportedResources: item["unsupportedResources"], + }; +} diff --git a/sdk/security/arm-security/src/models/secureScoreAPI/index.ts b/sdk/security/arm-security/src/models/secureScoreAPI/index.ts new file mode 100644 index 000000000000..399dd3c45bdb --- /dev/null +++ b/sdk/security/arm-security/src/models/secureScoreAPI/index.ts @@ -0,0 +1,17 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + SecureScoreItem, + SecureScoreItemProperties, + ScoreDetails, + SecureScoreControlDetails, + SecureScoreControlScoreDetails, + SecureScoreControlDefinitionItem, + SecureScoreControlDefinitionItemProperties, + SecureScoreControlDefinitionSource, + ControlType, + AzureResourceLink, + ExpandControlsEnum, +} from "./models.js"; +export { KnownControlType, KnownExpandControlsEnum } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/secureScoreAPI/models.ts b/sdk/security/arm-security/src/models/secureScoreAPI/models.ts new file mode 100644 index 000000000000..d14d8694360d --- /dev/null +++ b/sdk/security/arm-security/src/models/secureScoreAPI/models.ts @@ -0,0 +1,392 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProxyResource, Resource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Secure score item data model */ +export interface SecureScoreItem extends ProxyResource { + /** The initiative's name */ + readonly displayName?: string; + /** score object */ + readonly score?: ScoreDetails; + /** The relative weight for each subscription. Used when calculating an aggregated secure score for multiple subscriptions. */ + readonly weight?: number; +} + +export function secureScoreItemDeserializer(item: any): SecureScoreItem { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _secureScoreItemPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of a calculated secure score. */ +export interface SecureScoreItemProperties { + /** The initiative's name */ + readonly displayName?: string; + /** The relative weight for each subscription. Used when calculating an aggregated secure score for multiple subscriptions. */ + readonly weight?: number; + /** Maximum score available */ + readonly max?: number; + /** Current score */ + readonly current?: number; + /** Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point */ + readonly percentage?: number; +} + +export function secureScoreItemPropertiesDeserializer(item: any): SecureScoreItemProperties { + return { + displayName: item["displayName"], + ...(!item["score"] + ? item["score"] + : _secureScoreItemPropertiesScoreDeserializer(item["score"])), + weight: item["weight"], + }; +} + +/** Calculation result data */ +export interface ScoreDetails { + /** Maximum score available */ + readonly max?: number; + /** Current score */ + readonly current?: number; + /** Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point */ + readonly percentage?: number; +} + +export function scoreDetailsDeserializer(item: any): ScoreDetails { + return { + max: item["max"], + current: item["current"], + percentage: item["percentage"], + }; +} + +/** List of secure scores */ +export interface _SecureScoresList { + /** Collection of secure scores in this page */ + readonly value?: SecureScoreItem[]; + /** The URI to fetch the next page. */ + nextLink?: string; +} + +export function _secureScoresListDeserializer(item: any): _SecureScoresList { + return { + value: !item["value"] ? item["value"] : secureScoreItemArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function secureScoreItemArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return secureScoreItemDeserializer(item); + }); +} + +/** List of security controls */ +export interface _SecureScoreControlList { + /** Collection of security controls in this page */ + readonly value?: SecureScoreControlDetails[]; + /** The URI to fetch the next page. */ + nextLink?: string; +} + +export function _secureScoreControlListDeserializer(item: any): _SecureScoreControlList { + return { + value: !item["value"] + ? item["value"] + : secureScoreControlDetailsArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function secureScoreControlDetailsArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return secureScoreControlDetailsDeserializer(item); + }); +} + +/** Details of the security control, its score, and the health status of the relevant resources. */ +export interface SecureScoreControlDetails extends Resource { + /** User friendly display name of the control */ + readonly displayName?: string; + /** Actual score object for the control */ + score?: ScoreDetails; + /** Number of healthy resources in the control */ + readonly healthyResourceCount?: number; + /** Number of unhealthy resources in the control */ + readonly unhealthyResourceCount?: number; + /** Number of not applicable resources in the control */ + readonly notApplicableResourceCount?: number; + /** The relative weight for this specific control in each of your subscriptions. Used when calculating an aggregated score for this control across all of your subscriptions. */ + readonly weight?: number; + /** Information about the security control. */ + definition?: SecureScoreControlDefinitionItem; +} + +export function secureScoreControlDetailsDeserializer(item: any): SecureScoreControlDetails { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _secureScoreControlDetailsPropertiesDeserializer(item["properties"])), + }; +} + +/** Calculation result data in control level */ +export interface SecureScoreControlScoreDetails { + /** User friendly display name of the control */ + readonly displayName?: string; + /** Number of healthy resources in the control */ + readonly healthyResourceCount?: number; + /** Number of unhealthy resources in the control */ + readonly unhealthyResourceCount?: number; + /** Number of not applicable resources in the control */ + readonly notApplicableResourceCount?: number; + /** The relative weight for this specific control in each of your subscriptions. Used when calculating an aggregated score for this control across all of your subscriptions. */ + readonly weight?: number; + /** Information about the security control. */ + definition?: SecureScoreControlDefinitionItem; + /** Maximum score available */ + readonly max?: number; + /** Current score */ + readonly current?: number; + /** Ratio of the current score divided by the maximum. Rounded to 4 digits after the decimal point */ + readonly percentage?: number; +} + +export function secureScoreControlScoreDetailsDeserializer( + item: any, +): SecureScoreControlScoreDetails { + return { + displayName: item["displayName"], + ...(!item["score"] + ? item["score"] + : _secureScoreControlScoreDetailsScoreDeserializer(item["score"])), + healthyResourceCount: item["healthyResourceCount"], + unhealthyResourceCount: item["unhealthyResourceCount"], + notApplicableResourceCount: item["notApplicableResourceCount"], + weight: item["weight"], + definition: !item["definition"] + ? item["definition"] + : secureScoreControlDefinitionItemDeserializer(item["definition"]), + }; +} + +/** Information about the security control. */ +export interface SecureScoreControlDefinitionItem extends Resource { + /** User friendly display name of the control */ + readonly displayName?: string; + /** User friendly description of the control */ + readonly description?: string; + /** Maximum control score (0..10) */ + readonly maxScore?: number; + /** Source object from which the control was created */ + readonly source?: SecureScoreControlDefinitionSource; + /** Array of assessments metadata IDs that are included in this security control */ + readonly assessmentDefinitions?: AzureResourceLink[]; +} + +export function secureScoreControlDefinitionItemDeserializer( + item: any, +): SecureScoreControlDefinitionItem { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _secureScoreControlDefinitionItemPropertiesDeserializer(item["properties"])), + }; +} + +/** Security Control Definition Properties. */ +export interface SecureScoreControlDefinitionItemProperties { + /** User friendly display name of the control */ + readonly displayName?: string; + /** User friendly description of the control */ + readonly description?: string; + /** Maximum control score (0..10) */ + readonly maxScore?: number; + /** Source object from which the control was created */ + readonly source?: SecureScoreControlDefinitionSource; + /** Array of assessments metadata IDs that are included in this security control */ + readonly assessmentDefinitions?: AzureResourceLink[]; +} + +export function secureScoreControlDefinitionItemPropertiesDeserializer( + item: any, +): SecureScoreControlDefinitionItemProperties { + return { + displayName: item["displayName"], + description: item["description"], + maxScore: item["maxScore"], + source: !item["source"] + ? item["source"] + : secureScoreControlDefinitionSourceDeserializer(item["source"]), + assessmentDefinitions: !item["assessmentDefinitions"] + ? item["assessmentDefinitions"] + : azureResourceLinkArrayDeserializer(item["assessmentDefinitions"]), + }; +} + +/** The type of the security control (For example, BuiltIn) */ +export interface SecureScoreControlDefinitionSource { + /** The type of security control (for example, BuiltIn) */ + sourceType?: ControlType; +} + +export function secureScoreControlDefinitionSourceDeserializer( + item: any, +): SecureScoreControlDefinitionSource { + return { + sourceType: item["sourceType"], + }; +} + +/** The type of security control (for example, BuiltIn) */ +export enum KnownControlType { + /** Microsoft Defender for Cloud managed assessments */ + BuiltIn = "BuiltIn", + /** Non Microsoft Defender for Cloud managed assessments */ + Custom = "Custom", +} + +/** + * The type of security control (for example, BuiltIn) \ + * {@link KnownControlType} can be used interchangeably with ControlType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **BuiltIn**: Microsoft Defender for Cloud managed assessments \ + * **Custom**: Non Microsoft Defender for Cloud managed assessments + */ +export type ControlType = string; + +export function azureResourceLinkArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return azureResourceLinkDeserializer(item); + }); +} + +/** Describes an Azure resource with kind */ +export interface AzureResourceLink { + /** Azure resource Id */ + readonly id?: string; +} + +export function azureResourceLinkDeserializer(item: any): AzureResourceLink { + return { + id: item["id"], + }; +} + +/** List of security controls definition */ +export interface _SecureScoreControlDefinitionList { + /** Collection of security control definitions. */ + readonly value?: SecureScoreControlDefinitionItem[]; + /** The URL to get the next page of results. */ + nextLink?: string; +} + +export function _secureScoreControlDefinitionListDeserializer( + item: any, +): _SecureScoreControlDefinitionList { + return { + value: !item["value"] + ? item["value"] + : secureScoreControlDefinitionItemArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function secureScoreControlDefinitionItemArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return secureScoreControlDefinitionItemDeserializer(item); + }); +} + +/** Known values of {@link ExpandControlsEnum} that the service accepts. */ +export enum KnownExpandControlsEnum { + /** Add definition object for each control */ + Definition = "definition", +} + +/** Type of ExpandControlsEnum */ +export type ExpandControlsEnum = string; + +export function _secureScoreItemPropertiesScoreDeserializer(item: any) { + return { + max: item["max"], + current: item["current"], + percentage: item["percentage"], + }; +} + +export function _secureScoreItemPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + score: !item["score"] ? item["score"] : scoreDetailsDeserializer(item["score"]), + weight: item["weight"], + }; +} + +export function _secureScoreControlScoreDetailsScoreDeserializer(item: any) { + return { + max: item["max"], + current: item["current"], + percentage: item["percentage"], + }; +} + +export function _secureScoreControlDefinitionItemPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + description: item["description"], + maxScore: item["maxScore"], + source: !item["source"] + ? item["source"] + : secureScoreControlDefinitionSourceDeserializer(item["source"]), + assessmentDefinitions: !item["assessmentDefinitions"] + ? item["assessmentDefinitions"] + : azureResourceLinkArrayDeserializer(item["assessmentDefinitions"]), + }; +} + +export function _secureScoreControlDetailsPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + score: !item["score"] ? item["score"] : scoreDetailsDeserializer(item["score"]), + healthyResourceCount: item["healthyResourceCount"], + unhealthyResourceCount: item["unhealthyResourceCount"], + notApplicableResourceCount: item["notApplicableResourceCount"], + weight: item["weight"], + definition: !item["definition"] + ? item["definition"] + : secureScoreControlDefinitionItemDeserializer(item["definition"]), + }; +} diff --git a/sdk/security/arm-security/src/models/securityConnectorsAPI/index.ts b/sdk/security/arm-security/src/models/securityConnectorsAPI/index.ts new file mode 100644 index 000000000000..05eab80c36c3 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityConnectorsAPI/index.ts @@ -0,0 +1,122 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + SecurityConnector, + SecurityConnectorProperties, + CloudName, + CloudOffering, + CloudOfferingUnion, + OfferingType, + CspmMonitorAwsOffering, + CspmMonitorAwsOfferingNativeCloudConnection, + DefenderForContainersAwsOffering, + DefenderForContainersAwsOfferingKubernetesService, + DefenderForContainersAwsOfferingKubernetesDataCollection, + DefenderForContainersAwsOfferingCloudWatchToKinesis, + DefenderForContainersAwsOfferingKinesisToS3, + DefenderForContainersAwsOfferingMdcContainersImageAssessment, + DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderForContainersAwsOfferingVmScanners, + DefenderForServersAwsOffering, + DefenderForServersAwsOfferingDefenderForServers, + DefenderForServersAwsOfferingArcAutoProvisioning, + DefenderForServersAwsOfferingVaAutoProvisioning, + DefenderForServersAwsOfferingVaAutoProvisioningConfiguration, + Type, + DefenderForServersAwsOfferingMdeAutoProvisioning, + DefenderForServersAwsOfferingSubPlan, + SubPlan, + DefenderForServersAwsOfferingVmScanners, + DefenderFoDatabasesAwsOffering, + DefenderFoDatabasesAwsOfferingArcAutoProvisioning, + DefenderFoDatabasesAwsOfferingRds, + DefenderFoDatabasesAwsOfferingDatabasesDspm, + CspmMonitorGcpOffering, + CspmMonitorGcpOfferingNativeCloudConnection, + DefenderForServersGcpOffering, + DefenderForServersGcpOfferingDefenderForServers, + DefenderForServersGcpOfferingArcAutoProvisioning, + DefenderForServersGcpOfferingVaAutoProvisioning, + DefenderForServersGcpOfferingVaAutoProvisioningConfiguration, + DefenderForServersGcpOfferingMdeAutoProvisioning, + DefenderForServersGcpOfferingSubPlan, + DefenderForServersGcpOfferingVmScanners, + DefenderForDatabasesGcpOffering, + DefenderForDatabasesGcpOfferingArcAutoProvisioning, + DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning, + DefenderForContainersGcpOffering, + DefenderForContainersGcpOfferingNativeCloudConnection, + DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection, + DefenderForContainersGcpOfferingMdcContainersImageAssessment, + DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderForContainersGcpOfferingVmScanners, + CspmMonitorGithubOffering, + CspmMonitorAzureDevOpsOffering, + DefenderCspmAwsOffering, + DefenderCspmAwsOfferingVmScanners, + DefenderCspmAwsOfferingDataSensitivityDiscovery, + DefenderCspmAwsOfferingDatabasesDspm, + DefenderCspmAwsOfferingCiem, + DefenderCspmAwsOfferingCiemDiscovery, + DefenderCspmAwsOfferingCiemOidc, + DefenderCspmAwsOfferingMdcContainersImageAssessment, + DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S, + DefenderCspmGcpOffering, + DefenderCspmGcpOfferingCiemDiscovery, + DefenderCspmGcpOfferingVmScanners, + DefenderCspmGcpOfferingDataSensitivityDiscovery, + DefenderCspmGcpOfferingMdcContainersImageAssessment, + DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S, + CspmMonitorGitLabOffering, + CspmMonitorDockerHubOffering, + DefenderForContainersDockerHubOffering, + DefenderCspmDockerHubOffering, + CspmMonitorJFrogOffering, + DefenderForContainersJFrogOffering, + DefenderCspmJFrogOffering, + DefenderCspmJFrogOfferingMdcContainersImageAssessment, + EnvironmentData, + EnvironmentDataUnion, + EnvironmentType, + AwsEnvironmentData, + AwsOrganizationalData, + AwsOrganizationalDataUnion, + OrganizationMembershipType, + AwsOrganizationalDataMaster, + AwsOrganizationalDataMember, + GcpProjectEnvironmentData, + GcpOrganizationalData, + GcpOrganizationalDataUnion, + GcpOrganizationalDataOrganization, + GcpOrganizationalDataMember, + GcpProjectDetails, + GithubScopeEnvironmentData, + AzureDevOpsScopeEnvironmentData, + GitlabScopeEnvironmentData, + DockerHubEnvironmentData, + Authentication, + AuthenticationUnion, + AuthenticationType, + AccessTokenAuthentication, + JFrogEnvironmentData, + VmScannersAws, + VmScannersBase, + VmScannersBaseConfiguration, + ScanningMode, + ArcAutoProvisioningAws, + ArcAutoProvisioning, + ArcAutoProvisioningConfiguration, + ArcAutoProvisioningGcp, + VmScannersGcp, +} from "./models.js"; +export { + KnownCloudName, + KnownOfferingType, + KnownType, + KnownSubPlan, + KnownEnvironmentType, + KnownOrganizationMembershipType, + KnownAuthenticationType, + KnownScanningMode, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securityConnectorsAPI/models.ts b/sdk/security/arm-security/src/models/securityConnectorsAPI/models.ts new file mode 100644 index 000000000000..e68106a27a51 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityConnectorsAPI/models.ts @@ -0,0 +1,3329 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** The security connector resource. */ +export interface SecurityConnector extends ProxyResource { + /** Resource tags. */ + tags?: Record; + /** The geo-location where the resource lives */ + 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; + /** The multi cloud resource identifier (account id in case of AWS connector, project number in case of GCP connector). */ + hierarchyIdentifier?: string; + /** The date on which the trial period will end, if applicable. Trial period exists for 30 days after upgrading to payed offerings. */ + readonly hierarchyIdentifierTrialEndDate?: Date; + /** The multi cloud resource's cloud name. */ + environmentName?: CloudName; + /** A collection of offerings for the security connector. */ + offerings?: CloudOfferingUnion[]; + /** The security connector environment data. */ + environmentData?: EnvironmentDataUnion; +} + +export function securityConnectorSerializer(item: SecurityConnector): any { + return { + properties: areAllPropsUndefined(item, [ + "hierarchyIdentifier", + "environmentName", + "offerings", + "environmentData", + ]) + ? undefined + : _securityConnectorPropertiesSerializer(item), + tags: item["tags"], + location: item["location"], + kind: item["kind"], + etag: item["etag"], + }; +} + +export function securityConnectorDeserializer(item: any): SecurityConnector { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securityConnectorPropertiesDeserializer(item["properties"])), + tags: !item["tags"] + ? item["tags"] + : Object.fromEntries(Object.entries(item["tags"]).map(([k, p]: [string, any]) => [k, p])), + location: item["location"], + kind: item["kind"], + etag: item["etag"], + }; +} + +/** A set of properties that defines the security connector configuration. */ +export interface SecurityConnectorProperties { + /** The multi cloud resource identifier (account id in case of AWS connector, project number in case of GCP connector). */ + hierarchyIdentifier?: string; + /** The date on which the trial period will end, if applicable. Trial period exists for 30 days after upgrading to payed offerings. */ + readonly hierarchyIdentifierTrialEndDate?: Date; + /** The multi cloud resource's cloud name. */ + environmentName?: CloudName; + /** A collection of offerings for the security connector. */ + offerings?: CloudOfferingUnion[]; + /** The security connector environment data. */ + environmentData?: EnvironmentDataUnion; +} + +export function securityConnectorPropertiesSerializer(item: SecurityConnectorProperties): any { + return { + hierarchyIdentifier: item["hierarchyIdentifier"], + environmentName: item["environmentName"], + offerings: !item["offerings"] + ? item["offerings"] + : cloudOfferingUnionArraySerializer(item["offerings"]), + environmentData: !item["environmentData"] + ? item["environmentData"] + : environmentDataUnionSerializer(item["environmentData"]), + }; +} + +export function securityConnectorPropertiesDeserializer(item: any): SecurityConnectorProperties { + return { + hierarchyIdentifier: item["hierarchyIdentifier"], + hierarchyIdentifierTrialEndDate: !item["hierarchyIdentifierTrialEndDate"] + ? item["hierarchyIdentifierTrialEndDate"] + : new Date(item["hierarchyIdentifierTrialEndDate"]), + environmentName: item["environmentName"], + offerings: !item["offerings"] + ? item["offerings"] + : cloudOfferingUnionArrayDeserializer(item["offerings"]), + environmentData: !item["environmentData"] + ? item["environmentData"] + : environmentDataUnionDeserializer(item["environmentData"]), + }; +} + +/** The multi cloud resource's cloud name. */ +export enum KnownCloudName { + /** Azure */ + Azure = "Azure", + /** AWS */ + AWS = "AWS", + /** GCP */ + GCP = "GCP", + /** Github */ + Github = "Github", + /** AzureDevOps */ + AzureDevOps = "AzureDevOps", + /** GitLab */ + GitLab = "GitLab", + /** DockerHub */ + DockerHub = "DockerHub", + /** JFrog */ + JFrog = "JFrog", +} + +/** + * The multi cloud resource's cloud name. \ + * {@link KnownCloudName} can be used interchangeably with CloudName, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Azure**: Azure \ + * **AWS**: AWS \ + * **GCP**: GCP \ + * **Github**: Github \ + * **AzureDevOps**: AzureDevOps \ + * **GitLab**: GitLab \ + * **DockerHub**: DockerHub \ + * **JFrog**: JFrog + */ +export type CloudName = string; + +export function cloudOfferingUnionArraySerializer(result: Array): any[] { + return result.map((item) => { + return cloudOfferingUnionSerializer(item); + }); +} + +export function cloudOfferingUnionArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return cloudOfferingUnionDeserializer(item); + }); +} + +/** The security offering details */ +export interface CloudOffering { + /** The type of the security offering. */ + /** The discriminator possible values: CspmMonitorAws, DefenderForContainersAws, DefenderForServersAws, DefenderForDatabasesAws, CspmMonitorGcp, DefenderForServersGcp, DefenderForDatabasesGcp, DefenderForContainersGcp, CspmMonitorGithub, CspmMonitorAzureDevOps, DefenderCspmAws, DefenderCspmGcp, CspmMonitorGitLab, CspmMonitorDockerHub, DefenderForContainersDockerHub, DefenderCspmDockerHub, CspmMonitorJFrog, DefenderForContainersJFrog, DefenderCspmJFrog */ + offeringType: OfferingType; + /** The offering description. */ + readonly description?: string; +} + +export function cloudOfferingSerializer(item: CloudOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function cloudOfferingDeserializer(item: any): CloudOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** Alias for CloudOfferingUnion */ +export type CloudOfferingUnion = + | CspmMonitorAwsOffering + | DefenderForContainersAwsOffering + | DefenderForServersAwsOffering + | DefenderFoDatabasesAwsOffering + | CspmMonitorGcpOffering + | DefenderForServersGcpOffering + | DefenderForDatabasesGcpOffering + | DefenderForContainersGcpOffering + | CspmMonitorGithubOffering + | CspmMonitorAzureDevOpsOffering + | DefenderCspmAwsOffering + | DefenderCspmGcpOffering + | CspmMonitorGitLabOffering + | CspmMonitorDockerHubOffering + | DefenderForContainersDockerHubOffering + | DefenderCspmDockerHubOffering + | CspmMonitorJFrogOffering + | DefenderForContainersJFrogOffering + | DefenderCspmJFrogOffering + | CloudOffering; + +export function cloudOfferingUnionSerializer(item: CloudOfferingUnion): any { + switch (item.offeringType) { + case "CspmMonitorAws": + return cspmMonitorAwsOfferingSerializer(item as CspmMonitorAwsOffering); + + case "DefenderForContainersAws": + return defenderForContainersAwsOfferingSerializer(item as DefenderForContainersAwsOffering); + + case "DefenderForServersAws": + return defenderForServersAwsOfferingSerializer(item as DefenderForServersAwsOffering); + + case "DefenderForDatabasesAws": + return defenderFoDatabasesAwsOfferingSerializer(item as DefenderFoDatabasesAwsOffering); + + case "CspmMonitorGcp": + return cspmMonitorGcpOfferingSerializer(item as CspmMonitorGcpOffering); + + case "DefenderForServersGcp": + return defenderForServersGcpOfferingSerializer(item as DefenderForServersGcpOffering); + + case "DefenderForDatabasesGcp": + return defenderForDatabasesGcpOfferingSerializer(item as DefenderForDatabasesGcpOffering); + + case "DefenderForContainersGcp": + return defenderForContainersGcpOfferingSerializer(item as DefenderForContainersGcpOffering); + + case "CspmMonitorGithub": + return cspmMonitorGithubOfferingSerializer(item as CspmMonitorGithubOffering); + + case "CspmMonitorAzureDevOps": + return cspmMonitorAzureDevOpsOfferingSerializer(item as CspmMonitorAzureDevOpsOffering); + + case "DefenderCspmAws": + return defenderCspmAwsOfferingSerializer(item as DefenderCspmAwsOffering); + + case "DefenderCspmGcp": + return defenderCspmGcpOfferingSerializer(item as DefenderCspmGcpOffering); + + case "CspmMonitorGitLab": + return cspmMonitorGitLabOfferingSerializer(item as CspmMonitorGitLabOffering); + + case "CspmMonitorDockerHub": + return cspmMonitorDockerHubOfferingSerializer(item as CspmMonitorDockerHubOffering); + + case "DefenderForContainersDockerHub": + return defenderForContainersDockerHubOfferingSerializer( + item as DefenderForContainersDockerHubOffering, + ); + + case "DefenderCspmDockerHub": + return defenderCspmDockerHubOfferingSerializer(item as DefenderCspmDockerHubOffering); + + case "CspmMonitorJFrog": + return cspmMonitorJFrogOfferingSerializer(item as CspmMonitorJFrogOffering); + + case "DefenderForContainersJFrog": + return defenderForContainersJFrogOfferingSerializer( + item as DefenderForContainersJFrogOffering, + ); + + case "DefenderCspmJFrog": + return defenderCspmJFrogOfferingSerializer(item as DefenderCspmJFrogOffering); + + default: + return cloudOfferingSerializer(item); + } +} + +export function cloudOfferingUnionDeserializer(item: any): CloudOfferingUnion { + switch (item["offeringType"]) { + case "CspmMonitorAws": + return cspmMonitorAwsOfferingDeserializer(item as CspmMonitorAwsOffering); + + case "DefenderForContainersAws": + return defenderForContainersAwsOfferingDeserializer(item as DefenderForContainersAwsOffering); + + case "DefenderForServersAws": + return defenderForServersAwsOfferingDeserializer(item as DefenderForServersAwsOffering); + + case "DefenderForDatabasesAws": + return defenderFoDatabasesAwsOfferingDeserializer(item as DefenderFoDatabasesAwsOffering); + + case "CspmMonitorGcp": + return cspmMonitorGcpOfferingDeserializer(item as CspmMonitorGcpOffering); + + case "DefenderForServersGcp": + return defenderForServersGcpOfferingDeserializer(item as DefenderForServersGcpOffering); + + case "DefenderForDatabasesGcp": + return defenderForDatabasesGcpOfferingDeserializer(item as DefenderForDatabasesGcpOffering); + + case "DefenderForContainersGcp": + return defenderForContainersGcpOfferingDeserializer(item as DefenderForContainersGcpOffering); + + case "CspmMonitorGithub": + return cspmMonitorGithubOfferingDeserializer(item as CspmMonitorGithubOffering); + + case "CspmMonitorAzureDevOps": + return cspmMonitorAzureDevOpsOfferingDeserializer(item as CspmMonitorAzureDevOpsOffering); + + case "DefenderCspmAws": + return defenderCspmAwsOfferingDeserializer(item as DefenderCspmAwsOffering); + + case "DefenderCspmGcp": + return defenderCspmGcpOfferingDeserializer(item as DefenderCspmGcpOffering); + + case "CspmMonitorGitLab": + return cspmMonitorGitLabOfferingDeserializer(item as CspmMonitorGitLabOffering); + + case "CspmMonitorDockerHub": + return cspmMonitorDockerHubOfferingDeserializer(item as CspmMonitorDockerHubOffering); + + case "DefenderForContainersDockerHub": + return defenderForContainersDockerHubOfferingDeserializer( + item as DefenderForContainersDockerHubOffering, + ); + + case "DefenderCspmDockerHub": + return defenderCspmDockerHubOfferingDeserializer(item as DefenderCspmDockerHubOffering); + + case "CspmMonitorJFrog": + return cspmMonitorJFrogOfferingDeserializer(item as CspmMonitorJFrogOffering); + + case "DefenderForContainersJFrog": + return defenderForContainersJFrogOfferingDeserializer( + item as DefenderForContainersJFrogOffering, + ); + + case "DefenderCspmJFrog": + return defenderCspmJFrogOfferingDeserializer(item as DefenderCspmJFrogOffering); + + default: + return cloudOfferingDeserializer(item); + } +} + +/** The type of the security offering. */ +export enum KnownOfferingType { + /** CspmMonitorAws */ + CspmMonitorAws = "CspmMonitorAws", + /** DefenderForContainersAws */ + DefenderForContainersAws = "DefenderForContainersAws", + /** DefenderForServersAws */ + DefenderForServersAws = "DefenderForServersAws", + /** DefenderForDatabasesAws */ + DefenderForDatabasesAws = "DefenderForDatabasesAws", + /** CspmMonitorGcp */ + CspmMonitorGcp = "CspmMonitorGcp", + /** CspmMonitorGithub */ + CspmMonitorGithub = "CspmMonitorGithub", + /** CspmMonitorAzureDevOps */ + CspmMonitorAzureDevOps = "CspmMonitorAzureDevOps", + /** DefenderForServersGcp */ + DefenderForServersGcp = "DefenderForServersGcp", + /** DefenderForContainersGcp */ + DefenderForContainersGcp = "DefenderForContainersGcp", + /** DefenderForDatabasesGcp */ + DefenderForDatabasesGcp = "DefenderForDatabasesGcp", + /** DefenderCspmAws */ + DefenderCspmAws = "DefenderCspmAws", + /** DefenderCspmGcp */ + DefenderCspmGcp = "DefenderCspmGcp", + /** CspmMonitorGitLab */ + CspmMonitorGitLab = "CspmMonitorGitLab", + /** CspmMonitorDockerHub */ + CspmMonitorDockerHub = "CspmMonitorDockerHub", + /** DefenderForContainersDockerHub */ + DefenderForContainersDockerHub = "DefenderForContainersDockerHub", + /** DefenderCspmDockerHub */ + DefenderCspmDockerHub = "DefenderCspmDockerHub", + /** CspmMonitorJFrog */ + CspmMonitorJFrog = "CspmMonitorJFrog", + /** DefenderForContainersJFrog */ + DefenderForContainersJFrog = "DefenderForContainersJFrog", + /** DefenderCspmJFrog */ + DefenderCspmJFrog = "DefenderCspmJFrog", +} + +/** + * The type of the security offering. \ + * {@link KnownOfferingType} can be used interchangeably with OfferingType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CspmMonitorAws**: CspmMonitorAws \ + * **DefenderForContainersAws**: DefenderForContainersAws \ + * **DefenderForServersAws**: DefenderForServersAws \ + * **DefenderForDatabasesAws**: DefenderForDatabasesAws \ + * **CspmMonitorGcp**: CspmMonitorGcp \ + * **CspmMonitorGithub**: CspmMonitorGithub \ + * **CspmMonitorAzureDevOps**: CspmMonitorAzureDevOps \ + * **DefenderForServersGcp**: DefenderForServersGcp \ + * **DefenderForContainersGcp**: DefenderForContainersGcp \ + * **DefenderForDatabasesGcp**: DefenderForDatabasesGcp \ + * **DefenderCspmAws**: DefenderCspmAws \ + * **DefenderCspmGcp**: DefenderCspmGcp \ + * **CspmMonitorGitLab**: CspmMonitorGitLab \ + * **CspmMonitorDockerHub**: CspmMonitorDockerHub \ + * **DefenderForContainersDockerHub**: DefenderForContainersDockerHub \ + * **DefenderCspmDockerHub**: DefenderCspmDockerHub \ + * **CspmMonitorJFrog**: CspmMonitorJFrog \ + * **DefenderForContainersJFrog**: DefenderForContainersJFrog \ + * **DefenderCspmJFrog**: DefenderCspmJFrog + */ +export type OfferingType = string; + +/** The CSPM monitoring for AWS offering */ +export interface CspmMonitorAwsOffering extends CloudOffering { + /** The native cloud connection configuration */ + nativeCloudConnection?: CspmMonitorAwsOfferingNativeCloudConnection; + /** The type of the security offering. */ + offeringType: "CspmMonitorAws"; +} + +export function cspmMonitorAwsOfferingSerializer(item: CspmMonitorAwsOffering): any { + return { + offeringType: item["offeringType"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : cspmMonitorAwsOfferingNativeCloudConnectionSerializer(item["nativeCloudConnection"]), + }; +} + +export function cspmMonitorAwsOfferingDeserializer(item: any): CspmMonitorAwsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : cspmMonitorAwsOfferingNativeCloudConnectionDeserializer(item["nativeCloudConnection"]), + }; +} + +/** The native cloud connection configuration */ +export interface CspmMonitorAwsOfferingNativeCloudConnection { + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function cspmMonitorAwsOfferingNativeCloudConnectionSerializer( + item: CspmMonitorAwsOfferingNativeCloudConnection, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function cspmMonitorAwsOfferingNativeCloudConnectionDeserializer( + item: any, +): CspmMonitorAwsOfferingNativeCloudConnection { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The Defender for Containers AWS offering */ +export interface DefenderForContainersAwsOffering extends CloudOffering { + /** The kubernetes service connection configuration */ + kubernetesService?: DefenderForContainersAwsOfferingKubernetesService; + /** The kubernetes data collection connection configuration */ + kubernetesDataCollection?: DefenderForContainersAwsOfferingKubernetesDataCollection; + /** The cloudwatch to kinesis connection configuration */ + cloudWatchToKinesis?: DefenderForContainersAwsOfferingCloudWatchToKinesis; + /** The kinesis to s3 connection configuration */ + kinesisToS3?: DefenderForContainersAwsOfferingKinesisToS3; + /** Is audit logs data collection enabled */ + enableAuditLogsAutoProvisioning?: boolean; + /** Is Microsoft Defender for Cloud Kubernetes agent auto provisioning enabled */ + enableDefenderAgentAutoProvisioning?: boolean; + /** Is Policy Kubernetes agent auto provisioning enabled */ + enablePolicyAgentAutoProvisioning?: boolean; + /** The retention time in days of kube audit logs set on the CloudWatch log group */ + kubeAuditRetentionTime?: number; + /** The externalId used by the data reader to prevent the confused deputy attack */ + dataCollectionExternalId?: string; + /** The Microsoft Defender container image assessment configuration */ + mdcContainersImageAssessment?: DefenderForContainersAwsOfferingMdcContainersImageAssessment; + /** The Microsoft Defender container agentless discovery K8s configuration */ + mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S; + /** The Microsoft Defender for Container K8s VM host scanning configuration */ + vmScanners?: DefenderForContainersAwsOfferingVmScanners; + /** The type of the security offering. */ + offeringType: "DefenderForContainersAws"; +} + +export function defenderForContainersAwsOfferingSerializer( + item: DefenderForContainersAwsOffering, +): any { + return { + offeringType: item["offeringType"], + kubernetesService: !item["kubernetesService"] + ? item["kubernetesService"] + : defenderForContainersAwsOfferingKubernetesServiceSerializer(item["kubernetesService"]), + kubernetesDataCollection: !item["kubernetesDataCollection"] + ? item["kubernetesDataCollection"] + : defenderForContainersAwsOfferingKubernetesDataCollectionSerializer( + item["kubernetesDataCollection"], + ), + cloudWatchToKinesis: !item["cloudWatchToKinesis"] + ? item["cloudWatchToKinesis"] + : defenderForContainersAwsOfferingCloudWatchToKinesisSerializer(item["cloudWatchToKinesis"]), + kinesisToS3: !item["kinesisToS3"] + ? item["kinesisToS3"] + : defenderForContainersAwsOfferingKinesisToS3Serializer(item["kinesisToS3"]), + enableAuditLogsAutoProvisioning: item["enableAuditLogsAutoProvisioning"], + enableDefenderAgentAutoProvisioning: item["enableDefenderAgentAutoProvisioning"], + enablePolicyAgentAutoProvisioning: item["enablePolicyAgentAutoProvisioning"], + kubeAuditRetentionTime: item["kubeAuditRetentionTime"], + dataCollectionExternalId: item["dataCollectionExternalId"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderForContainersAwsOfferingMdcContainersImageAssessmentSerializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8s: !item["mdcContainersAgentlessDiscoveryK8S"] + ? item["mdcContainersAgentlessDiscoveryK8S"] + : defenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item["mdcContainersAgentlessDiscoveryK8S"], + ), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForContainersAwsOfferingVmScannersSerializer(item["vmScanners"]), + }; +} + +export function defenderForContainersAwsOfferingDeserializer( + item: any, +): DefenderForContainersAwsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + kubernetesService: !item["kubernetesService"] + ? item["kubernetesService"] + : defenderForContainersAwsOfferingKubernetesServiceDeserializer(item["kubernetesService"]), + kubernetesDataCollection: !item["kubernetesDataCollection"] + ? item["kubernetesDataCollection"] + : defenderForContainersAwsOfferingKubernetesDataCollectionDeserializer( + item["kubernetesDataCollection"], + ), + cloudWatchToKinesis: !item["cloudWatchToKinesis"] + ? item["cloudWatchToKinesis"] + : defenderForContainersAwsOfferingCloudWatchToKinesisDeserializer( + item["cloudWatchToKinesis"], + ), + kinesisToS3: !item["kinesisToS3"] + ? item["kinesisToS3"] + : defenderForContainersAwsOfferingKinesisToS3Deserializer(item["kinesisToS3"]), + enableAuditLogsAutoProvisioning: item["enableAuditLogsAutoProvisioning"], + enableDefenderAgentAutoProvisioning: item["enableDefenderAgentAutoProvisioning"], + enablePolicyAgentAutoProvisioning: item["enablePolicyAgentAutoProvisioning"], + kubeAuditRetentionTime: item["kubeAuditRetentionTime"], + dataCollectionExternalId: item["dataCollectionExternalId"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderForContainersAwsOfferingMdcContainersImageAssessmentDeserializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8S: !item["mdcContainersAgentlessDiscoveryK8s"] + ? item["mdcContainersAgentlessDiscoveryK8s"] + : defenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item["mdcContainersAgentlessDiscoveryK8s"], + ), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForContainersAwsOfferingVmScannersDeserializer(item["vmScanners"]), + }; +} + +/** The kubernetes service connection configuration */ +export interface DefenderForContainersAwsOfferingKubernetesService { + /** The cloud role ARN in AWS for this feature used for provisioning resources */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingKubernetesServiceSerializer( + item: DefenderForContainersAwsOfferingKubernetesService, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingKubernetesServiceDeserializer( + item: any, +): DefenderForContainersAwsOfferingKubernetesService { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The kubernetes data collection connection configuration */ +export interface DefenderForContainersAwsOfferingKubernetesDataCollection { + /** The cloud role ARN in AWS for this feature used for reading data */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingKubernetesDataCollectionSerializer( + item: DefenderForContainersAwsOfferingKubernetesDataCollection, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingKubernetesDataCollectionDeserializer( + item: any, +): DefenderForContainersAwsOfferingKubernetesDataCollection { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The cloudwatch to kinesis connection configuration */ +export interface DefenderForContainersAwsOfferingCloudWatchToKinesis { + /** The cloud role ARN in AWS used by CloudWatch to transfer data into Kinesis */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingCloudWatchToKinesisSerializer( + item: DefenderForContainersAwsOfferingCloudWatchToKinesis, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingCloudWatchToKinesisDeserializer( + item: any, +): DefenderForContainersAwsOfferingCloudWatchToKinesis { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The kinesis to s3 connection configuration */ +export interface DefenderForContainersAwsOfferingKinesisToS3 { + /** The cloud role ARN in AWS used by Kinesis to transfer data into S3 */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingKinesisToS3Serializer( + item: DefenderForContainersAwsOfferingKinesisToS3, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingKinesisToS3Deserializer( + item: any, +): DefenderForContainersAwsOfferingKinesisToS3 { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The Microsoft Defender container image assessment configuration */ +export interface DefenderForContainersAwsOfferingMdcContainersImageAssessment { + /** Is Microsoft Defender container image assessment enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingMdcContainersImageAssessmentSerializer( + item: DefenderForContainersAwsOfferingMdcContainersImageAssessment, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingMdcContainersImageAssessmentDeserializer( + item: any, +): DefenderForContainersAwsOfferingMdcContainersImageAssessment { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The Microsoft Defender container agentless discovery K8s configuration */ +export interface DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S { + /** Is Microsoft Defender container agentless discovery K8s enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item: DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item: any, +): DefenderForContainersAwsOfferingMdcContainersAgentlessDiscoveryK8S { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The Microsoft Defender for Container K8s VM host scanning configuration */ +export interface DefenderForContainersAwsOfferingVmScanners extends VmScannersAws {} + +export function defenderForContainersAwsOfferingVmScannersSerializer( + item: DefenderForContainersAwsOfferingVmScanners, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForContainersAwsOfferingVmScannersDeserializer( + item: any, +): DefenderForContainersAwsOfferingVmScanners { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Defender for Servers AWS offering */ +export interface DefenderForServersAwsOffering extends CloudOffering { + /** The Defender for servers connection configuration */ + defenderForServers?: DefenderForServersAwsOfferingDefenderForServers; + /** The ARC autoprovisioning configuration */ + arcAutoProvisioning?: DefenderForServersAwsOfferingArcAutoProvisioning; + /** The Vulnerability Assessment autoprovisioning configuration */ + vaAutoProvisioning?: DefenderForServersAwsOfferingVaAutoProvisioning; + /** The Microsoft Defender for Endpoint autoprovisioning configuration */ + mdeAutoProvisioning?: DefenderForServersAwsOfferingMdeAutoProvisioning; + /** configuration for the servers offering subPlan */ + subPlan?: DefenderForServersAwsOfferingSubPlan; + /** The Microsoft Defender for Server VM scanning configuration */ + vmScanners?: DefenderForServersAwsOfferingVmScanners; + /** The type of the security offering. */ + offeringType: "DefenderForServersAws"; +} + +export function defenderForServersAwsOfferingSerializer(item: DefenderForServersAwsOffering): any { + return { + offeringType: item["offeringType"], + defenderForServers: !item["defenderForServers"] + ? item["defenderForServers"] + : defenderForServersAwsOfferingDefenderForServersSerializer(item["defenderForServers"]), + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForServersAwsOfferingArcAutoProvisioningSerializer(item["arcAutoProvisioning"]), + vaAutoProvisioning: !item["vaAutoProvisioning"] + ? item["vaAutoProvisioning"] + : defenderForServersAwsOfferingVaAutoProvisioningSerializer(item["vaAutoProvisioning"]), + mdeAutoProvisioning: !item["mdeAutoProvisioning"] + ? item["mdeAutoProvisioning"] + : defenderForServersAwsOfferingMdeAutoProvisioningSerializer(item["mdeAutoProvisioning"]), + subPlan: !item["subPlan"] + ? item["subPlan"] + : defenderForServersAwsOfferingSubPlanSerializer(item["subPlan"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForServersAwsOfferingVmScannersSerializer(item["vmScanners"]), + }; +} + +export function defenderForServersAwsOfferingDeserializer( + item: any, +): DefenderForServersAwsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + defenderForServers: !item["defenderForServers"] + ? item["defenderForServers"] + : defenderForServersAwsOfferingDefenderForServersDeserializer(item["defenderForServers"]), + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForServersAwsOfferingArcAutoProvisioningDeserializer(item["arcAutoProvisioning"]), + vaAutoProvisioning: !item["vaAutoProvisioning"] + ? item["vaAutoProvisioning"] + : defenderForServersAwsOfferingVaAutoProvisioningDeserializer(item["vaAutoProvisioning"]), + mdeAutoProvisioning: !item["mdeAutoProvisioning"] + ? item["mdeAutoProvisioning"] + : defenderForServersAwsOfferingMdeAutoProvisioningDeserializer(item["mdeAutoProvisioning"]), + subPlan: !item["subPlan"] + ? item["subPlan"] + : defenderForServersAwsOfferingSubPlanDeserializer(item["subPlan"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForServersAwsOfferingVmScannersDeserializer(item["vmScanners"]), + }; +} + +/** The Defender for servers connection configuration */ +export interface DefenderForServersAwsOfferingDefenderForServers { + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderForServersAwsOfferingDefenderForServersSerializer( + item: DefenderForServersAwsOfferingDefenderForServers, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderForServersAwsOfferingDefenderForServersDeserializer( + item: any, +): DefenderForServersAwsOfferingDefenderForServers { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The ARC autoprovisioning configuration */ +export interface DefenderForServersAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws {} + +export function defenderForServersAwsOfferingArcAutoProvisioningSerializer( + item: DefenderForServersAwsOfferingArcAutoProvisioning, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForServersAwsOfferingArcAutoProvisioningDeserializer( + item: any, +): DefenderForServersAwsOfferingArcAutoProvisioning { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Vulnerability Assessment autoprovisioning configuration */ +export interface DefenderForServersAwsOfferingVaAutoProvisioning { + /** Is Vulnerability Assessment auto provisioning enabled */ + enabled?: boolean; + /** configuration for Vulnerability Assessment autoprovisioning */ + configuration?: DefenderForServersAwsOfferingVaAutoProvisioningConfiguration; +} + +export function defenderForServersAwsOfferingVaAutoProvisioningSerializer( + item: DefenderForServersAwsOfferingVaAutoProvisioning, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : defenderForServersAwsOfferingVaAutoProvisioningConfigurationSerializer( + item["configuration"], + ), + }; +} + +export function defenderForServersAwsOfferingVaAutoProvisioningDeserializer( + item: any, +): DefenderForServersAwsOfferingVaAutoProvisioning { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : defenderForServersAwsOfferingVaAutoProvisioningConfigurationDeserializer( + item["configuration"], + ), + }; +} + +/** configuration for Vulnerability Assessment autoprovisioning */ +export interface DefenderForServersAwsOfferingVaAutoProvisioningConfiguration { + /** The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' */ + type?: Type; +} + +export function defenderForServersAwsOfferingVaAutoProvisioningConfigurationSerializer( + item: DefenderForServersAwsOfferingVaAutoProvisioningConfiguration, +): any { + return { type: item["type"] }; +} + +export function defenderForServersAwsOfferingVaAutoProvisioningConfigurationDeserializer( + item: any, +): DefenderForServersAwsOfferingVaAutoProvisioningConfiguration { + return { + type: item["type"], + }; +} + +/** The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' */ +export enum KnownType { + /** Qualys */ + Qualys = "Qualys", + /** TVM */ + TVM = "TVM", +} + +/** + * The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' \ + * {@link KnownType} can be used interchangeably with Type, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Qualys**: Qualys \ + * **TVM**: TVM + */ +export type Type = string; + +/** The Microsoft Defender for Endpoint autoprovisioning configuration */ +export interface DefenderForServersAwsOfferingMdeAutoProvisioning { + /** Is Microsoft Defender for Endpoint auto provisioning enabled */ + enabled?: boolean; + /** configuration for Microsoft Defender for Endpoint autoprovisioning */ + configuration?: any; +} + +export function defenderForServersAwsOfferingMdeAutoProvisioningSerializer( + item: DefenderForServersAwsOfferingMdeAutoProvisioning, +): any { + return { enabled: item["enabled"], configuration: item["configuration"] }; +} + +export function defenderForServersAwsOfferingMdeAutoProvisioningDeserializer( + item: any, +): DefenderForServersAwsOfferingMdeAutoProvisioning { + return { + enabled: item["enabled"], + configuration: item["configuration"], + }; +} + +/** configuration for the servers offering subPlan */ +export interface DefenderForServersAwsOfferingSubPlan { + /** The available sub plans */ + type?: SubPlan; +} + +export function defenderForServersAwsOfferingSubPlanSerializer( + item: DefenderForServersAwsOfferingSubPlan, +): any { + return { type: item["type"] }; +} + +export function defenderForServersAwsOfferingSubPlanDeserializer( + item: any, +): DefenderForServersAwsOfferingSubPlan { + return { + type: item["type"], + }; +} + +/** The available sub plans */ +export enum KnownSubPlan { + /** P1 */ + P1 = "P1", + /** P2 */ + P2 = "P2", +} + +/** + * The available sub plans \ + * {@link KnownSubPlan} can be used interchangeably with SubPlan, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **P1**: P1 \ + * **P2**: P2 + */ +export type SubPlan = string; + +/** The Microsoft Defender for Server VM scanning configuration */ +export interface DefenderForServersAwsOfferingVmScanners extends VmScannersAws {} + +export function defenderForServersAwsOfferingVmScannersSerializer( + item: DefenderForServersAwsOfferingVmScanners, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForServersAwsOfferingVmScannersDeserializer( + item: any, +): DefenderForServersAwsOfferingVmScanners { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Defender for Databases AWS offering */ +export interface DefenderFoDatabasesAwsOffering extends CloudOffering { + /** The ARC autoprovisioning configuration */ + arcAutoProvisioning?: DefenderFoDatabasesAwsOfferingArcAutoProvisioning; + /** The RDS configuration */ + rds?: DefenderFoDatabasesAwsOfferingRds; + /** The databases data security posture management (DSPM) configuration */ + databasesDspm?: DefenderFoDatabasesAwsOfferingDatabasesDspm; + /** The type of the security offering. */ + offeringType: "DefenderForDatabasesAws"; +} + +export function defenderFoDatabasesAwsOfferingSerializer( + item: DefenderFoDatabasesAwsOffering, +): any { + return { + offeringType: item["offeringType"], + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderFoDatabasesAwsOfferingArcAutoProvisioningSerializer(item["arcAutoProvisioning"]), + rds: !item["rds"] ? item["rds"] : defenderFoDatabasesAwsOfferingRdsSerializer(item["rds"]), + databasesDspm: !item["databasesDspm"] + ? item["databasesDspm"] + : defenderFoDatabasesAwsOfferingDatabasesDspmSerializer(item["databasesDspm"]), + }; +} + +export function defenderFoDatabasesAwsOfferingDeserializer( + item: any, +): DefenderFoDatabasesAwsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderFoDatabasesAwsOfferingArcAutoProvisioningDeserializer(item["arcAutoProvisioning"]), + rds: !item["rds"] ? item["rds"] : defenderFoDatabasesAwsOfferingRdsDeserializer(item["rds"]), + databasesDspm: !item["databasesDspm"] + ? item["databasesDspm"] + : defenderFoDatabasesAwsOfferingDatabasesDspmDeserializer(item["databasesDspm"]), + }; +} + +/** The ARC autoprovisioning configuration */ +export interface DefenderFoDatabasesAwsOfferingArcAutoProvisioning extends ArcAutoProvisioningAws {} + +export function defenderFoDatabasesAwsOfferingArcAutoProvisioningSerializer( + item: DefenderFoDatabasesAwsOfferingArcAutoProvisioning, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderFoDatabasesAwsOfferingArcAutoProvisioningDeserializer( + item: any, +): DefenderFoDatabasesAwsOfferingArcAutoProvisioning { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** The RDS configuration */ +export interface DefenderFoDatabasesAwsOfferingRds { + /** Is RDS protection enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderFoDatabasesAwsOfferingRdsSerializer( + item: DefenderFoDatabasesAwsOfferingRds, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderFoDatabasesAwsOfferingRdsDeserializer( + item: any, +): DefenderFoDatabasesAwsOfferingRds { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The databases data security posture management (DSPM) configuration */ +export interface DefenderFoDatabasesAwsOfferingDatabasesDspm { + /** Is databases data security posture management (DSPM) protection enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderFoDatabasesAwsOfferingDatabasesDspmSerializer( + item: DefenderFoDatabasesAwsOfferingDatabasesDspm, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderFoDatabasesAwsOfferingDatabasesDspmDeserializer( + item: any, +): DefenderFoDatabasesAwsOfferingDatabasesDspm { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The CSPM monitoring for GCP offering */ +export interface CspmMonitorGcpOffering extends CloudOffering { + /** The native cloud connection configuration */ + nativeCloudConnection?: CspmMonitorGcpOfferingNativeCloudConnection; + /** The type of the security offering. */ + offeringType: "CspmMonitorGcp"; +} + +export function cspmMonitorGcpOfferingSerializer(item: CspmMonitorGcpOffering): any { + return { + offeringType: item["offeringType"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : cspmMonitorGcpOfferingNativeCloudConnectionSerializer(item["nativeCloudConnection"]), + }; +} + +export function cspmMonitorGcpOfferingDeserializer(item: any): CspmMonitorGcpOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : cspmMonitorGcpOfferingNativeCloudConnectionDeserializer(item["nativeCloudConnection"]), + }; +} + +/** The native cloud connection configuration */ +export interface CspmMonitorGcpOfferingNativeCloudConnection { + /** The GCP workload identity provider id for the offering */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this offering */ + serviceAccountEmailAddress?: string; +} + +export function cspmMonitorGcpOfferingNativeCloudConnectionSerializer( + item: CspmMonitorGcpOfferingNativeCloudConnection, +): any { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function cspmMonitorGcpOfferingNativeCloudConnectionDeserializer( + item: any, +): CspmMonitorGcpOfferingNativeCloudConnection { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The Defender for Servers GCP offering configurations */ +export interface DefenderForServersGcpOffering extends CloudOffering { + /** The Defender for servers connection configuration */ + defenderForServers?: DefenderForServersGcpOfferingDefenderForServers; + /** The ARC autoprovisioning configuration */ + arcAutoProvisioning?: DefenderForServersGcpOfferingArcAutoProvisioning; + /** The Vulnerability Assessment autoprovisioning configuration */ + vaAutoProvisioning?: DefenderForServersGcpOfferingVaAutoProvisioning; + /** The Microsoft Defender for Endpoint autoprovisioning configuration */ + mdeAutoProvisioning?: DefenderForServersGcpOfferingMdeAutoProvisioning; + /** configuration for the servers offering subPlan */ + subPlan?: DefenderForServersGcpOfferingSubPlan; + /** The Microsoft Defender for Server VM scanning configuration */ + vmScanners?: DefenderForServersGcpOfferingVmScanners; + /** The type of the security offering. */ + offeringType: "DefenderForServersGcp"; +} + +export function defenderForServersGcpOfferingSerializer(item: DefenderForServersGcpOffering): any { + return { + offeringType: item["offeringType"], + defenderForServers: !item["defenderForServers"] + ? item["defenderForServers"] + : defenderForServersGcpOfferingDefenderForServersSerializer(item["defenderForServers"]), + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForServersGcpOfferingArcAutoProvisioningSerializer(item["arcAutoProvisioning"]), + vaAutoProvisioning: !item["vaAutoProvisioning"] + ? item["vaAutoProvisioning"] + : defenderForServersGcpOfferingVaAutoProvisioningSerializer(item["vaAutoProvisioning"]), + mdeAutoProvisioning: !item["mdeAutoProvisioning"] + ? item["mdeAutoProvisioning"] + : defenderForServersGcpOfferingMdeAutoProvisioningSerializer(item["mdeAutoProvisioning"]), + subPlan: !item["subPlan"] + ? item["subPlan"] + : defenderForServersGcpOfferingSubPlanSerializer(item["subPlan"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForServersGcpOfferingVmScannersSerializer(item["vmScanners"]), + }; +} + +export function defenderForServersGcpOfferingDeserializer( + item: any, +): DefenderForServersGcpOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + defenderForServers: !item["defenderForServers"] + ? item["defenderForServers"] + : defenderForServersGcpOfferingDefenderForServersDeserializer(item["defenderForServers"]), + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForServersGcpOfferingArcAutoProvisioningDeserializer(item["arcAutoProvisioning"]), + vaAutoProvisioning: !item["vaAutoProvisioning"] + ? item["vaAutoProvisioning"] + : defenderForServersGcpOfferingVaAutoProvisioningDeserializer(item["vaAutoProvisioning"]), + mdeAutoProvisioning: !item["mdeAutoProvisioning"] + ? item["mdeAutoProvisioning"] + : defenderForServersGcpOfferingMdeAutoProvisioningDeserializer(item["mdeAutoProvisioning"]), + subPlan: !item["subPlan"] + ? item["subPlan"] + : defenderForServersGcpOfferingSubPlanDeserializer(item["subPlan"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForServersGcpOfferingVmScannersDeserializer(item["vmScanners"]), + }; +} + +/** The Defender for servers connection configuration */ +export interface DefenderForServersGcpOfferingDefenderForServers { + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderForServersGcpOfferingDefenderForServersSerializer( + item: DefenderForServersGcpOfferingDefenderForServers, +): any { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderForServersGcpOfferingDefenderForServersDeserializer( + item: any, +): DefenderForServersGcpOfferingDefenderForServers { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The ARC autoprovisioning configuration */ +export interface DefenderForServersGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp {} + +export function defenderForServersGcpOfferingArcAutoProvisioningSerializer( + item: DefenderForServersGcpOfferingArcAutoProvisioning, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForServersGcpOfferingArcAutoProvisioningDeserializer( + item: any, +): DefenderForServersGcpOfferingArcAutoProvisioning { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Vulnerability Assessment autoprovisioning configuration */ +export interface DefenderForServersGcpOfferingVaAutoProvisioning { + /** Is Vulnerability Assessment auto provisioning enabled */ + enabled?: boolean; + /** configuration for Vulnerability Assessment autoprovisioning */ + configuration?: DefenderForServersGcpOfferingVaAutoProvisioningConfiguration; +} + +export function defenderForServersGcpOfferingVaAutoProvisioningSerializer( + item: DefenderForServersGcpOfferingVaAutoProvisioning, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : defenderForServersGcpOfferingVaAutoProvisioningConfigurationSerializer( + item["configuration"], + ), + }; +} + +export function defenderForServersGcpOfferingVaAutoProvisioningDeserializer( + item: any, +): DefenderForServersGcpOfferingVaAutoProvisioning { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : defenderForServersGcpOfferingVaAutoProvisioningConfigurationDeserializer( + item["configuration"], + ), + }; +} + +/** configuration for Vulnerability Assessment autoprovisioning */ +export interface DefenderForServersGcpOfferingVaAutoProvisioningConfiguration { + /** The Vulnerability Assessment solution to be provisioned. Can be either 'TVM' or 'Qualys' */ + type?: Type; +} + +export function defenderForServersGcpOfferingVaAutoProvisioningConfigurationSerializer( + item: DefenderForServersGcpOfferingVaAutoProvisioningConfiguration, +): any { + return { type: item["type"] }; +} + +export function defenderForServersGcpOfferingVaAutoProvisioningConfigurationDeserializer( + item: any, +): DefenderForServersGcpOfferingVaAutoProvisioningConfiguration { + return { + type: item["type"], + }; +} + +/** The Microsoft Defender for Endpoint autoprovisioning configuration */ +export interface DefenderForServersGcpOfferingMdeAutoProvisioning { + /** Is Microsoft Defender for Endpoint auto provisioning enabled */ + enabled?: boolean; + /** configuration for Microsoft Defender for Endpoint autoprovisioning */ + configuration?: any; +} + +export function defenderForServersGcpOfferingMdeAutoProvisioningSerializer( + item: DefenderForServersGcpOfferingMdeAutoProvisioning, +): any { + return { enabled: item["enabled"], configuration: item["configuration"] }; +} + +export function defenderForServersGcpOfferingMdeAutoProvisioningDeserializer( + item: any, +): DefenderForServersGcpOfferingMdeAutoProvisioning { + return { + enabled: item["enabled"], + configuration: item["configuration"], + }; +} + +/** configuration for the servers offering subPlan */ +export interface DefenderForServersGcpOfferingSubPlan { + /** The available sub plans */ + type?: SubPlan; +} + +export function defenderForServersGcpOfferingSubPlanSerializer( + item: DefenderForServersGcpOfferingSubPlan, +): any { + return { type: item["type"] }; +} + +export function defenderForServersGcpOfferingSubPlanDeserializer( + item: any, +): DefenderForServersGcpOfferingSubPlan { + return { + type: item["type"], + }; +} + +/** The Microsoft Defender for Server VM scanning configuration */ +export interface DefenderForServersGcpOfferingVmScanners extends VmScannersGcp {} + +export function defenderForServersGcpOfferingVmScannersSerializer( + item: DefenderForServersGcpOfferingVmScanners, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForServersGcpOfferingVmScannersDeserializer( + item: any, +): DefenderForServersGcpOfferingVmScanners { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Defender for Databases GCP offering configurations */ +export interface DefenderForDatabasesGcpOffering extends CloudOffering { + /** The ARC autoprovisioning configuration */ + arcAutoProvisioning?: DefenderForDatabasesGcpOfferingArcAutoProvisioning; + /** The native cloud connection configuration */ + defenderForDatabasesArcAutoProvisioning?: DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning; + /** The type of the security offering. */ + offeringType: "DefenderForDatabasesGcp"; +} + +export function defenderForDatabasesGcpOfferingSerializer( + item: DefenderForDatabasesGcpOffering, +): any { + return { + offeringType: item["offeringType"], + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForDatabasesGcpOfferingArcAutoProvisioningSerializer(item["arcAutoProvisioning"]), + defenderForDatabasesArcAutoProvisioning: !item["defenderForDatabasesArcAutoProvisioning"] + ? item["defenderForDatabasesArcAutoProvisioning"] + : defenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioningSerializer( + item["defenderForDatabasesArcAutoProvisioning"], + ), + }; +} + +export function defenderForDatabasesGcpOfferingDeserializer( + item: any, +): DefenderForDatabasesGcpOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + arcAutoProvisioning: !item["arcAutoProvisioning"] + ? item["arcAutoProvisioning"] + : defenderForDatabasesGcpOfferingArcAutoProvisioningDeserializer(item["arcAutoProvisioning"]), + defenderForDatabasesArcAutoProvisioning: !item["defenderForDatabasesArcAutoProvisioning"] + ? item["defenderForDatabasesArcAutoProvisioning"] + : defenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioningDeserializer( + item["defenderForDatabasesArcAutoProvisioning"], + ), + }; +} + +/** The ARC autoprovisioning configuration */ +export interface DefenderForDatabasesGcpOfferingArcAutoProvisioning extends ArcAutoProvisioningGcp {} + +export function defenderForDatabasesGcpOfferingArcAutoProvisioningSerializer( + item: DefenderForDatabasesGcpOfferingArcAutoProvisioning, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForDatabasesGcpOfferingArcAutoProvisioningDeserializer( + item: any, +): DefenderForDatabasesGcpOfferingArcAutoProvisioning { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** The native cloud connection configuration */ +export interface DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning { + /** The service account email address in GCP for this offering */ + serviceAccountEmailAddress?: string; + /** The GCP workload identity provider id for this offering */ + workloadIdentityProviderId?: string; +} + +export function defenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioningSerializer( + item: DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning, +): any { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +export function defenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioningDeserializer( + item: any, +): DefenderForDatabasesGcpOfferingDefenderForDatabasesArcAutoProvisioning { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +/** The containers GCP offering */ +export interface DefenderForContainersGcpOffering extends CloudOffering { + /** The native cloud connection configuration */ + nativeCloudConnection?: DefenderForContainersGcpOfferingNativeCloudConnection; + /** The native cloud connection configuration */ + dataPipelineNativeCloudConnection?: DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection; + /** Is audit logs data collection enabled */ + enableAuditLogsAutoProvisioning?: boolean; + /** Is Microsoft Defender for Cloud Kubernetes agent auto provisioning enabled */ + enableDefenderAgentAutoProvisioning?: boolean; + /** Is Policy Kubernetes agent auto provisioning enabled */ + enablePolicyAgentAutoProvisioning?: boolean; + /** The Microsoft Defender Container image assessment configuration */ + mdcContainersImageAssessment?: DefenderForContainersGcpOfferingMdcContainersImageAssessment; + /** The Microsoft Defender Container agentless discovery configuration */ + mdcContainersAgentlessDiscoveryK8S?: DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S; + /** The Microsoft Defender for Container K8s VM host scanning configuration */ + vmScanners?: DefenderForContainersGcpOfferingVmScanners; + /** The type of the security offering. */ + offeringType: "DefenderForContainersGcp"; +} + +export function defenderForContainersGcpOfferingSerializer( + item: DefenderForContainersGcpOffering, +): any { + return { + offeringType: item["offeringType"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : defenderForContainersGcpOfferingNativeCloudConnectionSerializer( + item["nativeCloudConnection"], + ), + dataPipelineNativeCloudConnection: !item["dataPipelineNativeCloudConnection"] + ? item["dataPipelineNativeCloudConnection"] + : defenderForContainersGcpOfferingDataPipelineNativeCloudConnectionSerializer( + item["dataPipelineNativeCloudConnection"], + ), + enableAuditLogsAutoProvisioning: item["enableAuditLogsAutoProvisioning"], + enableDefenderAgentAutoProvisioning: item["enableDefenderAgentAutoProvisioning"], + enablePolicyAgentAutoProvisioning: item["enablePolicyAgentAutoProvisioning"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderForContainersGcpOfferingMdcContainersImageAssessmentSerializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8s: !item["mdcContainersAgentlessDiscoveryK8S"] + ? item["mdcContainersAgentlessDiscoveryK8S"] + : defenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item["mdcContainersAgentlessDiscoveryK8S"], + ), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForContainersGcpOfferingVmScannersSerializer(item["vmScanners"]), + }; +} + +export function defenderForContainersGcpOfferingDeserializer( + item: any, +): DefenderForContainersGcpOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + nativeCloudConnection: !item["nativeCloudConnection"] + ? item["nativeCloudConnection"] + : defenderForContainersGcpOfferingNativeCloudConnectionDeserializer( + item["nativeCloudConnection"], + ), + dataPipelineNativeCloudConnection: !item["dataPipelineNativeCloudConnection"] + ? item["dataPipelineNativeCloudConnection"] + : defenderForContainersGcpOfferingDataPipelineNativeCloudConnectionDeserializer( + item["dataPipelineNativeCloudConnection"], + ), + enableAuditLogsAutoProvisioning: item["enableAuditLogsAutoProvisioning"], + enableDefenderAgentAutoProvisioning: item["enableDefenderAgentAutoProvisioning"], + enablePolicyAgentAutoProvisioning: item["enablePolicyAgentAutoProvisioning"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderForContainersGcpOfferingMdcContainersImageAssessmentDeserializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8S: !item["mdcContainersAgentlessDiscoveryK8s"] + ? item["mdcContainersAgentlessDiscoveryK8s"] + : defenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item["mdcContainersAgentlessDiscoveryK8s"], + ), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderForContainersGcpOfferingVmScannersDeserializer(item["vmScanners"]), + }; +} + +/** The native cloud connection configuration */ +export interface DefenderForContainersGcpOfferingNativeCloudConnection { + /** The service account email address in GCP for this offering */ + serviceAccountEmailAddress?: string; + /** The GCP workload identity provider id for this offering */ + workloadIdentityProviderId?: string; +} + +export function defenderForContainersGcpOfferingNativeCloudConnectionSerializer( + item: DefenderForContainersGcpOfferingNativeCloudConnection, +): any { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +export function defenderForContainersGcpOfferingNativeCloudConnectionDeserializer( + item: any, +): DefenderForContainersGcpOfferingNativeCloudConnection { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +/** The native cloud connection configuration */ +export interface DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection { + /** The data collection service account email address in GCP for this offering */ + serviceAccountEmailAddress?: string; + /** The data collection GCP workload identity provider id for this offering */ + workloadIdentityProviderId?: string; +} + +export function defenderForContainersGcpOfferingDataPipelineNativeCloudConnectionSerializer( + item: DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection, +): any { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +export function defenderForContainersGcpOfferingDataPipelineNativeCloudConnectionDeserializer( + item: any, +): DefenderForContainersGcpOfferingDataPipelineNativeCloudConnection { + return { + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +/** The Microsoft Defender Container image assessment configuration */ +export interface DefenderForContainersGcpOfferingMdcContainersImageAssessment { + /** Is Microsoft Defender container image assessment enabled */ + enabled?: boolean; + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderForContainersGcpOfferingMdcContainersImageAssessmentSerializer( + item: DefenderForContainersGcpOfferingMdcContainersImageAssessment, +): any { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderForContainersGcpOfferingMdcContainersImageAssessmentDeserializer( + item: any, +): DefenderForContainersGcpOfferingMdcContainersImageAssessment { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The Microsoft Defender Container agentless discovery configuration */ +export interface DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S { + /** Is Microsoft Defender container agentless discovery enabled */ + enabled?: boolean; + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item: DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S, +): any { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item: any, +): DefenderForContainersGcpOfferingMdcContainersAgentlessDiscoveryK8S { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The Microsoft Defender for Container K8s VM host scanning configuration */ +export interface DefenderForContainersGcpOfferingVmScanners extends VmScannersGcp {} + +export function defenderForContainersGcpOfferingVmScannersSerializer( + item: DefenderForContainersGcpOfferingVmScanners, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderForContainersGcpOfferingVmScannersDeserializer( + item: any, +): DefenderForContainersGcpOfferingVmScanners { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The CSPM monitoring for github offering */ +export interface CspmMonitorGithubOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "CspmMonitorGithub"; +} + +export function cspmMonitorGithubOfferingSerializer(item: CspmMonitorGithubOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function cspmMonitorGithubOfferingDeserializer(item: any): CspmMonitorGithubOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The CSPM monitoring for AzureDevOps offering */ +export interface CspmMonitorAzureDevOpsOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "CspmMonitorAzureDevOps"; +} + +export function cspmMonitorAzureDevOpsOfferingSerializer( + item: CspmMonitorAzureDevOpsOffering, +): any { + return { offeringType: item["offeringType"] }; +} + +export function cspmMonitorAzureDevOpsOfferingDeserializer( + item: any, +): CspmMonitorAzureDevOpsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The CSPM P1 for AWS offering */ +export interface DefenderCspmAwsOffering extends CloudOffering { + /** The Microsoft Defender for CSPM offering VM scanning configuration */ + vmScanners?: DefenderCspmAwsOfferingVmScanners; + /** The Microsoft Defender Data Sensitivity discovery configuration */ + dataSensitivityDiscovery?: DefenderCspmAwsOfferingDataSensitivityDiscovery; + /** The databases DSPM configuration */ + databasesDspm?: DefenderCspmAwsOfferingDatabasesDspm; + /** Defenders CSPM Permissions Management offering configurations */ + ciem?: DefenderCspmAwsOfferingCiem; + /** The Microsoft Defender container image assessment configuration */ + mdcContainersImageAssessment?: DefenderCspmAwsOfferingMdcContainersImageAssessment; + /** The Microsoft Defender container agentless discovery K8s configuration */ + mdcContainersAgentlessDiscoveryK8S?: DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S; + /** The type of the security offering. */ + offeringType: "DefenderCspmAws"; +} + +export function defenderCspmAwsOfferingSerializer(item: DefenderCspmAwsOffering): any { + return { + offeringType: item["offeringType"], + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderCspmAwsOfferingVmScannersSerializer(item["vmScanners"]), + dataSensitivityDiscovery: !item["dataSensitivityDiscovery"] + ? item["dataSensitivityDiscovery"] + : defenderCspmAwsOfferingDataSensitivityDiscoverySerializer(item["dataSensitivityDiscovery"]), + databasesDspm: !item["databasesDspm"] + ? item["databasesDspm"] + : defenderCspmAwsOfferingDatabasesDspmSerializer(item["databasesDspm"]), + ciem: !item["ciem"] ? item["ciem"] : defenderCspmAwsOfferingCiemSerializer(item["ciem"]), + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmAwsOfferingMdcContainersImageAssessmentSerializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8s: !item["mdcContainersAgentlessDiscoveryK8S"] + ? item["mdcContainersAgentlessDiscoveryK8S"] + : defenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item["mdcContainersAgentlessDiscoveryK8S"], + ), + }; +} + +export function defenderCspmAwsOfferingDeserializer(item: any): DefenderCspmAwsOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderCspmAwsOfferingVmScannersDeserializer(item["vmScanners"]), + dataSensitivityDiscovery: !item["dataSensitivityDiscovery"] + ? item["dataSensitivityDiscovery"] + : defenderCspmAwsOfferingDataSensitivityDiscoveryDeserializer( + item["dataSensitivityDiscovery"], + ), + databasesDspm: !item["databasesDspm"] + ? item["databasesDspm"] + : defenderCspmAwsOfferingDatabasesDspmDeserializer(item["databasesDspm"]), + ciem: !item["ciem"] ? item["ciem"] : defenderCspmAwsOfferingCiemDeserializer(item["ciem"]), + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmAwsOfferingMdcContainersImageAssessmentDeserializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8S: !item["mdcContainersAgentlessDiscoveryK8s"] + ? item["mdcContainersAgentlessDiscoveryK8s"] + : defenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item["mdcContainersAgentlessDiscoveryK8s"], + ), + }; +} + +/** The Microsoft Defender for CSPM offering VM scanning configuration */ +export interface DefenderCspmAwsOfferingVmScanners extends VmScannersAws {} + +export function defenderCspmAwsOfferingVmScannersSerializer( + item: DefenderCspmAwsOfferingVmScanners, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderCspmAwsOfferingVmScannersDeserializer( + item: any, +): DefenderCspmAwsOfferingVmScanners { + return { + cloudRoleArn: item["cloudRoleArn"], + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Microsoft Defender Data Sensitivity discovery configuration */ +export interface DefenderCspmAwsOfferingDataSensitivityDiscovery { + /** Is Microsoft Defender Data Sensitivity discovery enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderCspmAwsOfferingDataSensitivityDiscoverySerializer( + item: DefenderCspmAwsOfferingDataSensitivityDiscovery, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderCspmAwsOfferingDataSensitivityDiscoveryDeserializer( + item: any, +): DefenderCspmAwsOfferingDataSensitivityDiscovery { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The databases DSPM configuration */ +export interface DefenderCspmAwsOfferingDatabasesDspm { + /** Is databases DSPM protection enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderCspmAwsOfferingDatabasesDspmSerializer( + item: DefenderCspmAwsOfferingDatabasesDspm, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderCspmAwsOfferingDatabasesDspmDeserializer( + item: any, +): DefenderCspmAwsOfferingDatabasesDspm { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** Defenders CSPM Permissions Management offering configurations */ +export interface DefenderCspmAwsOfferingCiem { + /** Defender CSPM Permissions Management discovery configuration */ + ciemDiscovery?: DefenderCspmAwsOfferingCiemDiscovery; + /** AWS Defender CSPM Permissions Management OIDC (open id connect) connection configurations */ + ciemOidc?: DefenderCspmAwsOfferingCiemOidc; +} + +export function defenderCspmAwsOfferingCiemSerializer(item: DefenderCspmAwsOfferingCiem): any { + return { + ciemDiscovery: !item["ciemDiscovery"] + ? item["ciemDiscovery"] + : defenderCspmAwsOfferingCiemDiscoverySerializer(item["ciemDiscovery"]), + ciemOidc: !item["ciemOidc"] + ? item["ciemOidc"] + : defenderCspmAwsOfferingCiemOidcSerializer(item["ciemOidc"]), + }; +} + +export function defenderCspmAwsOfferingCiemDeserializer(item: any): DefenderCspmAwsOfferingCiem { + return { + ciemDiscovery: !item["ciemDiscovery"] + ? item["ciemDiscovery"] + : defenderCspmAwsOfferingCiemDiscoveryDeserializer(item["ciemDiscovery"]), + ciemOidc: !item["ciemOidc"] + ? item["ciemOidc"] + : defenderCspmAwsOfferingCiemOidcDeserializer(item["ciemOidc"]), + }; +} + +/** Defender CSPM Permissions Management discovery configuration */ +export interface DefenderCspmAwsOfferingCiemDiscovery { + /** The cloud role ARN in AWS for Permissions Management discovery */ + cloudRoleArn?: string; +} + +export function defenderCspmAwsOfferingCiemDiscoverySerializer( + item: DefenderCspmAwsOfferingCiemDiscovery, +): any { + return { cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderCspmAwsOfferingCiemDiscoveryDeserializer( + item: any, +): DefenderCspmAwsOfferingCiemDiscovery { + return { + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** AWS Defender CSPM Permissions Management OIDC (open id connect) connection configurations */ +export interface DefenderCspmAwsOfferingCiemOidc { + /** The cloud role ARN in AWS for Permissions Management used for oidc connection */ + cloudRoleArn?: string; + /** the azure active directory app name used of authenticating against AWS */ + azureActiveDirectoryAppName?: string; +} + +export function defenderCspmAwsOfferingCiemOidcSerializer( + item: DefenderCspmAwsOfferingCiemOidc, +): any { + return { + cloudRoleArn: item["cloudRoleArn"], + azureActiveDirectoryAppName: item["azureActiveDirectoryAppName"], + }; +} + +export function defenderCspmAwsOfferingCiemOidcDeserializer( + item: any, +): DefenderCspmAwsOfferingCiemOidc { + return { + cloudRoleArn: item["cloudRoleArn"], + azureActiveDirectoryAppName: item["azureActiveDirectoryAppName"], + }; +} + +/** The Microsoft Defender container image assessment configuration */ +export interface DefenderCspmAwsOfferingMdcContainersImageAssessment { + /** Is Microsoft Defender container image assessment enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderCspmAwsOfferingMdcContainersImageAssessmentSerializer( + item: DefenderCspmAwsOfferingMdcContainersImageAssessment, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderCspmAwsOfferingMdcContainersImageAssessmentDeserializer( + item: any, +): DefenderCspmAwsOfferingMdcContainersImageAssessment { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The Microsoft Defender container agentless discovery K8s configuration */ +export interface DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S { + /** Is Microsoft Defender container agentless discovery K8s enabled */ + enabled?: boolean; + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function defenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item: DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S, +): any { + return { enabled: item["enabled"], cloudRoleArn: item["cloudRoleArn"] }; +} + +export function defenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item: any, +): DefenderCspmAwsOfferingMdcContainersAgentlessDiscoveryK8S { + return { + enabled: item["enabled"], + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The CSPM P1 for GCP offering */ +export interface DefenderCspmGcpOffering extends CloudOffering { + /** GCP Defenders CSPM Permissions Management OIDC (Open ID connect) connection configurations */ + ciemDiscovery?: DefenderCspmGcpOfferingCiemDiscovery; + /** The Microsoft Defender for CSPM VM scanning configuration */ + vmScanners?: DefenderCspmGcpOfferingVmScanners; + /** The Microsoft Defender Data Sensitivity discovery configuration */ + dataSensitivityDiscovery?: DefenderCspmGcpOfferingDataSensitivityDiscovery; + /** The Microsoft Defender Container image assessment configuration */ + mdcContainersImageAssessment?: DefenderCspmGcpOfferingMdcContainersImageAssessment; + /** The Microsoft Defender Container agentless discovery configuration */ + mdcContainersAgentlessDiscoveryK8S?: DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S; + /** The type of the security offering. */ + offeringType: "DefenderCspmGcp"; +} + +export function defenderCspmGcpOfferingSerializer(item: DefenderCspmGcpOffering): any { + return { + offeringType: item["offeringType"], + ciemDiscovery: !item["ciemDiscovery"] + ? item["ciemDiscovery"] + : defenderCspmGcpOfferingCiemDiscoverySerializer(item["ciemDiscovery"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderCspmGcpOfferingVmScannersSerializer(item["vmScanners"]), + dataSensitivityDiscovery: !item["dataSensitivityDiscovery"] + ? item["dataSensitivityDiscovery"] + : defenderCspmGcpOfferingDataSensitivityDiscoverySerializer(item["dataSensitivityDiscovery"]), + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmGcpOfferingMdcContainersImageAssessmentSerializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8s: !item["mdcContainersAgentlessDiscoveryK8S"] + ? item["mdcContainersAgentlessDiscoveryK8S"] + : defenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item["mdcContainersAgentlessDiscoveryK8S"], + ), + }; +} + +export function defenderCspmGcpOfferingDeserializer(item: any): DefenderCspmGcpOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + ciemDiscovery: !item["ciemDiscovery"] + ? item["ciemDiscovery"] + : defenderCspmGcpOfferingCiemDiscoveryDeserializer(item["ciemDiscovery"]), + vmScanners: !item["vmScanners"] + ? item["vmScanners"] + : defenderCspmGcpOfferingVmScannersDeserializer(item["vmScanners"]), + dataSensitivityDiscovery: !item["dataSensitivityDiscovery"] + ? item["dataSensitivityDiscovery"] + : defenderCspmGcpOfferingDataSensitivityDiscoveryDeserializer( + item["dataSensitivityDiscovery"], + ), + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmGcpOfferingMdcContainersImageAssessmentDeserializer( + item["mdcContainersImageAssessment"], + ), + mdcContainersAgentlessDiscoveryK8S: !item["mdcContainersAgentlessDiscoveryK8s"] + ? item["mdcContainersAgentlessDiscoveryK8s"] + : defenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item["mdcContainersAgentlessDiscoveryK8s"], + ), + }; +} + +/** GCP Defenders CSPM Permissions Management OIDC (Open ID connect) connection configurations */ +export interface DefenderCspmGcpOfferingCiemDiscovery { + /** The GCP workload identity provider id for Permissions Management offering */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for Permissions Management offering */ + serviceAccountEmailAddress?: string; + /** the azure active directory app name used of authenticating against GCP workload identity federation */ + azureActiveDirectoryAppName?: string; +} + +export function defenderCspmGcpOfferingCiemDiscoverySerializer( + item: DefenderCspmGcpOfferingCiemDiscovery, +): any { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + azureActiveDirectoryAppName: item["azureActiveDirectoryAppName"], + }; +} + +export function defenderCspmGcpOfferingCiemDiscoveryDeserializer( + item: any, +): DefenderCspmGcpOfferingCiemDiscovery { + return { + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + azureActiveDirectoryAppName: item["azureActiveDirectoryAppName"], + }; +} + +/** The Microsoft Defender for CSPM VM scanning configuration */ +export interface DefenderCspmGcpOfferingVmScanners extends VmScannersGcp {} + +export function defenderCspmGcpOfferingVmScannersSerializer( + item: DefenderCspmGcpOfferingVmScanners, +): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function defenderCspmGcpOfferingVmScannersDeserializer( + item: any, +): DefenderCspmGcpOfferingVmScanners { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** The Microsoft Defender Data Sensitivity discovery configuration */ +export interface DefenderCspmGcpOfferingDataSensitivityDiscovery { + /** Is Microsoft Defender Data Sensitivity discovery enabled */ + enabled?: boolean; + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderCspmGcpOfferingDataSensitivityDiscoverySerializer( + item: DefenderCspmGcpOfferingDataSensitivityDiscovery, +): any { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderCspmGcpOfferingDataSensitivityDiscoveryDeserializer( + item: any, +): DefenderCspmGcpOfferingDataSensitivityDiscovery { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The Microsoft Defender Container image assessment configuration */ +export interface DefenderCspmGcpOfferingMdcContainersImageAssessment { + /** Is Microsoft Defender container image assessment enabled */ + enabled?: boolean; + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderCspmGcpOfferingMdcContainersImageAssessmentSerializer( + item: DefenderCspmGcpOfferingMdcContainersImageAssessment, +): any { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderCspmGcpOfferingMdcContainersImageAssessmentDeserializer( + item: any, +): DefenderCspmGcpOfferingMdcContainersImageAssessment { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The Microsoft Defender Container agentless discovery configuration */ +export interface DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S { + /** Is Microsoft Defender container agentless discovery enabled */ + enabled?: boolean; + /** The workload identity provider id in GCP for this feature */ + workloadIdentityProviderId?: string; + /** The service account email address in GCP for this feature */ + serviceAccountEmailAddress?: string; +} + +export function defenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8SSerializer( + item: DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S, +): any { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +export function defenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8SDeserializer( + item: any, +): DefenderCspmGcpOfferingMdcContainersAgentlessDiscoveryK8S { + return { + enabled: item["enabled"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + }; +} + +/** The CSPM (Cloud security posture management) monitoring for gitlab offering */ +export interface CspmMonitorGitLabOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "CspmMonitorGitLab"; +} + +export function cspmMonitorGitLabOfferingSerializer(item: CspmMonitorGitLabOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function cspmMonitorGitLabOfferingDeserializer(item: any): CspmMonitorGitLabOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The CSPM (Cloud security posture management) monitoring for Docker Hub offering */ +export interface CspmMonitorDockerHubOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "CspmMonitorDockerHub"; +} + +export function cspmMonitorDockerHubOfferingSerializer(item: CspmMonitorDockerHubOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function cspmMonitorDockerHubOfferingDeserializer(item: any): CspmMonitorDockerHubOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The Defender for containers Docker Hub offering configurations */ +export interface DefenderForContainersDockerHubOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "DefenderForContainersDockerHub"; +} + +export function defenderForContainersDockerHubOfferingSerializer( + item: DefenderForContainersDockerHubOffering, +): any { + return { offeringType: item["offeringType"] }; +} + +export function defenderForContainersDockerHubOfferingDeserializer( + item: any, +): DefenderForContainersDockerHubOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The Defender for CSPM Docker Hub offering configurations */ +export interface DefenderCspmDockerHubOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "DefenderCspmDockerHub"; +} + +export function defenderCspmDockerHubOfferingSerializer(item: DefenderCspmDockerHubOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function defenderCspmDockerHubOfferingDeserializer( + item: any, +): DefenderCspmDockerHubOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The CSPM (Cloud security posture management) monitoring for JFrog Artifactory offering */ +export interface CspmMonitorJFrogOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "CspmMonitorJFrog"; +} + +export function cspmMonitorJFrogOfferingSerializer(item: CspmMonitorJFrogOffering): any { + return { offeringType: item["offeringType"] }; +} + +export function cspmMonitorJFrogOfferingDeserializer(item: any): CspmMonitorJFrogOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The Defender for Containers for JFrog Artifactory offering */ +export interface DefenderForContainersJFrogOffering extends CloudOffering { + /** The type of the security offering. */ + offeringType: "DefenderForContainersJFrog"; +} + +export function defenderForContainersJFrogOfferingSerializer( + item: DefenderForContainersJFrogOffering, +): any { + return { offeringType: item["offeringType"] }; +} + +export function defenderForContainersJFrogOfferingDeserializer( + item: any, +): DefenderForContainersJFrogOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + }; +} + +/** The CSPM P1 for JFrog Artifactory offering */ +export interface DefenderCspmJFrogOffering extends CloudOffering { + /** The Microsoft Defender Container image assessment configuration */ + mdcContainersImageAssessment?: DefenderCspmJFrogOfferingMdcContainersImageAssessment; + /** The type of the security offering. */ + offeringType: "DefenderCspmJFrog"; +} + +export function defenderCspmJFrogOfferingSerializer(item: DefenderCspmJFrogOffering): any { + return { + offeringType: item["offeringType"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmJFrogOfferingMdcContainersImageAssessmentSerializer( + item["mdcContainersImageAssessment"], + ), + }; +} + +export function defenderCspmJFrogOfferingDeserializer(item: any): DefenderCspmJFrogOffering { + return { + offeringType: item["offeringType"], + description: item["description"], + mdcContainersImageAssessment: !item["mdcContainersImageAssessment"] + ? item["mdcContainersImageAssessment"] + : defenderCspmJFrogOfferingMdcContainersImageAssessmentDeserializer( + item["mdcContainersImageAssessment"], + ), + }; +} + +/** The Microsoft Defender Container image assessment configuration */ +export interface DefenderCspmJFrogOfferingMdcContainersImageAssessment { + /** Is Microsoft Defender container image assessment enabled */ + enabled?: boolean; +} + +export function defenderCspmJFrogOfferingMdcContainersImageAssessmentSerializer( + item: DefenderCspmJFrogOfferingMdcContainersImageAssessment, +): any { + return { enabled: item["enabled"] }; +} + +export function defenderCspmJFrogOfferingMdcContainersImageAssessmentDeserializer( + item: any, +): DefenderCspmJFrogOfferingMdcContainersImageAssessment { + return { + enabled: item["enabled"], + }; +} + +/** The security connector environment data. */ +export interface EnvironmentData { + /** The type of the environment data. */ + /** The discriminator possible values: AwsAccount, GcpProject, GithubScope, AzureDevOpsScope, GitlabScope, DockerHubOrganization, JFrogArtifactory */ + environmentType: EnvironmentType; +} + +export function environmentDataSerializer(item: EnvironmentData): any { + return { environmentType: item["environmentType"] }; +} + +export function environmentDataDeserializer(item: any): EnvironmentData { + return { + environmentType: item["environmentType"], + }; +} + +/** Alias for EnvironmentDataUnion */ +export type EnvironmentDataUnion = + | AwsEnvironmentData + | GcpProjectEnvironmentData + | GithubScopeEnvironmentData + | AzureDevOpsScopeEnvironmentData + | GitlabScopeEnvironmentData + | DockerHubEnvironmentData + | JFrogEnvironmentData + | EnvironmentData; + +export function environmentDataUnionSerializer(item: EnvironmentDataUnion): any { + switch (item.environmentType) { + case "AwsAccount": + return awsEnvironmentDataSerializer(item as AwsEnvironmentData); + + case "GcpProject": + return gcpProjectEnvironmentDataSerializer(item as GcpProjectEnvironmentData); + + case "GithubScope": + return githubScopeEnvironmentDataSerializer(item as GithubScopeEnvironmentData); + + case "AzureDevOpsScope": + return azureDevOpsScopeEnvironmentDataSerializer(item as AzureDevOpsScopeEnvironmentData); + + case "GitlabScope": + return gitlabScopeEnvironmentDataSerializer(item as GitlabScopeEnvironmentData); + + case "DockerHubOrganization": + return dockerHubEnvironmentDataSerializer(item as DockerHubEnvironmentData); + + case "JFrogArtifactory": + return jFrogEnvironmentDataSerializer(item as JFrogEnvironmentData); + + default: + return environmentDataSerializer(item); + } +} + +export function environmentDataUnionDeserializer(item: any): EnvironmentDataUnion { + switch (item["environmentType"]) { + case "AwsAccount": + return awsEnvironmentDataDeserializer(item as AwsEnvironmentData); + + case "GcpProject": + return gcpProjectEnvironmentDataDeserializer(item as GcpProjectEnvironmentData); + + case "GithubScope": + return githubScopeEnvironmentDataDeserializer(item as GithubScopeEnvironmentData); + + case "AzureDevOpsScope": + return azureDevOpsScopeEnvironmentDataDeserializer(item as AzureDevOpsScopeEnvironmentData); + + case "GitlabScope": + return gitlabScopeEnvironmentDataDeserializer(item as GitlabScopeEnvironmentData); + + case "DockerHubOrganization": + return dockerHubEnvironmentDataDeserializer(item as DockerHubEnvironmentData); + + case "JFrogArtifactory": + return jFrogEnvironmentDataDeserializer(item as JFrogEnvironmentData); + + default: + return environmentDataDeserializer(item); + } +} + +/** The type of the environment data. */ +export enum KnownEnvironmentType { + /** AwsAccount */ + AwsAccount = "AwsAccount", + /** GcpProject */ + GcpProject = "GcpProject", + /** GithubScope */ + GithubScope = "GithubScope", + /** AzureDevOpsScope */ + AzureDevOpsScope = "AzureDevOpsScope", + /** GitlabScope */ + GitlabScope = "GitlabScope", + /** DockerHubOrganization */ + DockerHubOrganization = "DockerHubOrganization", + /** JFrogArtifactory */ + JFrogArtifactory = "JFrogArtifactory", +} + +/** + * The type of the environment data. \ + * {@link KnownEnvironmentType} can be used interchangeably with EnvironmentType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AwsAccount**: AwsAccount \ + * **GcpProject**: GcpProject \ + * **GithubScope**: GithubScope \ + * **AzureDevOpsScope**: AzureDevOpsScope \ + * **GitlabScope**: GitlabScope \ + * **DockerHubOrganization**: DockerHubOrganization \ + * **JFrogArtifactory**: JFrogArtifactory + */ +export type EnvironmentType = string; + +/** The AWS connector environment data */ +export interface AwsEnvironmentData extends EnvironmentData { + /** The AWS account's organizational data */ + organizationalData?: AwsOrganizationalDataUnion; + /** list of regions to scan */ + regions?: string[]; + /** The AWS account name */ + readonly accountName?: string; + /** Scan interval in hours (value should be between 1-hour to 24-hours) */ + scanInterval?: number; + /** The type of the environment data. */ + environmentType: "AwsAccount"; +} + +export function awsEnvironmentDataSerializer(item: AwsEnvironmentData): any { + return { + environmentType: item["environmentType"], + organizationalData: !item["organizationalData"] + ? item["organizationalData"] + : awsOrganizationalDataUnionSerializer(item["organizationalData"]), + regions: !item["regions"] + ? item["regions"] + : item["regions"].map((p: any) => { + return p; + }), + scanInterval: item["scanInterval"], + }; +} + +export function awsEnvironmentDataDeserializer(item: any): AwsEnvironmentData { + return { + environmentType: item["environmentType"], + organizationalData: !item["organizationalData"] + ? item["organizationalData"] + : awsOrganizationalDataUnionDeserializer(item["organizationalData"]), + regions: !item["regions"] + ? item["regions"] + : item["regions"].map((p: any) => { + return p; + }), + accountName: item["accountName"], + scanInterval: item["scanInterval"], + }; +} + +/** The AWS organization data */ +export interface AwsOrganizationalData { + /** The multi cloud account's membership type in the organization */ + /** The discriminator possible values: Organization, Member */ + organizationMembershipType: OrganizationMembershipType; +} + +export function awsOrganizationalDataSerializer(item: AwsOrganizationalData): any { + return { organizationMembershipType: item["organizationMembershipType"] }; +} + +export function awsOrganizationalDataDeserializer(item: any): AwsOrganizationalData { + return { + organizationMembershipType: item["organizationMembershipType"], + }; +} + +/** Alias for AwsOrganizationalDataUnion */ +export type AwsOrganizationalDataUnion = + | AwsOrganizationalDataMaster + | AwsOrganizationalDataMember + | AwsOrganizationalData; + +export function awsOrganizationalDataUnionSerializer(item: AwsOrganizationalDataUnion): any { + switch (item.organizationMembershipType) { + case "Organization": + return awsOrganizationalDataMasterSerializer(item as AwsOrganizationalDataMaster); + + case "Member": + return awsOrganizationalDataMemberSerializer(item as AwsOrganizationalDataMember); + + default: + return awsOrganizationalDataSerializer(item); + } +} + +export function awsOrganizationalDataUnionDeserializer(item: any): AwsOrganizationalDataUnion { + switch (item["organizationMembershipType"]) { + case "Organization": + return awsOrganizationalDataMasterDeserializer(item as AwsOrganizationalDataMaster); + + case "Member": + return awsOrganizationalDataMemberDeserializer(item as AwsOrganizationalDataMember); + + default: + return awsOrganizationalDataDeserializer(item); + } +} + +/** The multi cloud account's membership type in the organization */ +export enum KnownOrganizationMembershipType { + /** Member */ + Member = "Member", + /** Organization */ + Organization = "Organization", +} + +/** + * The multi cloud account's membership type in the organization \ + * {@link KnownOrganizationMembershipType} can be used interchangeably with OrganizationMembershipType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Member**: Member \ + * **Organization**: Organization + */ +export type OrganizationMembershipType = string; + +/** The AWS organization data for the master account */ +export interface AwsOrganizationalDataMaster extends AwsOrganizationalData { + /** If the multi cloud account is of membership type organization, this will be the name of the onboarding stackset */ + stacksetName?: string; + /** If the multi cloud account is of membership type organization, list of accounts excluded from offering */ + excludedAccountIds?: string[]; + /** The multi cloud account's membership type in the organization */ + organizationMembershipType: "Organization"; +} + +export function awsOrganizationalDataMasterSerializer(item: AwsOrganizationalDataMaster): any { + return { + organizationMembershipType: item["organizationMembershipType"], + stacksetName: item["stacksetName"], + excludedAccountIds: !item["excludedAccountIds"] + ? item["excludedAccountIds"] + : item["excludedAccountIds"].map((p: any) => { + return p; + }), + }; +} + +export function awsOrganizationalDataMasterDeserializer(item: any): AwsOrganizationalDataMaster { + return { + organizationMembershipType: item["organizationMembershipType"], + stacksetName: item["stacksetName"], + excludedAccountIds: !item["excludedAccountIds"] + ? item["excludedAccountIds"] + : item["excludedAccountIds"].map((p: any) => { + return p; + }), + }; +} + +/** The AWS organization data for the member account */ +export interface AwsOrganizationalDataMember extends AwsOrganizationalData { + /** If the multi cloud account is not of membership type organization, this will be the ID of the account's parent */ + parentHierarchyId?: string; + /** The multi cloud account's membership type in the organization */ + organizationMembershipType: "Member"; +} + +export function awsOrganizationalDataMemberSerializer(item: AwsOrganizationalDataMember): any { + return { + organizationMembershipType: item["organizationMembershipType"], + parentHierarchyId: item["parentHierarchyId"], + }; +} + +export function awsOrganizationalDataMemberDeserializer(item: any): AwsOrganizationalDataMember { + return { + organizationMembershipType: item["organizationMembershipType"], + parentHierarchyId: item["parentHierarchyId"], + }; +} + +/** The GCP project connector environment data */ +export interface GcpProjectEnvironmentData extends EnvironmentData { + /** The Gcp project's organizational data */ + organizationalData?: GcpOrganizationalDataUnion; + /** The Gcp project's details */ + projectDetails?: GcpProjectDetails; + /** Scan interval in hours (value should be between 1-hour to 24-hours) */ + scanInterval?: number; + /** The type of the environment data. */ + environmentType: "GcpProject"; +} + +export function gcpProjectEnvironmentDataSerializer(item: GcpProjectEnvironmentData): any { + return { + environmentType: item["environmentType"], + organizationalData: !item["organizationalData"] + ? item["organizationalData"] + : gcpOrganizationalDataUnionSerializer(item["organizationalData"]), + projectDetails: !item["projectDetails"] + ? item["projectDetails"] + : gcpProjectDetailsSerializer(item["projectDetails"]), + scanInterval: item["scanInterval"], + }; +} + +export function gcpProjectEnvironmentDataDeserializer(item: any): GcpProjectEnvironmentData { + return { + environmentType: item["environmentType"], + organizationalData: !item["organizationalData"] + ? item["organizationalData"] + : gcpOrganizationalDataUnionDeserializer(item["organizationalData"]), + projectDetails: !item["projectDetails"] + ? item["projectDetails"] + : gcpProjectDetailsDeserializer(item["projectDetails"]), + scanInterval: item["scanInterval"], + }; +} + +/** The gcpOrganization data */ +export interface GcpOrganizationalData { + /** The multi cloud account's membership type in the organization */ + /** The discriminator possible values: Organization, Member */ + organizationMembershipType: OrganizationMembershipType; +} + +export function gcpOrganizationalDataSerializer(item: GcpOrganizationalData): any { + return { organizationMembershipType: item["organizationMembershipType"] }; +} + +export function gcpOrganizationalDataDeserializer(item: any): GcpOrganizationalData { + return { + organizationMembershipType: item["organizationMembershipType"], + }; +} + +/** Alias for GcpOrganizationalDataUnion */ +export type GcpOrganizationalDataUnion = + | GcpOrganizationalDataOrganization + | GcpOrganizationalDataMember + | GcpOrganizationalData; + +export function gcpOrganizationalDataUnionSerializer(item: GcpOrganizationalDataUnion): any { + switch (item.organizationMembershipType) { + case "Organization": + return gcpOrganizationalDataOrganizationSerializer(item as GcpOrganizationalDataOrganization); + + case "Member": + return gcpOrganizationalDataMemberSerializer(item as GcpOrganizationalDataMember); + + default: + return gcpOrganizationalDataSerializer(item); + } +} + +export function gcpOrganizationalDataUnionDeserializer(item: any): GcpOrganizationalDataUnion { + switch (item["organizationMembershipType"]) { + case "Organization": + return gcpOrganizationalDataOrganizationDeserializer( + item as GcpOrganizationalDataOrganization, + ); + + case "Member": + return gcpOrganizationalDataMemberDeserializer(item as GcpOrganizationalDataMember); + + default: + return gcpOrganizationalDataDeserializer(item); + } +} + +/** The gcpOrganization data for the parent account */ +export interface GcpOrganizationalDataOrganization extends GcpOrganizationalData { + /** If the multi cloud account is of membership type organization, list of accounts excluded from offering */ + excludedProjectNumbers?: string[]; + /** The service account email address which represents the organization level permissions container. */ + serviceAccountEmailAddress?: string; + /** The GCP workload identity provider id which represents the permissions required to auto provision security connectors */ + workloadIdentityProviderId?: string; + /** GCP organization name */ + readonly organizationName?: string; + /** The multi cloud account's membership type in the organization */ + organizationMembershipType: "Organization"; +} + +export function gcpOrganizationalDataOrganizationSerializer( + item: GcpOrganizationalDataOrganization, +): any { + return { + organizationMembershipType: item["organizationMembershipType"], + excludedProjectNumbers: !item["excludedProjectNumbers"] + ? item["excludedProjectNumbers"] + : item["excludedProjectNumbers"].map((p: any) => { + return p; + }), + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + }; +} + +export function gcpOrganizationalDataOrganizationDeserializer( + item: any, +): GcpOrganizationalDataOrganization { + return { + organizationMembershipType: item["organizationMembershipType"], + excludedProjectNumbers: !item["excludedProjectNumbers"] + ? item["excludedProjectNumbers"] + : item["excludedProjectNumbers"].map((p: any) => { + return p; + }), + serviceAccountEmailAddress: item["serviceAccountEmailAddress"], + workloadIdentityProviderId: item["workloadIdentityProviderId"], + organizationName: item["organizationName"], + }; +} + +/** The gcpOrganization data for the member account */ +export interface GcpOrganizationalDataMember extends GcpOrganizationalData { + /** If the multi cloud account is not of membership type organization, this will be the ID of the project's parent */ + parentHierarchyId?: string; + /** The GCP management project number from organizational onboarding */ + managementProjectNumber?: string; + /** The multi cloud account's membership type in the organization */ + organizationMembershipType: "Member"; +} + +export function gcpOrganizationalDataMemberSerializer(item: GcpOrganizationalDataMember): any { + return { + organizationMembershipType: item["organizationMembershipType"], + parentHierarchyId: item["parentHierarchyId"], + managementProjectNumber: item["managementProjectNumber"], + }; +} + +export function gcpOrganizationalDataMemberDeserializer(item: any): GcpOrganizationalDataMember { + return { + organizationMembershipType: item["organizationMembershipType"], + parentHierarchyId: item["parentHierarchyId"], + managementProjectNumber: item["managementProjectNumber"], + }; +} + +/** The details about the project represented by the security connector */ +export interface GcpProjectDetails { + /** The unique GCP Project number */ + projectNumber?: string; + /** The GCP Project id */ + projectId?: string; + /** The GCP workload identity federation pool id */ + readonly workloadIdentityPoolId?: string; + /** GCP project name */ + readonly projectName?: string; +} + +export function gcpProjectDetailsSerializer(item: GcpProjectDetails): any { + return { projectNumber: item["projectNumber"], projectId: item["projectId"] }; +} + +export function gcpProjectDetailsDeserializer(item: any): GcpProjectDetails { + return { + projectNumber: item["projectNumber"], + projectId: item["projectId"], + workloadIdentityPoolId: item["workloadIdentityPoolId"], + projectName: item["projectName"], + }; +} + +/** The github scope connector's environment data */ +export interface GithubScopeEnvironmentData extends EnvironmentData { + /** The type of the environment data. */ + environmentType: "GithubScope"; +} + +export function githubScopeEnvironmentDataSerializer(item: GithubScopeEnvironmentData): any { + return { environmentType: item["environmentType"] }; +} + +export function githubScopeEnvironmentDataDeserializer(item: any): GithubScopeEnvironmentData { + return { + environmentType: item["environmentType"], + }; +} + +/** The AzureDevOps scope connector's environment data */ +export interface AzureDevOpsScopeEnvironmentData extends EnvironmentData { + /** The type of the environment data. */ + environmentType: "AzureDevOpsScope"; +} + +export function azureDevOpsScopeEnvironmentDataSerializer( + item: AzureDevOpsScopeEnvironmentData, +): any { + return { environmentType: item["environmentType"] }; +} + +export function azureDevOpsScopeEnvironmentDataDeserializer( + item: any, +): AzureDevOpsScopeEnvironmentData { + return { + environmentType: item["environmentType"], + }; +} + +/** The GitLab scope connector's environment data */ +export interface GitlabScopeEnvironmentData extends EnvironmentData { + /** The type of the environment data. */ + environmentType: "GitlabScope"; +} + +export function gitlabScopeEnvironmentDataSerializer(item: GitlabScopeEnvironmentData): any { + return { environmentType: item["environmentType"] }; +} + +export function gitlabScopeEnvironmentDataDeserializer(item: any): GitlabScopeEnvironmentData { + return { + environmentType: item["environmentType"], + }; +} + +/** The Docker Hub connector environment data */ +export interface DockerHubEnvironmentData extends EnvironmentData { + /** The Docker Hub organization authentication details */ + authentication?: AuthenticationUnion; + /** Scan interval in hours (value should be between 1-hour to 24-hours) */ + scanInterval?: number; + /** The type of the environment data. */ + environmentType: "DockerHubOrganization"; +} + +export function dockerHubEnvironmentDataSerializer(item: DockerHubEnvironmentData): any { + return { + environmentType: item["environmentType"], + authentication: !item["authentication"] + ? item["authentication"] + : authenticationUnionSerializer(item["authentication"]), + scanInterval: item["scanInterval"], + }; +} + +export function dockerHubEnvironmentDataDeserializer(item: any): DockerHubEnvironmentData { + return { + environmentType: item["environmentType"], + authentication: !item["authentication"] + ? item["authentication"] + : authenticationUnionDeserializer(item["authentication"]), + scanInterval: item["scanInterval"], + }; +} + +/** The environment authentication details */ +export interface Authentication { + /** The authentication type */ + /** The discriminator possible values: AccessToken */ + authenticationType: AuthenticationType; +} + +export function authenticationSerializer(item: Authentication): any { + return { authenticationType: item["authenticationType"] }; +} + +export function authenticationDeserializer(item: any): Authentication { + return { + authenticationType: item["authenticationType"], + }; +} + +/** Alias for AuthenticationUnion */ +export type AuthenticationUnion = AccessTokenAuthentication | Authentication; + +export function authenticationUnionSerializer(item: AuthenticationUnion): any { + switch (item.authenticationType) { + case "AccessToken": + return accessTokenAuthenticationSerializer(item as AccessTokenAuthentication); + + default: + return authenticationSerializer(item); + } +} + +export function authenticationUnionDeserializer(item: any): AuthenticationUnion { + switch (item["authenticationType"]) { + case "AccessToken": + return accessTokenAuthenticationDeserializer(item as AccessTokenAuthentication); + + default: + return authenticationDeserializer(item); + } +} + +/** The authentication type */ +export enum KnownAuthenticationType { + /** AccessToken */ + AccessToken = "AccessToken", +} + +/** + * The authentication type \ + * {@link KnownAuthenticationType} can be used interchangeably with AuthenticationType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AccessToken**: AccessToken + */ +export type AuthenticationType = string; + +/** The environment authentication details */ +export interface AccessTokenAuthentication extends Authentication { + /** The user name that will be used while authenticating with the onboarded environment */ + username?: string; + /** The access token that will be used while authenticating with the onboarded environment */ + accessToken?: string; + /** The authentication type */ + authenticationType: "AccessToken"; +} + +export function accessTokenAuthenticationSerializer(item: AccessTokenAuthentication): any { + return { + authenticationType: item["authenticationType"], + username: item["username"], + accessToken: item["accessToken"], + }; +} + +export function accessTokenAuthenticationDeserializer(item: any): AccessTokenAuthentication { + return { + authenticationType: item["authenticationType"], + username: item["username"], + accessToken: item["accessToken"], + }; +} + +/** The JFrog Artifactory connector environment data */ +export interface JFrogEnvironmentData extends EnvironmentData { + /** Scan interval in hours (value should be between 1-hour to 24-hours) */ + scanInterval?: number; + /** The type of the environment data. */ + environmentType: "JFrogArtifactory"; +} + +export function jFrogEnvironmentDataSerializer(item: JFrogEnvironmentData): any { + return { environmentType: item["environmentType"], scanInterval: item["scanInterval"] }; +} + +export function jFrogEnvironmentDataDeserializer(item: any): JFrogEnvironmentData { + return { + environmentType: item["environmentType"], + scanInterval: item["scanInterval"], + }; +} + +/** A VM scanning configuration for a security offering of a Aws environment */ +export interface VmScannersAws extends VmScannersBase { + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function vmScannersAwsSerializer(item: VmScannersAws): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + cloudRoleArn: item["cloudRoleArn"], + }; +} + +export function vmScannersAwsDeserializer(item: any): VmScannersAws { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** A VM scanning configuration for a security offering of a given environment */ +export interface VmScannersBase { + /** Is VM scanning enabled */ + enabled?: boolean; + /** Configuration for VM scanning */ + configuration?: VmScannersBaseConfiguration; +} + +export function vmScannersBaseSerializer(item: VmScannersBase): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function vmScannersBaseDeserializer(item: any): VmScannersBase { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** Configuration for VM scanning */ +export interface VmScannersBaseConfiguration { + /** The scanning mode for the VM scan. */ + scanningMode?: ScanningMode; + /** Tags that indicates that a resource should not be scanned */ + exclusionTags?: Record; +} + +export function vmScannersBaseConfigurationSerializer(item: VmScannersBaseConfiguration): any { + return { scanningMode: item["scanningMode"], exclusionTags: item["exclusionTags"] }; +} + +export function vmScannersBaseConfigurationDeserializer(item: any): VmScannersBaseConfiguration { + return { + scanningMode: item["scanningMode"], + exclusionTags: !item["exclusionTags"] + ? item["exclusionTags"] + : Object.fromEntries( + Object.entries(item["exclusionTags"]).map(([k, p]: [string, any]) => [k, p]), + ), + }; +} + +/** The scanning mode for the VM scan. */ +export enum KnownScanningMode { + /** Default */ + Default = "Default", +} + +/** + * The scanning mode for the VM scan. \ + * {@link KnownScanningMode} can be used interchangeably with ScanningMode, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Default**: Default + */ +export type ScanningMode = string; + +/** The ARC autoprovisioning configuration for an AWS environment */ +export interface ArcAutoProvisioningAws extends ArcAutoProvisioning { + /** The cloud role ARN in AWS for this feature */ + cloudRoleArn?: string; +} + +export function arcAutoProvisioningAwsSerializer(item: ArcAutoProvisioningAws): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + cloudRoleArn: item["cloudRoleArn"], + }; +} + +export function arcAutoProvisioningAwsDeserializer(item: any): ArcAutoProvisioningAws { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + cloudRoleArn: item["cloudRoleArn"], + }; +} + +/** The ARC autoprovisioning configuration */ +export interface ArcAutoProvisioning { + /** Is arc auto provisioning enabled */ + enabled?: boolean; + /** Configuration for servers Arc auto provisioning for a given environment */ + configuration?: ArcAutoProvisioningConfiguration; +} + +export function arcAutoProvisioningSerializer(item: ArcAutoProvisioning): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function arcAutoProvisioningDeserializer(item: any): ArcAutoProvisioning { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** Configuration for servers Arc auto provisioning for a given environment */ +export interface ArcAutoProvisioningConfiguration { + /** Optional HTTP proxy endpoint to use for the Arc agent */ + proxy?: string; + /** Optional Arc private link scope resource id to link the Arc agent */ + privateLinkScope?: string; +} + +export function arcAutoProvisioningConfigurationSerializer( + item: ArcAutoProvisioningConfiguration, +): any { + return { proxy: item["proxy"], privateLinkScope: item["privateLinkScope"] }; +} + +export function arcAutoProvisioningConfigurationDeserializer( + item: any, +): ArcAutoProvisioningConfiguration { + return { + proxy: item["proxy"], + privateLinkScope: item["privateLinkScope"], + }; +} + +/** The ARC autoprovisioning configuration for an GCP environment */ +export interface ArcAutoProvisioningGcp extends ArcAutoProvisioning {} + +export function arcAutoProvisioningGcpSerializer(item: ArcAutoProvisioningGcp): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationSerializer(item["configuration"]), + }; +} + +export function arcAutoProvisioningGcpDeserializer(item: any): ArcAutoProvisioningGcp { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : arcAutoProvisioningConfigurationDeserializer(item["configuration"]), + }; +} + +/** A VM scanning configuration for a security offering of a GCP environment */ +export interface VmScannersGcp extends VmScannersBase {} + +export function vmScannersGcpSerializer(item: VmScannersGcp): any { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationSerializer(item["configuration"]), + }; +} + +export function vmScannersGcpDeserializer(item: any): VmScannersGcp { + return { + enabled: item["enabled"], + configuration: !item["configuration"] + ? item["configuration"] + : vmScannersBaseConfigurationDeserializer(item["configuration"]), + }; +} + +/** List of security connectors response. */ +export interface _SecurityConnectorsList { + /** The SecurityConnector items on this page */ + value: SecurityConnector[]; + /** The link to the next page of items */ + nextLink?: string; +} + +export function _securityConnectorsListDeserializer(item: any): _SecurityConnectorsList { + return { + value: securityConnectorArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securityConnectorArraySerializer(result: Array): any[] { + return result.map((item) => { + return securityConnectorSerializer(item); + }); +} + +export function securityConnectorArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return securityConnectorDeserializer(item); + }); +} + +export function _securityConnectorPropertiesSerializer(item: SecurityConnector): any { + return { + hierarchyIdentifier: item["hierarchyIdentifier"], + environmentName: item["environmentName"], + offerings: !item["offerings"] + ? item["offerings"] + : cloudOfferingUnionArraySerializer(item["offerings"]), + environmentData: !item["environmentData"] + ? item["environmentData"] + : environmentDataUnionSerializer(item["environmentData"]), + }; +} + +export function _securityConnectorPropertiesDeserializer(item: any) { + return { + hierarchyIdentifier: item["hierarchyIdentifier"], + hierarchyIdentifierTrialEndDate: !item["hierarchyIdentifierTrialEndDate"] + ? item["hierarchyIdentifierTrialEndDate"] + : new Date(item["hierarchyIdentifierTrialEndDate"]), + environmentName: item["environmentName"], + offerings: !item["offerings"] + ? item["offerings"] + : cloudOfferingUnionArrayDeserializer(item["offerings"]), + environmentData: !item["environmentData"] + ? item["environmentData"] + : environmentDataUnionDeserializer(item["environmentData"]), + }; +} diff --git a/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/index.ts b/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/index.ts new file mode 100644 index 000000000000..ad902fd3a0ee --- /dev/null +++ b/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/index.ts @@ -0,0 +1,54 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + AzureDevOpsOrg, + AzureDevOpsOrgProperties, + DevOpsProvisioningState, + OnboardingState, + ActionableRemediation, + ActionableRemediationState, + CategoryConfiguration, + RuleCategory, + TargetBranchConfiguration, + AnnotateDefaultBranchState, + InheritFromParentState, + AzureDevOpsOrgListResponse, + GitHubOwner, + GitHubOwnerProperties, + GitHubOwnerListResponse, + GitLabGroup, + GitLabGroupProperties, + GitLabGroupListResponse, + DevOpsConfiguration, + DevOpsConfigurationProperties, + Authorization, + AutoDiscovery, + DevOpsCapability, + AgentlessConfiguration, + AgentlessEnablement, + InventoryListKind, + InventoryList, + InventoryKind, + AzureDevOpsProject, + AzureDevOpsProjectProperties, + GitLabProject, + GitLabProjectProperties, + AzureDevOpsRepository, + AzureDevOpsRepositoryProperties, + GitHubRepository, + GitHubRepositoryProperties, + IssueCreationRequest, +} from "./models.js"; +export { + KnownDevOpsProvisioningState, + KnownOnboardingState, + KnownActionableRemediationState, + KnownRuleCategory, + KnownAnnotateDefaultBranchState, + KnownInheritFromParentState, + KnownAutoDiscovery, + KnownAgentlessEnablement, + KnownInventoryListKind, + KnownInventoryKind, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/models.ts b/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/models.ts new file mode 100644 index 000000000000..2e1f492dca39 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityConnectorsDevOpsAPI/models.ts @@ -0,0 +1,1459 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Azure DevOps Organization resource. */ +export interface AzureDevOpsOrg extends ProxyResource { + /** Azure DevOps Organization properties. */ + properties?: AzureDevOpsOrgProperties; +} + +export function azureDevOpsOrgSerializer(item: AzureDevOpsOrg): any { + return { + properties: !item["properties"] + ? item["properties"] + : azureDevOpsOrgPropertiesSerializer(item["properties"]), + }; +} + +export function azureDevOpsOrgDeserializer(item: any): AzureDevOpsOrg { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : azureDevOpsOrgPropertiesDeserializer(item["properties"]), + }; +} + +/** Azure DevOps Organization properties. */ +export interface AzureDevOpsOrgProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; + /** Configuration payload for PR Annotations. */ + actionableRemediation?: ActionableRemediation; +} + +export function azureDevOpsOrgPropertiesSerializer(item: AzureDevOpsOrgProperties): any { + return { + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationSerializer(item["actionableRemediation"]), + }; +} + +export function azureDevOpsOrgPropertiesDeserializer(item: any): AzureDevOpsOrgProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationDeserializer(item["actionableRemediation"]), + }; +} + +/** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ +export enum KnownDevOpsProvisioningState { + /** Succeeded */ + Succeeded = "Succeeded", + /** Failed */ + Failed = "Failed", + /** Canceled */ + Canceled = "Canceled", + /** Pending */ + Pending = "Pending", + /** PendingDeletion */ + PendingDeletion = "PendingDeletion", + /** DeletionSuccess */ + DeletionSuccess = "DeletionSuccess", + /** DeletionFailure */ + DeletionFailure = "DeletionFailure", +} + +/** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. \ + * {@link KnownDevOpsProvisioningState} can be used interchangeably with DevOpsProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: Succeeded \ + * **Failed**: Failed \ + * **Canceled**: Canceled \ + * **Pending**: Pending \ + * **PendingDeletion**: PendingDeletion \ + * **DeletionSuccess**: DeletionSuccess \ + * **DeletionFailure**: DeletionFailure + */ +export type DevOpsProvisioningState = string; + +/** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ +export enum KnownOnboardingState { + /** NotApplicable */ + NotApplicable = "NotApplicable", + /** OnboardedByOtherConnector */ + OnboardedByOtherConnector = "OnboardedByOtherConnector", + /** Onboarded */ + Onboarded = "Onboarded", + /** NotOnboarded */ + NotOnboarded = "NotOnboarded", +} + +/** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. \ + * {@link KnownOnboardingState} can be used interchangeably with OnboardingState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **NotApplicable**: NotApplicable \ + * **OnboardedByOtherConnector**: OnboardedByOtherConnector \ + * **Onboarded**: Onboarded \ + * **NotOnboarded**: NotOnboarded + */ +export type OnboardingState = string; + +/** Configuration payload for PR Annotations. */ +export interface ActionableRemediation { + /** + * ActionableRemediation Setting. + * None - the setting was never set. + * Enabled - ActionableRemediation is enabled. + * Disabled - ActionableRemediation is disabled. + */ + state?: ActionableRemediationState; + /** Gets or sets list of categories and severity levels. */ + categoryConfigurations?: CategoryConfiguration[]; + /** Repository branch configuration for PR Annotations. */ + branchConfiguration?: TargetBranchConfiguration; + /** + * Update Settings. + * + * Enabled - Resource should inherit configurations from parent. + * Disabled - Resource should not inherit configurations from parent. + */ + inheritFromParentState?: InheritFromParentState; +} + +export function actionableRemediationSerializer(item: ActionableRemediation): any { + return { + state: item["state"], + categoryConfigurations: !item["categoryConfigurations"] + ? item["categoryConfigurations"] + : categoryConfigurationArraySerializer(item["categoryConfigurations"]), + branchConfiguration: !item["branchConfiguration"] + ? item["branchConfiguration"] + : targetBranchConfigurationSerializer(item["branchConfiguration"]), + inheritFromParentState: item["inheritFromParentState"], + }; +} + +export function actionableRemediationDeserializer(item: any): ActionableRemediation { + return { + state: item["state"], + categoryConfigurations: !item["categoryConfigurations"] + ? item["categoryConfigurations"] + : categoryConfigurationArrayDeserializer(item["categoryConfigurations"]), + branchConfiguration: !item["branchConfiguration"] + ? item["branchConfiguration"] + : targetBranchConfigurationDeserializer(item["branchConfiguration"]), + inheritFromParentState: item["inheritFromParentState"], + }; +} + +/** + * ActionableRemediation Setting. + * None - the setting was never set. + * Enabled - ActionableRemediation is enabled. + * Disabled - ActionableRemediation is disabled. + */ +export enum KnownActionableRemediationState { + /** None */ + None = "None", + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", +} + +/** + * ActionableRemediation Setting. + * None - the setting was never set. + * Enabled - ActionableRemediation is enabled. + * Disabled - ActionableRemediation is disabled. \ + * {@link KnownActionableRemediationState} can be used interchangeably with ActionableRemediationState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **None**: None \ + * **Disabled**: Disabled \ + * **Enabled**: Enabled + */ +export type ActionableRemediationState = string; + +export function categoryConfigurationArraySerializer(result: Array): any[] { + return result.map((item) => { + return categoryConfigurationSerializer(item); + }); +} + +export function categoryConfigurationArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return categoryConfigurationDeserializer(item); + }); +} + +/** Severity level per category configuration for PR Annotations. */ +export interface CategoryConfiguration { + /** Gets or sets minimum severity level for a given category. */ + minimumSeverityLevel?: string; + /** + * Rule categories. + * Code - code scanning results. + * Artifact scanning results. + * Dependencies scanning results. + * IaC results. + * Secrets scanning results. + * Container scanning results. + */ + category?: RuleCategory; +} + +export function categoryConfigurationSerializer(item: CategoryConfiguration): any { + return { minimumSeverityLevel: item["minimumSeverityLevel"], category: item["category"] }; +} + +export function categoryConfigurationDeserializer(item: any): CategoryConfiguration { + return { + minimumSeverityLevel: item["minimumSeverityLevel"], + category: item["category"], + }; +} + +/** + * Rule categories. + * Code - code scanning results. + * Artifact scanning results. + * Dependencies scanning results. + * IaC results. + * Secrets scanning results. + * Container scanning results. + */ +export enum KnownRuleCategory { + /** Code */ + Code = "Code", + /** Artifacts */ + Artifacts = "Artifacts", + /** Dependencies */ + Dependencies = "Dependencies", + /** Secrets */ + Secrets = "Secrets", + /** IaC */ + IaC = "IaC", + /** Containers */ + Containers = "Containers", +} + +/** + * Rule categories. + * Code - code scanning results. + * Artifact scanning results. + * Dependencies scanning results. + * IaC results. + * Secrets scanning results. + * Container scanning results. \ + * {@link KnownRuleCategory} can be used interchangeably with RuleCategory, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Code**: Code \ + * **Artifacts**: Artifacts \ + * **Dependencies**: Dependencies \ + * **Secrets**: Secrets \ + * **IaC**: IaC \ + * **Containers**: Containers + */ +export type RuleCategory = string; + +/** Repository branch configuration for PR Annotations. */ +export interface TargetBranchConfiguration { + /** Gets or sets branches that should have annotations. */ + branchNames?: string[]; + /** + * Configuration of PR Annotations on default branch. + * + * Enabled - PR Annotations are enabled on the resource's default branch. + * Disabled - PR Annotations are disabled on the resource's default branch. + */ + annotateDefaultBranch?: AnnotateDefaultBranchState; +} + +export function targetBranchConfigurationSerializer(item: TargetBranchConfiguration): any { + return { + branchNames: !item["branchNames"] + ? item["branchNames"] + : item["branchNames"].map((p: any) => { + return p; + }), + annotateDefaultBranch: item["annotateDefaultBranch"], + }; +} + +export function targetBranchConfigurationDeserializer(item: any): TargetBranchConfiguration { + return { + branchNames: !item["branchNames"] + ? item["branchNames"] + : item["branchNames"].map((p: any) => { + return p; + }), + annotateDefaultBranch: item["annotateDefaultBranch"], + }; +} + +/** + * Configuration of PR Annotations on default branch. + * + * Enabled - PR Annotations are enabled on the resource's default branch. + * Disabled - PR Annotations are disabled on the resource's default branch. + */ +export enum KnownAnnotateDefaultBranchState { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", +} + +/** + * Configuration of PR Annotations on default branch. + * + * Enabled - PR Annotations are enabled on the resource's default branch. + * Disabled - PR Annotations are disabled on the resource's default branch. \ + * {@link KnownAnnotateDefaultBranchState} can be used interchangeably with AnnotateDefaultBranchState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Disabled \ + * **Enabled**: Enabled + */ +export type AnnotateDefaultBranchState = string; + +/** + * Update Settings. + * + * Enabled - Resource should inherit configurations from parent. + * Disabled - Resource should not inherit configurations from parent. + */ +export enum KnownInheritFromParentState { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", +} + +/** + * Update Settings. + * + * Enabled - Resource should inherit configurations from parent. + * Disabled - Resource should not inherit configurations from parent. \ + * {@link KnownInheritFromParentState} can be used interchangeably with InheritFromParentState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Disabled \ + * **Enabled**: Enabled + */ +export type InheritFromParentState = string; + +/** List of RP resources which supports pagination. */ +export interface AzureDevOpsOrgListResponse { + /** The AzureDevOpsOrg items on this page. */ + value?: AzureDevOpsOrg[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function azureDevOpsOrgListResponseDeserializer(item: any): AzureDevOpsOrgListResponse { + return { + value: !item["value"] ? item["value"] : azureDevOpsOrgArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function azureDevOpsOrgArraySerializer(result: Array): any[] { + return result.map((item) => { + return azureDevOpsOrgSerializer(item); + }); +} + +export function azureDevOpsOrgArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return azureDevOpsOrgDeserializer(item); + }); +} + +/** GitHub Owner resource. */ +export interface GitHubOwner extends ProxyResource { + /** GitHub Owner properties. */ + properties?: GitHubOwnerProperties; +} + +export function gitHubOwnerDeserializer(item: any): GitHubOwner { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : gitHubOwnerPropertiesDeserializer(item["properties"]), + }; +} + +/** GitHub Owner properties. */ +export interface GitHubOwnerProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** Gets or sets GitHub Owner url. */ + readonly ownerUrl?: string; + /** Gets or sets internal GitHub id. */ + readonly gitHubInternalId?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; +} + +export function gitHubOwnerPropertiesDeserializer(item: any): GitHubOwnerProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + ownerUrl: item["ownerUrl"], + gitHubInternalId: item["gitHubInternalId"], + onboardingState: item["onboardingState"], + }; +} + +/** List of RP resources which supports pagination. */ +export interface GitHubOwnerListResponse { + /** The GitHubOwner items on this page. */ + value?: GitHubOwner[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function gitHubOwnerListResponseDeserializer(item: any): GitHubOwnerListResponse { + return { + value: !item["value"] ? item["value"] : gitHubOwnerArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function gitHubOwnerArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return gitHubOwnerDeserializer(item); + }); +} + +/** GitLab Group resource. */ +export interface GitLabGroup extends ProxyResource { + /** GitLab Group properties. */ + properties?: GitLabGroupProperties; +} + +export function gitLabGroupDeserializer(item: any): GitLabGroup { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : gitLabGroupPropertiesDeserializer(item["properties"]), + }; +} + +/** GitLab Group properties. */ +export interface GitLabGroupProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** + * Gets or sets the fully-qualified name of the Group object. + * + * This contains the entire namespace hierarchy where namespaces are separated by the '$' character. + */ + readonly fullyQualifiedName?: string; + /** + * Gets or sets the human readable fully-qualified name of the Group object. + * + * This contains the entire namespace hierarchy as seen on GitLab UI where namespaces are separated by the '/' character. + */ + readonly fullyQualifiedFriendlyName?: string; + /** Gets or sets the url of the GitLab Group. */ + readonly url?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; +} + +export function gitLabGroupPropertiesDeserializer(item: any): GitLabGroupProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + fullyQualifiedName: item["fullyQualifiedName"], + fullyQualifiedFriendlyName: item["fullyQualifiedFriendlyName"], + url: item["url"], + onboardingState: item["onboardingState"], + }; +} + +/** List of RP resources which supports pagination. */ +export interface GitLabGroupListResponse { + /** The GitLabGroup items on this page. */ + value?: GitLabGroup[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function gitLabGroupListResponseDeserializer(item: any): GitLabGroupListResponse { + return { + value: !item["value"] ? item["value"] : gitLabGroupArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function gitLabGroupArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return gitLabGroupDeserializer(item); + }); +} + +/** DevOps Configuration resource. */ +export interface DevOpsConfiguration extends ProxyResource { + /** DevOps Configuration properties. */ + properties?: DevOpsConfigurationProperties; +} + +export function devOpsConfigurationSerializer(item: DevOpsConfiguration): any { + return { + properties: !item["properties"] + ? item["properties"] + : devOpsConfigurationPropertiesSerializer(item["properties"]), + }; +} + +export function devOpsConfigurationDeserializer(item: any): DevOpsConfiguration { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : devOpsConfigurationPropertiesDeserializer(item["properties"]), + }; +} + +/** DevOps Configuration properties. */ +export interface DevOpsConfigurationProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** Authorization payload. */ + authorization?: Authorization; + /** AutoDiscovery states. */ + autoDiscovery?: AutoDiscovery; + /** + * List of top-level inventory to select when AutoDiscovery is disabled. + * This field is ignored when AutoDiscovery is enabled. + */ + topLevelInventoryList?: string[]; + /** List of capabilities assigned to the DevOps configuration during the discovery process. */ + readonly capabilities?: DevOpsCapability[]; + /** Details about Agentless configuration. */ + agentlessConfiguration?: AgentlessConfiguration; +} + +export function devOpsConfigurationPropertiesSerializer(item: DevOpsConfigurationProperties): any { + return { + authorization: !item["authorization"] + ? item["authorization"] + : authorizationSerializer(item["authorization"]), + autoDiscovery: item["autoDiscovery"], + topLevelInventoryList: !item["topLevelInventoryList"] + ? item["topLevelInventoryList"] + : item["topLevelInventoryList"].map((p: any) => { + return p; + }), + agentlessConfiguration: !item["agentlessConfiguration"] + ? item["agentlessConfiguration"] + : agentlessConfigurationSerializer(item["agentlessConfiguration"]), + }; +} + +export function devOpsConfigurationPropertiesDeserializer( + item: any, +): DevOpsConfigurationProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + authorization: !item["authorization"] + ? item["authorization"] + : authorizationDeserializer(item["authorization"]), + autoDiscovery: item["autoDiscovery"], + topLevelInventoryList: !item["topLevelInventoryList"] + ? item["topLevelInventoryList"] + : item["topLevelInventoryList"].map((p: any) => { + return p; + }), + capabilities: !item["capabilities"] + ? item["capabilities"] + : devOpsCapabilityArrayDeserializer(item["capabilities"]), + agentlessConfiguration: !item["agentlessConfiguration"] + ? item["agentlessConfiguration"] + : agentlessConfigurationDeserializer(item["agentlessConfiguration"]), + }; +} + +/** Authorization payload. */ +export interface Authorization { + /** + * Gets or sets one-time OAuth code to exchange for refresh and access tokens. + * + * Only used during PUT/PATCH operations. The secret is cleared during GET. + */ + code?: string; +} + +export function authorizationSerializer(item: Authorization): any { + return { code: item["code"] }; +} + +export function authorizationDeserializer(item: any): Authorization { + return { + code: item["code"], + }; +} + +/** AutoDiscovery states. */ +export enum KnownAutoDiscovery { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", + /** NotApplicable */ + NotApplicable = "NotApplicable", +} + +/** + * AutoDiscovery states. \ + * {@link KnownAutoDiscovery} can be used interchangeably with AutoDiscovery, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Disabled \ + * **Enabled**: Enabled \ + * **NotApplicable**: NotApplicable + */ +export type AutoDiscovery = string; + +export function devOpsCapabilityArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return devOpsCapabilityDeserializer(item); + }); +} + +/** Details about DevOps capability. */ +export interface DevOpsCapability { + /** Gets the name of the DevOps capability. */ + readonly name?: string; + /** Gets the value of the DevOps capability. */ + readonly value?: string; +} + +export function devOpsCapabilityDeserializer(item: any): DevOpsCapability { + return { + name: item["name"], + value: item["value"], + }; +} + +/** Details about Agentless configuration. */ +export interface AgentlessConfiguration { + /** Agentless Enablement states. */ + agentlessEnabled?: AgentlessEnablement; + /** AutoDiscovery states. */ + agentlessAutoDiscovery?: AutoDiscovery; + /** Gets or sets the scanners for the connector. */ + scanners?: string[]; + /** Types for inventory list. */ + inventoryListType?: InventoryListKind; + /** + * Gets or sets the inventory list for inclusion or exclusion from Agentless. + * Will be ignored if agentless auto-discovery is enabled. + */ + inventoryList?: InventoryList[]; +} + +export function agentlessConfigurationSerializer(item: AgentlessConfiguration): any { + return { + agentlessEnabled: item["agentlessEnabled"], + agentlessAutoDiscovery: item["agentlessAutoDiscovery"], + scanners: !item["scanners"] + ? item["scanners"] + : item["scanners"].map((p: any) => { + return p; + }), + inventoryListType: item["inventoryListType"], + inventoryList: !item["inventoryList"] + ? item["inventoryList"] + : inventoryListArraySerializer(item["inventoryList"]), + }; +} + +export function agentlessConfigurationDeserializer(item: any): AgentlessConfiguration { + return { + agentlessEnabled: item["agentlessEnabled"], + agentlessAutoDiscovery: item["agentlessAutoDiscovery"], + scanners: !item["scanners"] + ? item["scanners"] + : item["scanners"].map((p: any) => { + return p; + }), + inventoryListType: item["inventoryListType"], + inventoryList: !item["inventoryList"] + ? item["inventoryList"] + : inventoryListArrayDeserializer(item["inventoryList"]), + }; +} + +/** Agentless Enablement states. */ +export enum KnownAgentlessEnablement { + /** Disabled */ + Disabled = "Disabled", + /** Enabled */ + Enabled = "Enabled", + /** NotApplicable */ + NotApplicable = "NotApplicable", +} + +/** + * Agentless Enablement states. \ + * {@link KnownAgentlessEnablement} can be used interchangeably with AgentlessEnablement, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Disabled**: Disabled \ + * **Enabled**: Enabled \ + * **NotApplicable**: NotApplicable + */ +export type AgentlessEnablement = string; + +/** Types for inventory list. */ +export enum KnownInventoryListKind { + /** Inclusion */ + Inclusion = "Inclusion", + /** Exclusion */ + Exclusion = "Exclusion", +} + +/** + * Types for inventory list. \ + * {@link KnownInventoryListKind} can be used interchangeably with InventoryListKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Inclusion**: Inclusion \ + * **Exclusion**: Exclusion + */ +export type InventoryListKind = string; + +export function inventoryListArraySerializer(result: Array): any[] { + return result.map((item) => { + return inventoryListSerializer(item); + }); +} + +export function inventoryListArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return inventoryListDeserializer(item); + }); +} + +/** Model for inventory to be included or excluded from Agentless. */ +export interface InventoryList { + /** Types for inventory kind. */ + inventoryKind?: InventoryKind; + /** Gets or sets the value for inventory type. */ + value?: string; +} + +export function inventoryListSerializer(item: InventoryList): any { + return { inventoryKind: item["inventoryKind"], value: item["value"] }; +} + +export function inventoryListDeserializer(item: any): InventoryList { + return { + inventoryKind: item["inventoryKind"], + value: item["value"], + }; +} + +/** Types for inventory kind. */ +export enum KnownInventoryKind { + /** AzureDevOpsOrganization */ + AzureDevOpsOrganization = "AzureDevOpsOrganization", + /** AzureDevOpsProject */ + AzureDevOpsProject = "AzureDevOpsProject", + /** AzureDevOpsRepository */ + AzureDevOpsRepository = "AzureDevOpsRepository", + /** GitHubOwner */ + GitHubOwner = "GitHubOwner", + /** GitHubRepository */ + GitHubRepository = "GitHubRepository", +} + +/** + * Types for inventory kind. \ + * {@link KnownInventoryKind} can be used interchangeably with InventoryKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **AzureDevOpsOrganization**: AzureDevOpsOrganization \ + * **AzureDevOpsProject**: AzureDevOpsProject \ + * **AzureDevOpsRepository**: AzureDevOpsRepository \ + * **GitHubOwner**: GitHubOwner \ + * **GitHubRepository**: GitHubRepository + */ +export type InventoryKind = string; + +/** List of RP resources which supports pagination. */ +export interface _DevOpsConfigurationListResponse { + /** The DevOpsConfiguration items on this page. */ + value?: DevOpsConfiguration[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _devOpsConfigurationListResponseDeserializer( + item: any, +): _DevOpsConfigurationListResponse { + return { + value: !item["value"] ? item["value"] : devOpsConfigurationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function devOpsConfigurationArraySerializer(result: Array): any[] { + return result.map((item) => { + return devOpsConfigurationSerializer(item); + }); +} + +export function devOpsConfigurationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return devOpsConfigurationDeserializer(item); + }); +} + +/** Azure DevOps Project resource. */ +export interface AzureDevOpsProject extends ProxyResource { + /** Azure DevOps Project properties. */ + properties?: AzureDevOpsProjectProperties; +} + +export function azureDevOpsProjectSerializer(item: AzureDevOpsProject): any { + return { + properties: !item["properties"] + ? item["properties"] + : azureDevOpsProjectPropertiesSerializer(item["properties"]), + }; +} + +export function azureDevOpsProjectDeserializer(item: any): AzureDevOpsProject { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : azureDevOpsProjectPropertiesDeserializer(item["properties"]), + }; +} + +/** Azure DevOps Project properties. */ +export interface AzureDevOpsProjectProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** Gets or sets parent Azure DevOps Organization name. */ + parentOrgName?: string; + /** Gets or sets Azure DevOps Project id. */ + readonly projectId?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; + /** Configuration payload for PR Annotations. */ + actionableRemediation?: ActionableRemediation; +} + +export function azureDevOpsProjectPropertiesSerializer(item: AzureDevOpsProjectProperties): any { + return { + parentOrgName: item["parentOrgName"], + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationSerializer(item["actionableRemediation"]), + }; +} + +export function azureDevOpsProjectPropertiesDeserializer(item: any): AzureDevOpsProjectProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + parentOrgName: item["parentOrgName"], + projectId: item["projectId"], + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationDeserializer(item["actionableRemediation"]), + }; +} + +/** List of RP resources which supports pagination. */ +export interface _AzureDevOpsProjectListResponse { + /** The AzureDevOpsProject items on this page. */ + value?: AzureDevOpsProject[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _azureDevOpsProjectListResponseDeserializer( + item: any, +): _AzureDevOpsProjectListResponse { + return { + value: !item["value"] ? item["value"] : azureDevOpsProjectArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function azureDevOpsProjectArraySerializer(result: Array): any[] { + return result.map((item) => { + return azureDevOpsProjectSerializer(item); + }); +} + +export function azureDevOpsProjectArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return azureDevOpsProjectDeserializer(item); + }); +} + +/** GitLab Project resource. */ +export interface GitLabProject extends ProxyResource { + /** GitLab Project properties. */ + properties?: GitLabProjectProperties; +} + +export function gitLabProjectDeserializer(item: any): GitLabProject { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : gitLabProjectPropertiesDeserializer(item["properties"]), + }; +} + +/** GitLab Project properties. */ +export interface GitLabProjectProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** + * Gets or sets the fully-qualified name of the project object. + * + * This contains the entire hierarchy where entities are separated by the '$' character. + */ + readonly fullyQualifiedName?: string; + /** + * Gets or sets the human readable fully-qualified name of the Project object. + * + * This contains the entire namespace hierarchy as seen on GitLab UI where entities are separated by the '/' character. + */ + readonly fullyQualifiedFriendlyName?: string; + /** + * Gets or sets the fully-qualified name of the project's parent group object. + * + * This contains the entire hierarchy where namespaces are separated by the '$' character. + */ + readonly fullyQualifiedParentGroupName?: string; + /** Gets or sets the url of the GitLab Project. */ + readonly url?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; +} + +export function gitLabProjectPropertiesDeserializer(item: any): GitLabProjectProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + fullyQualifiedName: item["fullyQualifiedName"], + fullyQualifiedFriendlyName: item["fullyQualifiedFriendlyName"], + fullyQualifiedParentGroupName: item["fullyQualifiedParentGroupName"], + url: item["url"], + onboardingState: item["onboardingState"], + }; +} + +/** List of RP resources which supports pagination. */ +export interface _GitLabProjectListResponse { + /** The GitLabProject items on this page. */ + value?: GitLabProject[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _gitLabProjectListResponseDeserializer(item: any): _GitLabProjectListResponse { + return { + value: !item["value"] ? item["value"] : gitLabProjectArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function gitLabProjectArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return gitLabProjectDeserializer(item); + }); +} + +/** Azure DevOps Repository resource. */ +export interface AzureDevOpsRepository extends ProxyResource { + /** Azure DevOps Repository properties. */ + properties?: AzureDevOpsRepositoryProperties; +} + +export function azureDevOpsRepositorySerializer(item: AzureDevOpsRepository): any { + return { + properties: !item["properties"] + ? item["properties"] + : azureDevOpsRepositoryPropertiesSerializer(item["properties"]), + }; +} + +export function azureDevOpsRepositoryDeserializer(item: any): AzureDevOpsRepository { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : azureDevOpsRepositoryPropertiesDeserializer(item["properties"]), + }; +} + +/** Azure DevOps Repository properties. */ +export interface AzureDevOpsRepositoryProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** Gets or sets parent Azure DevOps Organization name. */ + parentOrgName?: string; + /** Gets or sets parent Azure DevOps Project name. */ + parentProjectName?: string; + /** Gets or sets Azure DevOps Repository id. */ + readonly repoId?: string; + /** Gets or sets Azure DevOps Repository url. */ + readonly repoUrl?: string; + /** Gets or sets Azure DevOps repository visibility, whether it is public or private etc. */ + readonly visibility?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; + /** Configuration payload for PR Annotations. */ + actionableRemediation?: ActionableRemediation; +} + +export function azureDevOpsRepositoryPropertiesSerializer( + item: AzureDevOpsRepositoryProperties, +): any { + return { + parentOrgName: item["parentOrgName"], + parentProjectName: item["parentProjectName"], + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationSerializer(item["actionableRemediation"]), + }; +} + +export function azureDevOpsRepositoryPropertiesDeserializer( + item: any, +): AzureDevOpsRepositoryProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + parentOrgName: item["parentOrgName"], + parentProjectName: item["parentProjectName"], + repoId: item["repoId"], + repoUrl: item["repoUrl"], + visibility: item["visibility"], + onboardingState: item["onboardingState"], + actionableRemediation: !item["actionableRemediation"] + ? item["actionableRemediation"] + : actionableRemediationDeserializer(item["actionableRemediation"]), + }; +} + +/** List of RP resources which supports pagination. */ +export interface _AzureDevOpsRepositoryListResponse { + /** The AzureDevOpsRepository items on this page. */ + value?: AzureDevOpsRepository[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _azureDevOpsRepositoryListResponseDeserializer( + item: any, +): _AzureDevOpsRepositoryListResponse { + return { + value: !item["value"] ? item["value"] : azureDevOpsRepositoryArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function azureDevOpsRepositoryArraySerializer(result: Array): any[] { + return result.map((item) => { + return azureDevOpsRepositorySerializer(item); + }); +} + +export function azureDevOpsRepositoryArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return azureDevOpsRepositoryDeserializer(item); + }); +} + +/** GitHub Repository resource. */ +export interface GitHubRepository extends ProxyResource { + /** GitHub Repository properties. */ + properties?: GitHubRepositoryProperties; +} + +export function gitHubRepositoryDeserializer(item: any): GitHubRepository { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : gitHubRepositoryPropertiesDeserializer(item["properties"]), + }; +} + +/** GitHub Repository properties. */ +export interface GitHubRepositoryProperties { + /** Gets the resource status message. */ + readonly provisioningStatusMessage?: string; + /** Gets the time when resource was last checked. */ + readonly provisioningStatusUpdateTimeUtc?: Date; + /** + * The provisioning state of the resource. + * + * Pending - Provisioning pending. + * Failed - Provisioning failed. + * Succeeded - Successful provisioning. + * Canceled - Provisioning canceled. + * PendingDeletion - Deletion pending. + * DeletionSuccess - Deletion successful. + * DeletionFailure - Deletion failure. + */ + readonly provisioningState?: DevOpsProvisioningState; + /** + * Gets or sets GitHub Repository id. + * + * This is a numeric id defined by Github. + * Eg: "123456". + */ + readonly repoId?: string; + /** + * Gets or sets GitHub Repository name. + * Eg: "new-repo-1". + */ + readonly repoName?: string; + /** + * Gets or sets GitHub Full Name. + * Repository name, prefixed with Owner name. + * Eg: "my-org/new-repo-1". + */ + readonly repoFullName?: string; + /** + * Details about resource onboarding status across all connectors. + * + * OnboardedByOtherConnector - this resource has already been onboarded to another connector. This is only applicable to top-level resources. + * Onboarded - this resource has already been onboarded by the specified connector. + * NotOnboarded - this resource has not been onboarded to any connector. + * NotApplicable - the onboarding state is not applicable to the current endpoint. + */ + onboardingState?: OnboardingState; + /** Gets or sets GitHub Repository url. */ + readonly repoUrl?: string; + /** Gets or sets parent GitHub Owner name. */ + parentOwnerName?: string; +} + +export function gitHubRepositoryPropertiesDeserializer(item: any): GitHubRepositoryProperties { + return { + provisioningStatusMessage: item["provisioningStatusMessage"], + provisioningStatusUpdateTimeUtc: !item["provisioningStatusUpdateTimeUtc"] + ? item["provisioningStatusUpdateTimeUtc"] + : new Date(item["provisioningStatusUpdateTimeUtc"]), + provisioningState: item["provisioningState"], + repoId: item["repoId"], + repoName: item["repoName"], + repoFullName: item["repoFullName"], + onboardingState: item["onboardingState"], + repoUrl: item["repoUrl"], + parentOwnerName: item["parentOwnerName"], + }; +} + +/** List of RP resources which supports pagination. */ +export interface _GitHubRepositoryListResponse { + /** The GitHubRepository items on this page. */ + value?: GitHubRepository[]; + /** The link to the next page of items. */ + nextLink?: string; +} + +export function _gitHubRepositoryListResponseDeserializer( + item: any, +): _GitHubRepositoryListResponse { + return { + value: !item["value"] ? item["value"] : gitHubRepositoryArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function gitHubRepositoryArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return gitHubRepositoryDeserializer(item); + }); +} + +/** The issue creation request model */ +export interface IssueCreationRequest { + /** The security assessment resource id that the issue will be opened based on. */ + securityAssessmentResourceId?: string; +} + +export function issueCreationRequestSerializer(item: IssueCreationRequest): any { + return { securityAssessmentResourceId: item["securityAssessmentResourceId"] }; +} diff --git a/sdk/security/arm-security/src/models/securityManagementClient/index.ts b/sdk/security/arm-security/src/models/securityManagementClient/index.ts new file mode 100644 index 000000000000..874d8670df76 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityManagementClient/index.ts @@ -0,0 +1,4 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { PrivateLinkParameters } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securityManagementClient/models.ts b/sdk/security/arm-security/src/models/securityManagementClient/models.ts new file mode 100644 index 000000000000..ce33daceb4d3 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityManagementClient/models.ts @@ -0,0 +1,18 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** model interface PrivateLinkParameters */ +export interface PrivateLinkParameters { + /** The name of the private link resource. */ + privateLinkName: string; +} + +export function privateLinkParametersSerializer(_item: PrivateLinkParameters): any { + return {}; +} diff --git a/sdk/security/arm-security/src/models/securityOperatorsAPI/index.ts b/sdk/security/arm-security/src/models/securityOperatorsAPI/index.ts new file mode 100644 index 000000000000..3e832ec41b03 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityOperatorsAPI/index.ts @@ -0,0 +1,4 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { SecurityOperator } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securityOperatorsAPI/models.ts b/sdk/security/arm-security/src/models/securityOperatorsAPI/models.ts new file mode 100644 index 000000000000..4ebfea237ea1 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityOperatorsAPI/models.ts @@ -0,0 +1,51 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { + ProxyResource, + systemDataDeserializer, + Identity, + identityDeserializer, +} from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Security operator under a given subscription and pricing */ +export interface SecurityOperator extends ProxyResource { + /** Identity for the resource. */ + identity?: Identity; +} + +export function securityOperatorDeserializer(item: any): SecurityOperator { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + identity: !item["identity"] ? item["identity"] : identityDeserializer(item["identity"]), + }; +} + +/** List of SecurityOperator response. */ +export interface _SecurityOperatorList { + /** List of SecurityOperator configurations */ + value: SecurityOperator[]; +} + +export function _securityOperatorListDeserializer(item: any): _SecurityOperatorList { + return { + value: securityOperatorArrayDeserializer(item["value"]), + }; +} + +export function securityOperatorArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return securityOperatorDeserializer(item); + }); +} diff --git a/sdk/security/arm-security/src/models/securitySolutionsAPI/index.ts b/sdk/security/arm-security/src/models/securitySolutionsAPI/index.ts new file mode 100644 index 000000000000..a1b704ad37b0 --- /dev/null +++ b/sdk/security/arm-security/src/models/securitySolutionsAPI/index.ts @@ -0,0 +1,62 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + DiscoveredSecuritySolution, + DiscoveredSecuritySolutionProperties, + SecurityFamily, + ExternalSecuritySolution, + ExternalSecuritySolutionUnion, + ExternalSecuritySolutionKind, + CefExternalSecuritySolution, + CefSolutionProperties, + AtaExternalSecuritySolution, + AtaSolutionProperties, + AadExternalSecuritySolution, + AadSolutionProperties, + AadConnectivityState, + ExternalSecuritySolutionProperties, + ConnectedWorkspace, + JitNetworkAccessPolicy, + JitNetworkAccessPolicyProperties, + JitNetworkAccessPolicyVirtualMachine, + JitNetworkAccessPortRule, + Protocol, + JitNetworkAccessRequest, + JitNetworkAccessRequestVirtualMachine, + JitNetworkAccessRequestPort, + Status, + StatusReason, + JitNetworkAccessPolicyInitiateRequest, + JitNetworkAccessPolicyInitiateVirtualMachine, + JitNetworkAccessPolicyInitiatePort, + SecuritySolution, + SecuritySolutionProperties, + AllowedConnectionsResource, + AllowedConnectionsResourceProperties, + ConnectableResource, + ConnectedResource, + ConnectionType, + ServerVulnerabilityAssessment, + ServerVulnerabilityAssessmentProperties, + ServerVulnerabilityAssessmentPropertiesProvisioningState, + ServerVulnerabilityAssessmentsList, + TopologyResource, + TopologyResourceProperties, + TopologySingleResource, + TopologySingleResourceParent, + TopologySingleResourceChild, + SecuritySolutionsReferenceDataList, + SecuritySolutionsReferenceData, + SecuritySolutionsReferenceDataProperties, +} from "./models.js"; +export { + KnownSecurityFamily, + KnownExternalSecuritySolutionKind, + KnownAadConnectivityState, + KnownProtocol, + KnownStatus, + KnownStatusReason, + KnownConnectionType, + KnownServerVulnerabilityAssessmentPropertiesProvisioningState, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securitySolutionsAPI/models.ts b/sdk/security/arm-security/src/models/securitySolutionsAPI/models.ts new file mode 100644 index 000000000000..085e693f81bf --- /dev/null +++ b/sdk/security/arm-security/src/models/securitySolutionsAPI/models.ts @@ -0,0 +1,1487 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { serializeRecord } from "../../static-helpers/serialization/serialize-record.js"; +import { ProvisioningState } from "../common/models.js"; +import { ProxyResource, SystemData, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */ +export interface DiscoveredSecuritySolution extends ProxyResource { + /** Location where the resource is stored */ + readonly location: string; + /** The security family of the discovered solution */ + securityFamily: SecurityFamily; + /** The security solutions' image offer */ + offer: string; + /** The security solutions' image publisher */ + publisher: string; + /** The security solutions' image sku */ + sku: string; +} + +export function discoveredSecuritySolutionDeserializer(item: any): DiscoveredSecuritySolution { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ..._discoveredSecuritySolutionPropertiesDeserializer(item["properties"]), + location: item["location"], + }; +} + +/** model interface DiscoveredSecuritySolutionProperties */ +export interface DiscoveredSecuritySolutionProperties { + /** The security family of the discovered solution */ + securityFamily: SecurityFamily; + /** The security solutions' image offer */ + offer: string; + /** The security solutions' image publisher */ + publisher: string; + /** The security solutions' image sku */ + sku: string; +} + +export function discoveredSecuritySolutionPropertiesDeserializer( + item: any, +): DiscoveredSecuritySolutionProperties { + return { + securityFamily: item["securityFamily"], + offer: item["offer"], + publisher: item["publisher"], + sku: item["sku"], + }; +} + +/** The security family of the discovered solution */ +export enum KnownSecurityFamily { + /** Waf */ + Waf = "Waf", + /** Ngfw */ + Ngfw = "Ngfw", + /** SaasWaf */ + SaasWaf = "SaasWaf", + /** Va */ + Va = "Va", +} + +/** + * The security family of the discovered solution \ + * {@link KnownSecurityFamily} can be used interchangeably with SecurityFamily, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Waf**: Waf \ + * **Ngfw**: Ngfw \ + * **SaasWaf**: SaasWaf \ + * **Va**: Va + */ +export type SecurityFamily = string; + +/** model interface _DiscoveredSecuritySolutionList */ +export interface _DiscoveredSecuritySolutionList { + value?: DiscoveredSecuritySolution[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _discoveredSecuritySolutionListDeserializer( + item: any, +): _DiscoveredSecuritySolutionList { + return { + value: !item["value"] + ? item["value"] + : discoveredSecuritySolutionArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function discoveredSecuritySolutionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return discoveredSecuritySolutionDeserializer(item); + }); +} + +/** Represents a security solution external to Microsoft Defender for Cloud which sends information to an OMS workspace and whose data is displayed by Microsoft Defender for Cloud. */ +export interface ExternalSecuritySolution extends ProxyResource { + /** The resource-specific properties for this resource. */ + properties?: any; + /** The kind of the external solution */ + /** The discriminator possible values: CEF, ATA, AAD */ + kind?: ExternalSecuritySolutionKind; + /** Location where the resource is stored */ + readonly location?: string; +} + +export function externalSecuritySolutionDeserializer(item: any): ExternalSecuritySolution { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: item["properties"], + kind: item["kind"], + location: item["location"], + }; +} + +/** Alias for ExternalSecuritySolutionUnion */ +export type ExternalSecuritySolutionUnion = + | CefExternalSecuritySolution + | AtaExternalSecuritySolution + | AadExternalSecuritySolution + | ExternalSecuritySolution; + +export function externalSecuritySolutionUnionDeserializer( + item: any, +): ExternalSecuritySolutionUnion { + switch (item["kind"]) { + case "CEF": + return cefExternalSecuritySolutionDeserializer(item as CefExternalSecuritySolution); + + case "ATA": + return ataExternalSecuritySolutionDeserializer(item as AtaExternalSecuritySolution); + + case "AAD": + return aadExternalSecuritySolutionDeserializer(item as AadExternalSecuritySolution); + + default: + return externalSecuritySolutionDeserializer(item); + } +} + +/** The kind of the external solution */ +export enum KnownExternalSecuritySolutionKind { + /** CEF */ + CEF = "CEF", + /** ATA */ + ATA = "ATA", + /** AAD */ + AAD = "AAD", +} + +/** + * The kind of the external solution \ + * {@link KnownExternalSecuritySolutionKind} can be used interchangeably with ExternalSecuritySolutionKind, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **CEF**: CEF \ + * **ATA**: ATA \ + * **AAD**: AAD + */ +export type ExternalSecuritySolutionKind = string; + +/** Represents a security solution which sends CEF logs to an OMS workspace */ +export interface CefExternalSecuritySolution extends ExternalSecuritySolution { + /** The external security solution properties for CEF solutions */ + properties?: CefSolutionProperties; + kind: "CEF"; +} + +export function cefExternalSecuritySolutionDeserializer(item: any): CefExternalSecuritySolution { + return { + properties: !item["properties"] + ? item["properties"] + : cefSolutionPropertiesDeserializer(item["properties"]), + kind: item["kind"], + location: item["location"], + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** The external security solution properties for CEF solutions */ +export interface CefSolutionProperties extends ExternalSecuritySolutionProperties { + hostname?: string; + agent?: string; + lastEventReceived?: string; +} + +export function cefSolutionPropertiesDeserializer(item: any): CefSolutionProperties { + return { + additionalProperties: serializeRecord(item, [ + "deviceVendor", + "deviceType", + "workspace", + "hostname", + "agent", + "lastEventReceived", + ]), + deviceVendor: item["deviceVendor"], + deviceType: item["deviceType"], + workspace: !item["workspace"] + ? item["workspace"] + : connectedWorkspaceDeserializer(item["workspace"]), + hostname: item["hostname"], + agent: item["agent"], + lastEventReceived: item["lastEventReceived"], + }; +} + +/** Represents an ATA security solution which sends logs to an OMS workspace */ +export interface AtaExternalSecuritySolution extends ExternalSecuritySolution { + /** The external security solution properties for ATA solutions */ + properties?: AtaSolutionProperties; + kind: "ATA"; +} + +export function ataExternalSecuritySolutionDeserializer(item: any): AtaExternalSecuritySolution { + return { + properties: !item["properties"] + ? item["properties"] + : ataSolutionPropertiesDeserializer(item["properties"]), + kind: item["kind"], + location: item["location"], + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** The external security solution properties for ATA solutions */ +export interface AtaSolutionProperties extends ExternalSecuritySolutionProperties { + lastEventReceived?: string; +} + +export function ataSolutionPropertiesDeserializer(item: any): AtaSolutionProperties { + return { + additionalProperties: serializeRecord(item, [ + "deviceVendor", + "deviceType", + "workspace", + "lastEventReceived", + ]), + deviceVendor: item["deviceVendor"], + deviceType: item["deviceType"], + workspace: !item["workspace"] + ? item["workspace"] + : connectedWorkspaceDeserializer(item["workspace"]), + lastEventReceived: item["lastEventReceived"], + }; +} + +/** Represents an AAD identity protection solution which sends logs to an OMS workspace. */ +export interface AadExternalSecuritySolution extends ExternalSecuritySolution { + /** The external security solution properties for AAD solutions */ + properties?: AadSolutionProperties; + kind: "AAD"; +} + +export function aadExternalSecuritySolutionDeserializer(item: any): AadExternalSecuritySolution { + return { + properties: !item["properties"] + ? item["properties"] + : aadSolutionPropertiesDeserializer(item["properties"]), + kind: item["kind"], + location: item["location"], + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + }; +} + +/** The external security solution properties for AAD solutions */ +export interface AadSolutionProperties extends ExternalSecuritySolutionProperties { + /** The connectivity state of the external AAD solution */ + connectivityState?: AadConnectivityState; +} + +export function aadSolutionPropertiesDeserializer(item: any): AadSolutionProperties { + return { + additionalProperties: serializeRecord(item, [ + "deviceVendor", + "deviceType", + "workspace", + "connectivityState", + ]), + deviceVendor: item["deviceVendor"], + deviceType: item["deviceType"], + workspace: !item["workspace"] + ? item["workspace"] + : connectedWorkspaceDeserializer(item["workspace"]), + connectivityState: item["connectivityState"], + }; +} + +/** The connectivity state of the external AAD solution */ +export enum KnownAadConnectivityState { + /** Discovered */ + Discovered = "Discovered", + /** NotLicensed */ + NotLicensed = "NotLicensed", + /** Connected */ + Connected = "Connected", +} + +/** + * The connectivity state of the external AAD solution \ + * {@link KnownAadConnectivityState} can be used interchangeably with AadConnectivityState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Discovered**: Discovered \ + * **NotLicensed**: NotLicensed \ + * **Connected**: Connected + */ +export type AadConnectivityState = string; + +/** The solution properties (correspond to the solution kind) */ +export interface ExternalSecuritySolutionProperties { + deviceVendor?: string; + deviceType?: string; + /** Represents an OMS workspace to which the solution is connected */ + workspace?: ConnectedWorkspace; + /** Additional properties */ + additionalProperties?: Record; +} + +export function externalSecuritySolutionPropertiesDeserializer( + item: any, +): ExternalSecuritySolutionProperties { + return { + additionalProperties: serializeRecord(item, ["deviceVendor", "deviceType", "workspace"]), + deviceVendor: item["deviceVendor"], + deviceType: item["deviceType"], + workspace: !item["workspace"] + ? item["workspace"] + : connectedWorkspaceDeserializer(item["workspace"]), + }; +} + +/** Represents an OMS workspace to which the solution is connected */ +export interface ConnectedWorkspace { + /** Azure resource ID of the connected OMS workspace */ + id?: string; +} + +export function connectedWorkspaceDeserializer(item: any): ConnectedWorkspace { + return { + id: item["id"], + }; +} + +/** model interface _ExternalSecuritySolutionList */ +export interface _ExternalSecuritySolutionList { + value?: ExternalSecuritySolutionUnion[]; + readonly nextLink?: string; +} + +export function _externalSecuritySolutionListDeserializer( + item: any, +): _ExternalSecuritySolutionList { + return { + value: !item["value"] + ? item["value"] + : externalSecuritySolutionUnionArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function externalSecuritySolutionUnionArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return externalSecuritySolutionUnionDeserializer(item); + }); +} + +/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */ +export interface JitNetworkAccessPolicy extends ProxyResource { + /** Kind of the resource */ + kind?: string; + /** Location where the resource is stored */ + readonly location: string; + /** Configurations for Microsoft.Compute/virtualMachines resource type. */ + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; + requests?: JitNetworkAccessRequest[]; + /** Gets the provisioning state of the Just-in-Time policy. */ + readonly provisioningState?: string; +} + +export function jitNetworkAccessPolicySerializer(item: JitNetworkAccessPolicy): any { + return { properties: _jitNetworkAccessPolicyPropertiesSerializer(item), kind: item["kind"] }; +} + +export function jitNetworkAccessPolicyDeserializer(item: any): JitNetworkAccessPolicy { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ..._jitNetworkAccessPolicyPropertiesDeserializer(item["properties"]), + kind: item["kind"], + location: item["location"], + }; +} + +/** model interface JitNetworkAccessPolicyProperties */ +export interface JitNetworkAccessPolicyProperties { + /** Configurations for Microsoft.Compute/virtualMachines resource type. */ + virtualMachines: JitNetworkAccessPolicyVirtualMachine[]; + requests?: JitNetworkAccessRequest[]; + /** Gets the provisioning state of the Just-in-Time policy. */ + readonly provisioningState?: string; +} + +export function jitNetworkAccessPolicyPropertiesSerializer( + item: JitNetworkAccessPolicyProperties, +): any { + return { + virtualMachines: jitNetworkAccessPolicyVirtualMachineArraySerializer(item["virtualMachines"]), + requests: !item["requests"] + ? item["requests"] + : jitNetworkAccessRequestArraySerializer(item["requests"]), + }; +} + +export function jitNetworkAccessPolicyPropertiesDeserializer( + item: any, +): JitNetworkAccessPolicyProperties { + return { + virtualMachines: jitNetworkAccessPolicyVirtualMachineArrayDeserializer(item["virtualMachines"]), + requests: !item["requests"] + ? item["requests"] + : jitNetworkAccessRequestArrayDeserializer(item["requests"]), + provisioningState: item["provisioningState"], + }; +} + +export function jitNetworkAccessPolicyVirtualMachineArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicyVirtualMachineSerializer(item); + }); +} + +export function jitNetworkAccessPolicyVirtualMachineArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicyVirtualMachineDeserializer(item); + }); +} + +/** model interface 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; +} + +export function jitNetworkAccessPolicyVirtualMachineSerializer( + item: JitNetworkAccessPolicyVirtualMachine, +): any { + return { + id: item["id"], + ports: jitNetworkAccessPortRuleArraySerializer(item["ports"]), + publicIpAddress: item["publicIpAddress"], + }; +} + +export function jitNetworkAccessPolicyVirtualMachineDeserializer( + item: any, +): JitNetworkAccessPolicyVirtualMachine { + return { + id: item["id"], + ports: jitNetworkAccessPortRuleArrayDeserializer(item["ports"]), + publicIpAddress: item["publicIpAddress"], + }; +} + +export function jitNetworkAccessPortRuleArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPortRuleSerializer(item); + }); +} + +export function jitNetworkAccessPortRuleArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPortRuleDeserializer(item); + }); +} + +/** model interface JitNetworkAccessPortRule */ +export interface JitNetworkAccessPortRule { + number: number; + 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; +} + +export function jitNetworkAccessPortRuleSerializer(item: JitNetworkAccessPortRule): any { + return { + number: item["number"], + protocol: item["protocol"], + allowedSourceAddressPrefix: item["allowedSourceAddressPrefix"], + allowedSourceAddressPrefixes: !item["allowedSourceAddressPrefixes"] + ? item["allowedSourceAddressPrefixes"] + : item["allowedSourceAddressPrefixes"].map((p: any) => { + return p; + }), + maxRequestAccessDuration: item["maxRequestAccessDuration"], + }; +} + +export function jitNetworkAccessPortRuleDeserializer(item: any): JitNetworkAccessPortRule { + return { + number: item["number"], + protocol: item["protocol"], + allowedSourceAddressPrefix: item["allowedSourceAddressPrefix"], + allowedSourceAddressPrefixes: !item["allowedSourceAddressPrefixes"] + ? item["allowedSourceAddressPrefixes"] + : item["allowedSourceAddressPrefixes"].map((p: any) => { + return p; + }), + maxRequestAccessDuration: item["maxRequestAccessDuration"], + }; +} + +/** Known values of {@link Protocol} that the service accepts. */ +export enum KnownProtocol { + /** TCP */ + TCP = "TCP", + /** UDP */ + UDP = "UDP", + /** * */ + All = "*", +} + +/** Type of Protocol */ +export type Protocol = string; + +export function jitNetworkAccessRequestArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestSerializer(item); + }); +} + +export function jitNetworkAccessRequestArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestDeserializer(item); + }); +} + +/** model interface 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; +} + +export function jitNetworkAccessRequestSerializer(item: JitNetworkAccessRequest): any { + return { + virtualMachines: jitNetworkAccessRequestVirtualMachineArraySerializer(item["virtualMachines"]), + startTimeUtc: item["startTimeUtc"].toISOString(), + requestor: item["requestor"], + justification: item["justification"], + }; +} + +export function jitNetworkAccessRequestDeserializer(item: any): JitNetworkAccessRequest { + return { + virtualMachines: jitNetworkAccessRequestVirtualMachineArrayDeserializer( + item["virtualMachines"], + ), + startTimeUtc: new Date(item["startTimeUtc"]), + requestor: item["requestor"], + justification: item["justification"], + }; +} + +export function jitNetworkAccessRequestVirtualMachineArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestVirtualMachineSerializer(item); + }); +} + +export function jitNetworkAccessRequestVirtualMachineArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestVirtualMachineDeserializer(item); + }); +} + +/** model interface 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[]; +} + +export function jitNetworkAccessRequestVirtualMachineSerializer( + item: JitNetworkAccessRequestVirtualMachine, +): any { + return { id: item["id"], ports: jitNetworkAccessRequestPortArraySerializer(item["ports"]) }; +} + +export function jitNetworkAccessRequestVirtualMachineDeserializer( + item: any, +): JitNetworkAccessRequestVirtualMachine { + return { + id: item["id"], + ports: jitNetworkAccessRequestPortArrayDeserializer(item["ports"]), + }; +} + +export function jitNetworkAccessRequestPortArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestPortSerializer(item); + }); +} + +export function jitNetworkAccessRequestPortArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessRequestPortDeserializer(item); + }); +} + +/** model interface 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 */ + status: Status; + /** A description of why the `status` has its value */ + statusReason: StatusReason; + /** The port which is mapped to this port's `number` in the Azure Firewall, if applicable */ + mappedPort?: number; +} + +export function jitNetworkAccessRequestPortSerializer(item: JitNetworkAccessRequestPort): any { + return { + number: item["number"], + allowedSourceAddressPrefix: item["allowedSourceAddressPrefix"], + allowedSourceAddressPrefixes: !item["allowedSourceAddressPrefixes"] + ? item["allowedSourceAddressPrefixes"] + : item["allowedSourceAddressPrefixes"].map((p: any) => { + return p; + }), + endTimeUtc: item["endTimeUtc"].toISOString(), + status: item["status"], + statusReason: item["statusReason"], + mappedPort: item["mappedPort"], + }; +} + +export function jitNetworkAccessRequestPortDeserializer(item: any): JitNetworkAccessRequestPort { + return { + number: item["number"], + allowedSourceAddressPrefix: item["allowedSourceAddressPrefix"], + allowedSourceAddressPrefixes: !item["allowedSourceAddressPrefixes"] + ? item["allowedSourceAddressPrefixes"] + : item["allowedSourceAddressPrefixes"].map((p: any) => { + return p; + }), + endTimeUtc: new Date(item["endTimeUtc"]), + status: item["status"], + statusReason: item["statusReason"], + mappedPort: item["mappedPort"], + }; +} + +/** The status of the port */ +export enum KnownStatus { + /** Revoked */ + Revoked = "Revoked", + /** Initiated */ + Initiated = "Initiated", +} + +/** + * The status of the port \ + * {@link KnownStatus} can be used interchangeably with Status, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Revoked**: Revoked \ + * **Initiated**: Initiated + */ +export type Status = string; + +/** A description of why the `status` has its value */ +export enum KnownStatusReason { + /** Expired */ + Expired = "Expired", + /** UserRequested */ + UserRequested = "UserRequested", + /** NewerRequestInitiated */ + NewerRequestInitiated = "NewerRequestInitiated", +} + +/** + * A description of why the `status` has its value \ + * {@link KnownStatusReason} can be used interchangeably with StatusReason, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Expired**: Expired \ + * **UserRequested**: UserRequested \ + * **NewerRequestInitiated**: NewerRequestInitiated + */ +export type StatusReason = string; + +/** model interface _JitNetworkAccessPoliciesList */ +export interface _JitNetworkAccessPoliciesList { + value?: JitNetworkAccessPolicy[]; + readonly nextLink?: string; +} + +export function _jitNetworkAccessPoliciesListDeserializer( + item: any, +): _JitNetworkAccessPoliciesList { + return { + value: !item["value"] ? item["value"] : jitNetworkAccessPolicyArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function jitNetworkAccessPolicyArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicySerializer(item); + }); +} + +export function jitNetworkAccessPolicyArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicyDeserializer(item); + }); +} + +/** model interface 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; +} + +export function jitNetworkAccessPolicyInitiateRequestSerializer( + item: JitNetworkAccessPolicyInitiateRequest, +): any { + return { + virtualMachines: jitNetworkAccessPolicyInitiateVirtualMachineArraySerializer( + item["virtualMachines"], + ), + justification: item["justification"], + }; +} + +export function jitNetworkAccessPolicyInitiateVirtualMachineArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicyInitiateVirtualMachineSerializer(item); + }); +} + +/** model interface 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[]; +} + +export function jitNetworkAccessPolicyInitiateVirtualMachineSerializer( + item: JitNetworkAccessPolicyInitiateVirtualMachine, +): any { + return { + id: item["id"], + ports: jitNetworkAccessPolicyInitiatePortArraySerializer(item["ports"]), + }; +} + +export function jitNetworkAccessPolicyInitiatePortArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return jitNetworkAccessPolicyInitiatePortSerializer(item); + }); +} + +/** model interface 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; +} + +export function jitNetworkAccessPolicyInitiatePortSerializer( + item: JitNetworkAccessPolicyInitiatePort, +): any { + return { + number: item["number"], + allowedSourceAddressPrefix: item["allowedSourceAddressPrefix"], + endTimeUtc: item["endTimeUtc"].toISOString(), + }; +} + +/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */ +export interface SecuritySolution extends ProxyResource { + /** Location where the resource is stored */ + readonly location: string; + /** The security family of the security solution */ + securityFamily?: SecurityFamily; + /** The security family provisioning State */ + provisioningState?: ProvisioningState; + /** The security solutions' template */ + template?: string; + /** The security solutions' status */ + protectionStatus?: string; +} + +export function securitySolutionDeserializer(item: any): SecuritySolution { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securitySolutionPropertiesDeserializer(item["properties"])), + location: item["location"], + }; +} + +/** model interface SecuritySolutionProperties */ +export interface SecuritySolutionProperties { + /** The security family of the security solution */ + securityFamily: SecurityFamily; + /** The security family provisioning State */ + provisioningState: ProvisioningState; + /** The security solutions' template */ + template: string; + /** The security solutions' status */ + protectionStatus: string; +} + +export function securitySolutionPropertiesDeserializer(item: any): SecuritySolutionProperties { + return { + securityFamily: item["securityFamily"], + provisioningState: item["provisioningState"], + template: item["template"], + protectionStatus: item["protectionStatus"], + }; +} + +/** model interface _SecuritySolutionList */ +export interface _SecuritySolutionList { + value?: SecuritySolution[]; + readonly nextLink?: string; +} + +export function _securitySolutionListDeserializer(item: any): _SecuritySolutionList { + return { + value: !item["value"] ? item["value"] : securitySolutionArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securitySolutionArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return securitySolutionDeserializer(item); + }); +} + +/** The resource whose properties describes the allowed traffic between Azure resources */ +export interface AllowedConnectionsResource extends ProxyResource { + /** Location where the resource is stored */ + readonly location: string; + /** The UTC time on which the allowed connections resource was calculated */ + readonly calculatedDateTime?: Date; + /** List of connectable resources */ + readonly connectableResources?: ConnectableResource[]; +} + +export function allowedConnectionsResourceDeserializer(item: any): AllowedConnectionsResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _allowedConnectionsResourcePropertiesDeserializer(item["properties"])), + location: item["location"], + }; +} + +/** Describes the allowed traffic between Azure resources */ +export interface AllowedConnectionsResourceProperties { + /** The UTC time on which the allowed connections resource was calculated */ + readonly calculatedDateTime?: Date; + /** List of connectable resources */ + readonly connectableResources?: ConnectableResource[]; +} + +export function allowedConnectionsResourcePropertiesDeserializer( + item: any, +): AllowedConnectionsResourceProperties { + return { + calculatedDateTime: !item["calculatedDateTime"] + ? item["calculatedDateTime"] + : new Date(item["calculatedDateTime"]), + connectableResources: !item["connectableResources"] + ? item["connectableResources"] + : connectableResourceArrayDeserializer(item["connectableResources"]), + }; +} + +export function connectableResourceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return connectableResourceDeserializer(item); + }); +} + +/** Describes the allowed inbound and outbound traffic of an Azure resource */ +export interface ConnectableResource { + /** The Azure resource id */ + readonly id?: string; + /** The list of Azure resources that the resource has inbound allowed connection from */ + readonly inboundConnectedResources?: ConnectedResource[]; + /** The list of Azure resources that the resource has outbound allowed connection to */ + readonly outboundConnectedResources?: ConnectedResource[]; +} + +export function connectableResourceDeserializer(item: any): ConnectableResource { + return { + id: item["id"], + inboundConnectedResources: !item["inboundConnectedResources"] + ? item["inboundConnectedResources"] + : connectedResourceArrayDeserializer(item["inboundConnectedResources"]), + outboundConnectedResources: !item["outboundConnectedResources"] + ? item["outboundConnectedResources"] + : connectedResourceArrayDeserializer(item["outboundConnectedResources"]), + }; +} + +export function connectedResourceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return connectedResourceDeserializer(item); + }); +} + +/** Describes properties of a connected resource */ +export interface ConnectedResource { + /** The Azure resource id of the connected resource */ + readonly connectedResourceId?: string; + /** The allowed tcp ports */ + readonly tcpPorts?: string; + /** The allowed udp ports */ + readonly udpPorts?: string; +} + +export function connectedResourceDeserializer(item: any): ConnectedResource { + return { + connectedResourceId: item["connectedResourceId"], + tcpPorts: item["tcpPorts"], + udpPorts: item["udpPorts"], + }; +} + +/** Known values of {@link ConnectionType} that the service accepts. */ +export enum KnownConnectionType { + /** Internal */ + Internal = "Internal", + /** External */ + External = "External", +} + +/** Type of ConnectionType */ +export type ConnectionType = string; + +/** List of all possible traffic between Azure resources */ +export interface _AllowedConnectionsList { + readonly value?: AllowedConnectionsResource[]; + /** The URI to fetch the next page. */ + readonly nextLink?: string; +} + +export function _allowedConnectionsListDeserializer(item: any): _AllowedConnectionsList { + return { + value: !item["value"] + ? item["value"] + : allowedConnectionsResourceArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function allowedConnectionsResourceArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return allowedConnectionsResourceDeserializer(item); + }); +} + +/** Describes the server vulnerability assessment details on a resource */ +export interface ServerVulnerabilityAssessment extends ProxyResource { + /** The provisioningState of the vulnerability assessment capability on the VM */ + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; +} + +export function serverVulnerabilityAssessmentDeserializer( + item: any, +): ServerVulnerabilityAssessment { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _serverVulnerabilityAssessmentPropertiesDeserializer(item["properties"])), + }; +} + +/** describes ServerVulnerabilityAssessment properties. */ +export interface ServerVulnerabilityAssessmentProperties { + /** The provisioningState of the vulnerability assessment capability on the VM */ + readonly provisioningState?: ServerVulnerabilityAssessmentPropertiesProvisioningState; +} + +export function serverVulnerabilityAssessmentPropertiesDeserializer( + item: any, +): ServerVulnerabilityAssessmentProperties { + return { + provisioningState: item["provisioningState"], + }; +} + +/** The provisioningState of the vulnerability assessment capability on the VM */ +export enum KnownServerVulnerabilityAssessmentPropertiesProvisioningState { + /** Succeeded */ + Succeeded = "Succeeded", + /** Failed */ + Failed = "Failed", + /** Canceled */ + Canceled = "Canceled", + /** Provisioning */ + Provisioning = "Provisioning", + /** Deprovisioning */ + Deprovisioning = "Deprovisioning", +} + +/** + * The provisioningState of the vulnerability assessment capability on the VM \ + * {@link KnownServerVulnerabilityAssessmentPropertiesProvisioningState} can be used interchangeably with ServerVulnerabilityAssessmentPropertiesProvisioningState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Succeeded**: Succeeded \ + * **Failed**: Failed \ + * **Canceled**: Canceled \ + * **Provisioning**: Provisioning \ + * **Deprovisioning**: Deprovisioning + */ +export type ServerVulnerabilityAssessmentPropertiesProvisioningState = string; + +/** List of server vulnerability assessments */ +export interface ServerVulnerabilityAssessmentsList { + value?: ServerVulnerabilityAssessment[]; +} + +export function serverVulnerabilityAssessmentsListDeserializer( + item: any, +): ServerVulnerabilityAssessmentsList { + return { + value: !item["value"] + ? item["value"] + : serverVulnerabilityAssessmentArrayDeserializer(item["value"]), + }; +} + +export function serverVulnerabilityAssessmentArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return serverVulnerabilityAssessmentDeserializer(item); + }); +} + +/** Concrete proxy resource types can be created by aliasing this type using a specific property type. */ +export interface TopologyResource extends ProxyResource { + /** Location where the resource is stored */ + readonly location: string; + /** The UTC time on which the topology was calculated */ + readonly calculatedDateTime?: Date; + /** Azure resources which are part of this topology resource */ + readonly topologyResources?: TopologySingleResource[]; +} + +export function topologyResourceDeserializer(item: any): TopologyResource { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _topologyResourcePropertiesDeserializer(item["properties"])), + location: item["location"], + }; +} + +/** model interface TopologyResourceProperties */ +export interface TopologyResourceProperties { + /** The UTC time on which the topology was calculated */ + readonly calculatedDateTime?: Date; + /** Azure resources which are part of this topology resource */ + readonly topologyResources?: TopologySingleResource[]; +} + +export function topologyResourcePropertiesDeserializer(item: any): TopologyResourceProperties { + return { + calculatedDateTime: !item["calculatedDateTime"] + ? item["calculatedDateTime"] + : new Date(item["calculatedDateTime"]), + topologyResources: !item["topologyResources"] + ? item["topologyResources"] + : topologySingleResourceArrayDeserializer(item["topologyResources"]), + }; +} + +export function topologySingleResourceArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return topologySingleResourceDeserializer(item); + }); +} + +/** model interface TopologySingleResource */ +export interface TopologySingleResource { + /** Azure resource id */ + readonly resourceId?: string; + /** The security severity of the resource */ + readonly severity?: string; + /** Indicates if the resource has security recommendations */ + readonly recommendationsExist?: boolean; + /** Indicates the resource connectivity level to the Internet (InternetFacing, Internal ,etc.) */ + readonly networkZones?: string; + /** Score of the resource based on its security severity */ + readonly topologyScore?: number; + /** The location of this resource */ + readonly location?: string; + /** Azure resources connected to this resource which are in higher level in the topology view */ + readonly parents?: TopologySingleResourceParent[]; + /** Azure resources connected to this resource which are in lower level in the topology view */ + readonly children?: TopologySingleResourceChild[]; +} + +export function topologySingleResourceDeserializer(item: any): TopologySingleResource { + return { + resourceId: item["resourceId"], + severity: item["severity"], + recommendationsExist: item["recommendationsExist"], + networkZones: item["networkZones"], + topologyScore: item["topologyScore"], + location: item["location"], + parents: !item["parents"] + ? item["parents"] + : topologySingleResourceParentArrayDeserializer(item["parents"]), + children: !item["children"] + ? item["children"] + : topologySingleResourceChildArrayDeserializer(item["children"]), + }; +} + +export function topologySingleResourceParentArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return topologySingleResourceParentDeserializer(item); + }); +} + +/** model interface TopologySingleResourceParent */ +export interface TopologySingleResourceParent { + /** Azure resource id which serves as parent resource in topology view */ + readonly resourceId?: string; +} + +export function topologySingleResourceParentDeserializer(item: any): TopologySingleResourceParent { + return { + resourceId: item["resourceId"], + }; +} + +export function topologySingleResourceChildArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return topologySingleResourceChildDeserializer(item); + }); +} + +/** model interface TopologySingleResourceChild */ +export interface TopologySingleResourceChild { + /** Azure resource id which serves as child resource in topology view */ + readonly resourceId?: string; +} + +export function topologySingleResourceChildDeserializer(item: any): TopologySingleResourceChild { + return { + resourceId: item["resourceId"], + }; +} + +/** model interface _TopologyList */ +export interface _TopologyList { + readonly value?: TopologyResource[]; + readonly nextLink?: string; +} + +export function _topologyListDeserializer(item: any): _TopologyList { + return { + value: !item["value"] ? item["value"] : topologyResourceArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function topologyResourceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return topologyResourceDeserializer(item); + }); +} + +/** model interface SecuritySolutionsReferenceDataList */ +export interface SecuritySolutionsReferenceDataList { + value?: SecuritySolutionsReferenceData[]; +} + +export function securitySolutionsReferenceDataListDeserializer( + item: any, +): SecuritySolutionsReferenceDataList { + return { + value: !item["value"] + ? item["value"] + : securitySolutionsReferenceDataArrayDeserializer(item["value"]), + }; +} + +export function securitySolutionsReferenceDataArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return securitySolutionsReferenceDataDeserializer(item); + }); +} + +/** model interface SecuritySolutionsReferenceData */ +export interface SecuritySolutionsReferenceData { + /** Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} */ + readonly id?: string; + /** The name of the resource */ + readonly name?: string; + /** The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts" */ + readonly type?: string; + /** Azure Resource Manager metadata containing createdBy and modifiedBy information. */ + readonly systemData?: SystemData; + /** Location where the resource is stored */ + readonly location?: string; + /** The security family of the security solution */ + securityFamily: SecurityFamily; + /** The security solutions' vendor name */ + alertVendorName: string; + /** The security solutions' package info url */ + packageInfoUrl: string; + /** The security solutions' product name */ + productName: string; + /** The security solutions' publisher */ + publisher: string; + /** The security solutions' publisher display name */ + publisherDisplayName: string; + /** The security solutions' template */ + template: string; +} + +export function securitySolutionsReferenceDataDeserializer( + item: any, +): SecuritySolutionsReferenceData { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + location: item["location"], + ..._securitySolutionsReferenceDataPropertiesDeserializer(item["properties"]), + }; +} + +/** model interface SecuritySolutionsReferenceDataProperties */ +export interface SecuritySolutionsReferenceDataProperties { + /** The security family of the security solution */ + securityFamily: SecurityFamily; + /** The security solutions' vendor name */ + alertVendorName: string; + /** The security solutions' package info url */ + packageInfoUrl: string; + /** The security solutions' product name */ + productName: string; + /** The security solutions' publisher */ + publisher: string; + /** The security solutions' publisher display name */ + publisherDisplayName: string; + /** The security solutions' template */ + template: string; +} + +export function securitySolutionsReferenceDataPropertiesDeserializer( + item: any, +): SecuritySolutionsReferenceDataProperties { + return { + securityFamily: item["securityFamily"], + alertVendorName: item["alertVendorName"], + packageInfoUrl: item["packageInfoUrl"], + productName: item["productName"], + publisher: item["publisher"], + publisherDisplayName: item["publisherDisplayName"], + template: item["template"], + }; +} + +export function _discoveredSecuritySolutionPropertiesDeserializer(item: any) { + return { + securityFamily: item["securityFamily"], + offer: item["offer"], + publisher: item["publisher"], + sku: item["sku"], + }; +} + +export function _jitNetworkAccessPolicyPropertiesSerializer(item: JitNetworkAccessPolicy): any { + return { + virtualMachines: jitNetworkAccessPolicyVirtualMachineArraySerializer(item["virtualMachines"]), + requests: !item["requests"] + ? item["requests"] + : jitNetworkAccessRequestArraySerializer(item["requests"]), + }; +} + +export function _jitNetworkAccessPolicyPropertiesDeserializer(item: any) { + return { + virtualMachines: jitNetworkAccessPolicyVirtualMachineArrayDeserializer(item["virtualMachines"]), + requests: !item["requests"] + ? item["requests"] + : jitNetworkAccessRequestArrayDeserializer(item["requests"]), + provisioningState: item["provisioningState"], + }; +} + +export function _securitySolutionPropertiesDeserializer(item: any) { + return { + securityFamily: item["securityFamily"], + provisioningState: item["provisioningState"], + template: item["template"], + protectionStatus: item["protectionStatus"], + }; +} + +export function _allowedConnectionsResourcePropertiesDeserializer(item: any) { + return { + calculatedDateTime: !item["calculatedDateTime"] + ? item["calculatedDateTime"] + : new Date(item["calculatedDateTime"]), + connectableResources: !item["connectableResources"] + ? item["connectableResources"] + : connectableResourceArrayDeserializer(item["connectableResources"]), + }; +} + +export function _serverVulnerabilityAssessmentPropertiesDeserializer(item: any) { + return { + provisioningState: item["provisioningState"], + }; +} + +export function _topologyResourcePropertiesDeserializer(item: any) { + return { + calculatedDateTime: !item["calculatedDateTime"] + ? item["calculatedDateTime"] + : new Date(item["calculatedDateTime"]), + topologyResources: !item["topologyResources"] + ? item["topologyResources"] + : topologySingleResourceArrayDeserializer(item["topologyResources"]), + }; +} + +export function _securitySolutionsReferenceDataPropertiesDeserializer(item: any) { + return { + securityFamily: item["securityFamily"], + alertVendorName: item["alertVendorName"], + packageInfoUrl: item["packageInfoUrl"], + productName: item["productName"], + publisher: item["publisher"], + publisherDisplayName: item["publisherDisplayName"], + template: item["template"], + }; +} diff --git a/sdk/security/arm-security/src/models/securityStandardsAPI/index.ts b/sdk/security/arm-security/src/models/securityStandardsAPI/index.ts new file mode 100644 index 000000000000..644c6587307c --- /dev/null +++ b/sdk/security/arm-security/src/models/securityStandardsAPI/index.ts @@ -0,0 +1,36 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + SecurityStandard, + SecurityStandardProperties, + StandardType, + PartialAssessmentProperties, + StandardSupportedCloud, + StandardMetadata, + StandardAssignment, + StandardAssignmentProperties, + Effect, + StandardAssignmentPropertiesExemptionData, + ExemptionCategory, + AssignedAssessmentItem, + StandardAssignmentPropertiesAttestationData, + AttestationComplianceState, + AttestationEvidence, + StandardAssignmentMetadata, + CustomRecommendation, + CustomRecommendationProperties, + RecommendationSupportedClouds, + SeverityEnum, + SecurityIssue, +} from "./models.js"; +export { + KnownStandardType, + KnownStandardSupportedCloud, + KnownEffect, + KnownExemptionCategory, + KnownAttestationComplianceState, + KnownRecommendationSupportedClouds, + KnownSeverityEnum, + KnownSecurityIssue, +} from "./models.js"; diff --git a/sdk/security/arm-security/src/models/securityStandardsAPI/models.ts b/sdk/security/arm-security/src/models/securityStandardsAPI/models.ts new file mode 100644 index 000000000000..b45107681bd0 --- /dev/null +++ b/sdk/security/arm-security/src/models/securityStandardsAPI/models.ts @@ -0,0 +1,928 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { areAllPropsUndefined } from "../../static-helpers/serialization/check-prop-undefined.js"; +import { + AssignedStandardItem, + assignedStandardItemSerializer, + assignedStandardItemDeserializer, +} from "../common/models.js"; +import { systemDataDeserializer, ExtensionResource } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Security Standard on a resource */ +export interface SecurityStandard extends ExtensionResource { + /** Display name of the standard, equivalent to the standardId */ + displayName?: string; + /** Standard type (Custom or Default or Compliance only currently) */ + readonly standardType?: StandardType; + /** Description of the standard */ + description?: string; + /** List of assessment keys to apply to standard scope. */ + assessments?: PartialAssessmentProperties[]; + /** List of all standard supported clouds. */ + cloudProviders?: StandardSupportedCloud[]; + /** The policy set definition id associated with the standard. */ + policySetDefinitionId?: string; + /** The security standard metadata. */ + metadata?: StandardMetadata; +} + +export function securityStandardSerializer(item: SecurityStandard): any { + return { + properties: areAllPropsUndefined(item, [ + "displayName", + "description", + "assessments", + "cloudProviders", + "policySetDefinitionId", + "metadata", + ]) + ? undefined + : _securityStandardPropertiesSerializer(item), + }; +} + +export function securityStandardDeserializer(item: any): SecurityStandard { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _securityStandardPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes properties of a standard. */ +export interface SecurityStandardProperties { + /** Display name of the standard, equivalent to the standardId */ + displayName?: string; + /** Standard type (Custom or Default or Compliance only currently) */ + readonly standardType?: StandardType; + /** Description of the standard */ + description?: string; + /** List of assessment keys to apply to standard scope. */ + assessments?: PartialAssessmentProperties[]; + /** List of all standard supported clouds. */ + cloudProviders?: StandardSupportedCloud[]; + /** The policy set definition id associated with the standard. */ + policySetDefinitionId?: string; + /** The security standard metadata. */ + metadata?: StandardMetadata; +} + +export function securityStandardPropertiesSerializer(item: SecurityStandardProperties): any { + return { + displayName: item["displayName"], + description: item["description"], + assessments: !item["assessments"] + ? item["assessments"] + : partialAssessmentPropertiesArraySerializer(item["assessments"]), + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + policySetDefinitionId: item["policySetDefinitionId"], + metadata: !item["metadata"] ? item["metadata"] : standardMetadataSerializer(item["metadata"]), + }; +} + +export function securityStandardPropertiesDeserializer(item: any): SecurityStandardProperties { + return { + displayName: item["displayName"], + standardType: item["standardType"], + description: item["description"], + assessments: !item["assessments"] + ? item["assessments"] + : partialAssessmentPropertiesArrayDeserializer(item["assessments"]), + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + policySetDefinitionId: item["policySetDefinitionId"], + metadata: !item["metadata"] ? item["metadata"] : standardMetadataDeserializer(item["metadata"]), + }; +} + +/** Standard type (Custom or Default or Compliance only currently) */ +export enum KnownStandardType { + /** Custom */ + Custom = "Custom", + /** Default */ + Default = "Default", + /** Compliance */ + Compliance = "Compliance", +} + +/** + * Standard type (Custom or Default or Compliance only currently) \ + * {@link KnownStandardType} can be used interchangeably with StandardType, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Custom**: Custom \ + * **Default**: Default \ + * **Compliance**: Compliance + */ +export type StandardType = string; + +export function partialAssessmentPropertiesArraySerializer( + result: Array, +): any[] { + return result.map((item) => { + return partialAssessmentPropertiesSerializer(item); + }); +} + +export function partialAssessmentPropertiesArrayDeserializer( + result: Array, +): any[] { + return result.map((item) => { + return partialAssessmentPropertiesDeserializer(item); + }); +} + +/** Describes properties of an assessment as related to the standard */ +export interface PartialAssessmentProperties { + /** The assessment key */ + assessmentKey?: string; +} + +export function partialAssessmentPropertiesSerializer(item: PartialAssessmentProperties): any { + return { assessmentKey: item["assessmentKey"] }; +} + +export function partialAssessmentPropertiesDeserializer(item: any): PartialAssessmentProperties { + return { + assessmentKey: item["assessmentKey"], + }; +} + +/** The cloud that the standard is supported on. */ +export enum KnownStandardSupportedCloud { + /** Azure */ + Azure = "Azure", + /** AWS */ + AWS = "AWS", + /** GCP */ + GCP = "GCP", +} + +/** + * The cloud that the standard is supported on. \ + * {@link KnownStandardSupportedCloud} can be used interchangeably with StandardSupportedCloud, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Azure**: Azure \ + * **AWS**: AWS \ + * **GCP**: GCP + */ +export type StandardSupportedCloud = string; + +/** The standard metadata */ +export interface StandardMetadata { + /** Standard Created by object id (GUID) */ + readonly createdBy?: string; + /** Standard creation date */ + readonly createdOn?: Date; + /** Standard last updated by object id (GUID) */ + readonly lastUpdatedBy?: string; + /** Standard last update date */ + readonly lastUpdatedOn?: Date; +} + +export function standardMetadataSerializer(_item: StandardMetadata): any { + return {}; +} + +export function standardMetadataDeserializer(item: any): StandardMetadata { + return { + createdBy: item["createdBy"], + createdOn: !item["createdOn"] ? item["createdOn"] : new Date(item["createdOn"]), + lastUpdatedBy: item["lastUpdatedBy"], + lastUpdatedOn: !item["lastUpdatedOn"] ? item["lastUpdatedOn"] : new Date(item["lastUpdatedOn"]), + }; +} + +/** Page of a Standard list */ +export interface _SecurityStandardList { + /** Collection of standards in this page */ + readonly value: SecurityStandard[]; + /** The URI to fetch the next page */ + readonly nextLink?: string; +} + +export function _securityStandardListDeserializer(item: any): _SecurityStandardList { + return { + value: securityStandardArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function securityStandardArraySerializer(result: Array): any[] { + return result.map((item) => { + return securityStandardSerializer(item); + }); +} + +export function securityStandardArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return securityStandardDeserializer(item); + }); +} + +/** Security Assignment on a resource group over a given scope */ +export interface StandardAssignment extends ExtensionResource { + /** Display name of the standardAssignment */ + displayName?: string; + /** Description of the standardAssignment */ + description?: string; + /** Standard item with key as applied to this standard assignment over the given scope */ + assignedStandard?: AssignedStandardItem; + /** Expected effect of this assignment (Audit/Exempt/Attest) */ + effect?: Effect; + /** Excluded scopes, filter out the descendants of the scope (on management scopes) */ + excludedScopes?: string[]; + /** Expiration date of this assignment as a full ISO date */ + expiresOn?: Date; + /** Additional data about assignment that has Exempt effect */ + exemptionData?: StandardAssignmentPropertiesExemptionData; + /** Additional data about assignment that has Attest effect */ + attestationData?: StandardAssignmentPropertiesAttestationData; + /** The standard assignment metadata. */ + metadata?: StandardAssignmentMetadata; +} + +export function standardAssignmentSerializer(item: StandardAssignment): any { + return { + properties: areAllPropsUndefined(item, [ + "displayName", + "description", + "assignedStandard", + "effect", + "excludedScopes", + "expiresOn", + "exemptionData", + "attestationData", + "metadata", + ]) + ? undefined + : _standardAssignmentPropertiesSerializer(item), + }; +} + +export function standardAssignmentDeserializer(item: any): StandardAssignment { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _standardAssignmentPropertiesDeserializer(item["properties"])), + }; +} + +/** Describes the properties of a standardAssignment */ +export interface StandardAssignmentProperties { + /** Display name of the standardAssignment */ + displayName?: string; + /** Description of the standardAssignment */ + description?: string; + /** Standard item with key as applied to this standard assignment over the given scope */ + assignedStandard?: AssignedStandardItem; + /** Expected effect of this assignment (Audit/Exempt/Attest) */ + effect?: Effect; + /** Excluded scopes, filter out the descendants of the scope (on management scopes) */ + excludedScopes?: string[]; + /** Expiration date of this assignment as a full ISO date */ + expiresOn?: Date; + /** Additional data about assignment that has Exempt effect */ + exemptionData?: StandardAssignmentPropertiesExemptionData; + /** Additional data about assignment that has Attest effect */ + attestationData?: StandardAssignmentPropertiesAttestationData; + /** The standard assignment metadata. */ + metadata?: StandardAssignmentMetadata; +} + +export function standardAssignmentPropertiesSerializer(item: StandardAssignmentProperties): any { + return { + displayName: item["displayName"], + description: item["description"], + assignedStandard: !item["assignedStandard"] + ? item["assignedStandard"] + : assignedStandardItemSerializer(item["assignedStandard"]), + effect: item["effect"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + expiresOn: !item["expiresOn"] ? item["expiresOn"] : item["expiresOn"].toISOString(), + exemptionData: !item["exemptionData"] + ? item["exemptionData"] + : standardAssignmentPropertiesExemptionDataSerializer(item["exemptionData"]), + attestationData: !item["attestationData"] + ? item["attestationData"] + : standardAssignmentPropertiesAttestationDataSerializer(item["attestationData"]), + metadata: !item["metadata"] + ? item["metadata"] + : standardAssignmentMetadataSerializer(item["metadata"]), + }; +} + +export function standardAssignmentPropertiesDeserializer(item: any): StandardAssignmentProperties { + return { + displayName: item["displayName"], + description: item["description"], + assignedStandard: !item["assignedStandard"] + ? item["assignedStandard"] + : assignedStandardItemDeserializer(item["assignedStandard"]), + effect: item["effect"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + expiresOn: !item["expiresOn"] ? item["expiresOn"] : new Date(item["expiresOn"]), + exemptionData: !item["exemptionData"] + ? item["exemptionData"] + : standardAssignmentPropertiesExemptionDataDeserializer(item["exemptionData"]), + attestationData: !item["attestationData"] + ? item["attestationData"] + : standardAssignmentPropertiesAttestationDataDeserializer(item["attestationData"]), + metadata: !item["metadata"] + ? item["metadata"] + : standardAssignmentMetadataDeserializer(item["metadata"]), + }; +} + +/** Expected effect of this assignment (Audit/Exempt/Attest) */ +export enum KnownEffect { + /** Audit */ + Audit = "Audit", + /** Exempt */ + Exempt = "Exempt", + /** Attest */ + Attest = "Attest", +} + +/** + * Expected effect of this assignment (Audit/Exempt/Attest) \ + * {@link KnownEffect} can be used interchangeably with Effect, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Audit**: Audit \ + * **Exempt**: Exempt \ + * **Attest**: Attest + */ +export type Effect = string; + +/** Additional data about assignment that has Exempt effect */ +export interface StandardAssignmentPropertiesExemptionData { + /** Exemption category of this assignment */ + exemptionCategory?: ExemptionCategory; + /** Component item with key as applied to this standard assignment over the given scope */ + assignedAssessment?: AssignedAssessmentItem; +} + +export function standardAssignmentPropertiesExemptionDataSerializer( + item: StandardAssignmentPropertiesExemptionData, +): any { + return { + exemptionCategory: item["exemptionCategory"], + assignedAssessment: !item["assignedAssessment"] + ? item["assignedAssessment"] + : assignedAssessmentItemSerializer(item["assignedAssessment"]), + }; +} + +export function standardAssignmentPropertiesExemptionDataDeserializer( + item: any, +): StandardAssignmentPropertiesExemptionData { + return { + exemptionCategory: item["exemptionCategory"], + assignedAssessment: !item["assignedAssessment"] + ? item["assignedAssessment"] + : assignedAssessmentItemDeserializer(item["assignedAssessment"]), + }; +} + +/** Exemption category of this assignment */ +export enum KnownExemptionCategory { + /** waiver */ + Waiver = "waiver", + /** mitigated */ + Mitigated = "mitigated", +} + +/** + * Exemption category of this assignment \ + * {@link KnownExemptionCategory} can be used interchangeably with ExemptionCategory, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **waiver**: waiver \ + * **mitigated**: mitigated + */ +export type ExemptionCategory = string; + +/** Describe the properties of a security assessment object reference (by key) */ +export interface AssignedAssessmentItem { + /** Unique key to a security assessment object */ + assessmentKey?: string; +} + +export function assignedAssessmentItemSerializer(item: AssignedAssessmentItem): any { + return { assessmentKey: item["assessmentKey"] }; +} + +export function assignedAssessmentItemDeserializer(item: any): AssignedAssessmentItem { + return { + assessmentKey: item["assessmentKey"], + }; +} + +/** Additional data about assignment that has Attest effect */ +export interface StandardAssignmentPropertiesAttestationData { + /** Attest category of this assignment */ + complianceState?: AttestationComplianceState; + /** Component item with key as applied to this standard assignment over the given scope */ + assignedAssessment?: AssignedAssessmentItem; + /** Attestation compliance date */ + readonly complianceDate?: Date; + /** Array of links to attestation evidence */ + evidence?: AttestationEvidence[]; +} + +export function standardAssignmentPropertiesAttestationDataSerializer( + item: StandardAssignmentPropertiesAttestationData, +): any { + return { + complianceState: item["complianceState"], + assignedAssessment: !item["assignedAssessment"] + ? item["assignedAssessment"] + : assignedAssessmentItemSerializer(item["assignedAssessment"]), + evidence: !item["evidence"] + ? item["evidence"] + : attestationEvidenceArraySerializer(item["evidence"]), + }; +} + +export function standardAssignmentPropertiesAttestationDataDeserializer( + item: any, +): StandardAssignmentPropertiesAttestationData { + return { + complianceState: item["complianceState"], + assignedAssessment: !item["assignedAssessment"] + ? item["assignedAssessment"] + : assignedAssessmentItemDeserializer(item["assignedAssessment"]), + complianceDate: !item["complianceDate"] + ? item["complianceDate"] + : new Date(item["complianceDate"]), + evidence: !item["evidence"] + ? item["evidence"] + : attestationEvidenceArrayDeserializer(item["evidence"]), + }; +} + +/** Attest category of this assignment */ +export enum KnownAttestationComplianceState { + /** unknown */ + Unknown = "unknown", + /** compliant */ + Compliant = "compliant", + /** nonCompliant */ + NonCompliant = "nonCompliant", +} + +/** + * Attest category of this assignment \ + * {@link KnownAttestationComplianceState} can be used interchangeably with AttestationComplianceState, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **unknown**: unknown \ + * **compliant**: compliant \ + * **nonCompliant**: nonCompliant + */ +export type AttestationComplianceState = string; + +export function attestationEvidenceArraySerializer(result: Array): any[] { + return result.map((item) => { + return attestationEvidenceSerializer(item); + }); +} + +export function attestationEvidenceArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return attestationEvidenceDeserializer(item); + }); +} + +/** Describe the properties of a assignment attestation */ +export interface AttestationEvidence { + /** The description of the evidence */ + description?: string; + /** The source url of the evidence */ + sourceUrl?: string; +} + +export function attestationEvidenceSerializer(item: AttestationEvidence): any { + return { description: item["description"], sourceUrl: item["sourceUrl"] }; +} + +export function attestationEvidenceDeserializer(item: any): AttestationEvidence { + return { + description: item["description"], + sourceUrl: item["sourceUrl"], + }; +} + +/** The standard assignment metadata */ +export interface StandardAssignmentMetadata { + /** Standard assignment Created by object id (GUID) */ + readonly createdBy?: string; + /** Standard assignment creation date */ + readonly createdOn?: Date; + /** Standard assignment last updated by object id (GUID) */ + readonly lastUpdatedBy?: string; + /** Standard assignment last update date */ + readonly lastUpdatedOn?: Date; +} + +export function standardAssignmentMetadataSerializer(_item: StandardAssignmentMetadata): any { + return {}; +} + +export function standardAssignmentMetadataDeserializer(item: any): StandardAssignmentMetadata { + return { + createdBy: item["createdBy"], + createdOn: !item["createdOn"] ? item["createdOn"] : new Date(item["createdOn"]), + lastUpdatedBy: item["lastUpdatedBy"], + lastUpdatedOn: !item["lastUpdatedOn"] ? item["lastUpdatedOn"] : new Date(item["lastUpdatedOn"]), + }; +} + +/** Page of a standard assignment list */ +export interface _StandardAssignmentsList { + /** Collection of standardAssignments in this page */ + readonly value: StandardAssignment[]; + /** The URI to fetch the next page */ + readonly nextLink?: string; +} + +export function _standardAssignmentsListDeserializer(item: any): _StandardAssignmentsList { + return { + value: standardAssignmentArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function standardAssignmentArraySerializer(result: Array): any[] { + return result.map((item) => { + return standardAssignmentSerializer(item); + }); +} + +export function standardAssignmentArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return standardAssignmentDeserializer(item); + }); +} + +/** Custom Recommendation */ +export interface CustomRecommendation extends ExtensionResource { + /** KQL query representing the Recommendation results required. */ + query?: string; + /** List of all standard supported clouds. */ + cloudProviders?: RecommendationSupportedClouds[]; + /** The severity to relate to the assessments generated by this Recommendation. */ + severity?: SeverityEnum; + /** The severity to relate to the assessments generated by this Recommendation. */ + securityIssue?: SecurityIssue; + /** The display name of the assessments generated by this Recommendation. */ + displayName?: string; + /** The description to relate to the assessments generated by this Recommendation. */ + description?: string; + /** The remediation description to relate to the assessments generated by this Recommendation. */ + remediationDescription?: string; + /** The assessment metadata key used when an assessment is generated for this Recommendation. */ + readonly assessmentKey?: string; +} + +export function customRecommendationSerializer(item: CustomRecommendation): any { + return { + properties: areAllPropsUndefined(item, [ + "query", + "cloudProviders", + "severity", + "securityIssue", + "displayName", + "description", + "remediationDescription", + ]) + ? undefined + : _customRecommendationPropertiesSerializer(item), + }; +} + +export function customRecommendationDeserializer(item: any): CustomRecommendation { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + ...(!item["properties"] + ? item["properties"] + : _customRecommendationPropertiesDeserializer(item["properties"])), + }; +} + +/** describes the Custom Recommendation properties */ +export interface CustomRecommendationProperties { + /** KQL query representing the Recommendation results required. */ + query?: string; + /** List of all standard supported clouds. */ + cloudProviders?: RecommendationSupportedClouds[]; + /** The severity to relate to the assessments generated by this Recommendation. */ + severity?: SeverityEnum; + /** The severity to relate to the assessments generated by this Recommendation. */ + securityIssue?: SecurityIssue; + /** The display name of the assessments generated by this Recommendation. */ + displayName?: string; + /** The description to relate to the assessments generated by this Recommendation. */ + description?: string; + /** The remediation description to relate to the assessments generated by this Recommendation. */ + remediationDescription?: string; + /** The assessment metadata key used when an assessment is generated for this Recommendation. */ + readonly assessmentKey?: string; +} + +export function customRecommendationPropertiesSerializer( + item: CustomRecommendationProperties, +): any { + return { + query: item["query"], + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + severity: item["severity"], + securityIssue: item["securityIssue"], + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + }; +} + +export function customRecommendationPropertiesDeserializer( + item: any, +): CustomRecommendationProperties { + return { + query: item["query"], + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + severity: item["severity"], + securityIssue: item["securityIssue"], + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + assessmentKey: item["assessmentKey"], + }; +} + +/** The cloud that the recommendation is supported on. */ +export enum KnownRecommendationSupportedClouds { + /** Azure */ + Azure = "Azure", + /** AWS */ + AWS = "AWS", + /** GCP */ + GCP = "GCP", +} + +/** + * The cloud that the recommendation is supported on. \ + * {@link KnownRecommendationSupportedClouds} can be used interchangeably with RecommendationSupportedClouds, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Azure**: Azure \ + * **AWS**: AWS \ + * **GCP**: GCP + */ +export type RecommendationSupportedClouds = string; + +/** The severity to relate to the assessments generated by this Recommendation. */ +export enum KnownSeverityEnum { + /** High */ + High = "High", + /** Medium */ + Medium = "Medium", + /** Low */ + Low = "Low", +} + +/** + * The severity to relate to the assessments generated by this Recommendation. \ + * {@link KnownSeverityEnum} can be used interchangeably with SeverityEnum, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **High**: High \ + * **Medium**: Medium \ + * **Low**: Low + */ +export type SeverityEnum = string; + +/** The severity to relate to the assessments generated by this Recommendation. */ +export enum KnownSecurityIssue { + /** Vulnerability */ + Vulnerability = "Vulnerability", + /** ExcessivePermissions */ + ExcessivePermissions = "ExcessivePermissions", + /** AnonymousAccess */ + AnonymousAccess = "AnonymousAccess", + /** NetworkExposure */ + NetworkExposure = "NetworkExposure", + /** TrafficEncryption */ + TrafficEncryption = "TrafficEncryption", + /** BestPractices */ + BestPractices = "BestPractices", +} + +/** + * The severity to relate to the assessments generated by this Recommendation. \ + * {@link KnownSecurityIssue} can be used interchangeably with SecurityIssue, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Vulnerability**: Vulnerability \ + * **ExcessivePermissions**: ExcessivePermissions \ + * **AnonymousAccess**: AnonymousAccess \ + * **NetworkExposure**: NetworkExposure \ + * **TrafficEncryption**: TrafficEncryption \ + * **BestPractices**: BestPractices + */ +export type SecurityIssue = string; + +/** A list of Custom Recommendations */ +export interface _CustomRecommendationsList { + /** Collection of Custom Recommendations */ + readonly value: CustomRecommendation[]; + /** The link used to get the next page of operations. */ + nextLink?: string; +} + +export function _customRecommendationsListDeserializer(item: any): _CustomRecommendationsList { + return { + value: customRecommendationArrayDeserializer(item["value"]), + nextLink: item["nextLink"], + }; +} + +export function customRecommendationArraySerializer(result: Array): any[] { + return result.map((item) => { + return customRecommendationSerializer(item); + }); +} + +export function customRecommendationArrayDeserializer(result: Array): any[] { + return result.map((item) => { + return customRecommendationDeserializer(item); + }); +} + +export function _securityStandardPropertiesSerializer(item: SecurityStandard): any { + return { + displayName: item["displayName"], + description: item["description"], + assessments: !item["assessments"] + ? item["assessments"] + : partialAssessmentPropertiesArraySerializer(item["assessments"]), + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + policySetDefinitionId: item["policySetDefinitionId"], + metadata: !item["metadata"] ? item["metadata"] : standardMetadataSerializer(item["metadata"]), + }; +} + +export function _securityStandardPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + standardType: item["standardType"], + description: item["description"], + assessments: !item["assessments"] + ? item["assessments"] + : partialAssessmentPropertiesArrayDeserializer(item["assessments"]), + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + policySetDefinitionId: item["policySetDefinitionId"], + metadata: !item["metadata"] ? item["metadata"] : standardMetadataDeserializer(item["metadata"]), + }; +} + +export function _standardAssignmentPropertiesSerializer(item: StandardAssignment): any { + return { + displayName: item["displayName"], + description: item["description"], + assignedStandard: !item["assignedStandard"] + ? item["assignedStandard"] + : assignedStandardItemSerializer(item["assignedStandard"]), + effect: item["effect"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + expiresOn: !item["expiresOn"] ? item["expiresOn"] : item["expiresOn"].toISOString(), + exemptionData: !item["exemptionData"] + ? item["exemptionData"] + : standardAssignmentPropertiesExemptionDataSerializer(item["exemptionData"]), + attestationData: !item["attestationData"] + ? item["attestationData"] + : standardAssignmentPropertiesAttestationDataSerializer(item["attestationData"]), + metadata: !item["metadata"] + ? item["metadata"] + : standardAssignmentMetadataSerializer(item["metadata"]), + }; +} + +export function _standardAssignmentPropertiesDeserializer(item: any) { + return { + displayName: item["displayName"], + description: item["description"], + assignedStandard: !item["assignedStandard"] + ? item["assignedStandard"] + : assignedStandardItemDeserializer(item["assignedStandard"]), + effect: item["effect"], + excludedScopes: !item["excludedScopes"] + ? item["excludedScopes"] + : item["excludedScopes"].map((p: any) => { + return p; + }), + expiresOn: !item["expiresOn"] ? item["expiresOn"] : new Date(item["expiresOn"]), + exemptionData: !item["exemptionData"] + ? item["exemptionData"] + : standardAssignmentPropertiesExemptionDataDeserializer(item["exemptionData"]), + attestationData: !item["attestationData"] + ? item["attestationData"] + : standardAssignmentPropertiesAttestationDataDeserializer(item["attestationData"]), + metadata: !item["metadata"] + ? item["metadata"] + : standardAssignmentMetadataDeserializer(item["metadata"]), + }; +} + +export function _customRecommendationPropertiesSerializer(item: CustomRecommendation): any { + return { + query: item["query"], + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + severity: item["severity"], + securityIssue: item["securityIssue"], + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + }; +} + +export function _customRecommendationPropertiesDeserializer(item: any) { + return { + query: item["query"], + cloudProviders: !item["cloudProviders"] + ? item["cloudProviders"] + : item["cloudProviders"].map((p: any) => { + return p; + }), + severity: item["severity"], + securityIssue: item["securityIssue"], + displayName: item["displayName"], + description: item["description"], + remediationDescription: item["remediationDescription"], + assessmentKey: item["assessmentKey"], + }; +} diff --git a/sdk/security/arm-security/src/models/sensitivitySettingsAPI/index.ts b/sdk/security/arm-security/src/models/sensitivitySettingsAPI/index.ts new file mode 100644 index 000000000000..7e1f792cb251 --- /dev/null +++ b/sdk/security/arm-security/src/models/sensitivitySettingsAPI/index.ts @@ -0,0 +1,15 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +export type { + GetSensitivitySettingsResponse, + GetSensitivitySettingsResponseProperties, + GetSensitivitySettingsResponsePropertiesMipInformation, + MipIntegrationStatus, + Label, + InfoType, + BuiltInInfoType, + UpdateSensitivitySettingsRequest, + GetSensitivitySettingsListResponse, +} from "./models.js"; +export { KnownMipIntegrationStatus } from "./models.js"; diff --git a/sdk/security/arm-security/src/models/sensitivitySettingsAPI/models.ts b/sdk/security/arm-security/src/models/sensitivitySettingsAPI/models.ts new file mode 100644 index 000000000000..c2eb3a498de4 --- /dev/null +++ b/sdk/security/arm-security/src/models/sensitivitySettingsAPI/models.ts @@ -0,0 +1,229 @@ +// Copyright (c) Microsoft Corporation. +// Licensed under the MIT License. + +import { ProxyResource, systemDataDeserializer } from "../models.js"; + +/** + * This file contains only generated model types and their (de)serializers. + * Disable the following rules for internal models with '_' prefix and deserializers which require 'any' for raw JSON input. + */ +/* eslint-disable @typescript-eslint/naming-convention */ +/* eslint-disable @typescript-eslint/explicit-module-boundary-types */ +/** Data sensitivity settings for sensitive data discovery */ +export interface GetSensitivitySettingsResponse extends ProxyResource { + /** The sensitivity settings properties */ + properties?: GetSensitivitySettingsResponseProperties; +} + +export function getSensitivitySettingsResponseDeserializer( + item: any, +): GetSensitivitySettingsResponse { + return { + id: item["id"], + name: item["name"], + type: item["type"], + systemData: !item["systemData"] + ? item["systemData"] + : systemDataDeserializer(item["systemData"]), + properties: !item["properties"] + ? item["properties"] + : getSensitivitySettingsResponsePropertiesDeserializer(item["properties"]), + }; +} + +/** The sensitivity settings properties */ +export interface GetSensitivitySettingsResponseProperties { + /** List of selected sensitive info types' IDs. */ + sensitiveInfoTypesIds?: string[]; + /** The order of the sensitivity threshold label. Any label at or above this order will be considered sensitive. If set to -1, sensitivity by labels is turned off */ + sensitivityThresholdLabelOrder?: number; + /** The id of the sensitivity threshold label. Any label at or above this rank will be considered sensitive. */ + sensitivityThresholdLabelId?: string; + /** Microsoft information protection built-in and custom information types, labels, and integration status. */ + mipInformation?: GetSensitivitySettingsResponsePropertiesMipInformation; +} + +export function getSensitivitySettingsResponsePropertiesDeserializer( + item: any, +): GetSensitivitySettingsResponseProperties { + return { + sensitiveInfoTypesIds: !item["sensitiveInfoTypesIds"] + ? item["sensitiveInfoTypesIds"] + : item["sensitiveInfoTypesIds"].map((p: any) => { + return p; + }), + sensitivityThresholdLabelOrder: item["sensitivityThresholdLabelOrder"], + sensitivityThresholdLabelId: item["sensitivityThresholdLabelId"], + mipInformation: !item["mipInformation"] + ? item["mipInformation"] + : getSensitivitySettingsResponsePropertiesMipInformationDeserializer(item["mipInformation"]), + }; +} + +/** Microsoft information protection built-in and custom information types, labels, and integration status. */ +export interface GetSensitivitySettingsResponsePropertiesMipInformation { + /** Microsoft information protection integration status */ + mipIntegrationStatus?: MipIntegrationStatus; + /** List of Microsoft information protection sensitivity labels */ + labels?: Label[]; + /** List of custom user-defined information types */ + customInfoTypes?: InfoType[]; + /** List of pre-configured sensitive information types */ + builtInInfoTypes?: BuiltInInfoType[]; +} + +export function getSensitivitySettingsResponsePropertiesMipInformationDeserializer( + item: any, +): GetSensitivitySettingsResponsePropertiesMipInformation { + return { + mipIntegrationStatus: item["mipIntegrationStatus"], + labels: !item["labels"] ? item["labels"] : labelArrayDeserializer(item["labels"]), + customInfoTypes: !item["customInfoTypes"] + ? item["customInfoTypes"] + : infoTypeArrayDeserializer(item["customInfoTypes"]), + builtInInfoTypes: !item["builtInInfoTypes"] + ? item["builtInInfoTypes"] + : builtInInfoTypeArrayDeserializer(item["builtInInfoTypes"]), + }; +} + +/** Microsoft information protection integration status */ +export enum KnownMipIntegrationStatus { + /** Ok */ + Ok = "Ok", + /** noConsent */ + NoConsent = "noConsent", + /** noAutoLabelingRules */ + NoAutoLabelingRules = "noAutoLabelingRules", + /** noMipLabels */ + NoMipLabels = "noMipLabels", +} + +/** + * Microsoft information protection integration status \ + * {@link KnownMipIntegrationStatus} can be used interchangeably with MipIntegrationStatus, + * this enum contains the known values that the service supports. + * ### Known values supported by the service + * **Ok**: Ok \ + * **noConsent**: noConsent \ + * **noAutoLabelingRules**: noAutoLabelingRules \ + * **noMipLabels**: noMipLabels + */ +export type MipIntegrationStatus = string; + +export function labelArrayDeserializer(result: Array