diff --git a/common/config/rush/pnpm-lock.yaml b/common/config/rush/pnpm-lock.yaml
index bca47feb5b5c..7f4011a1aa71 100644
--- a/common/config/rush/pnpm-lock.yaml
+++ b/common/config/rush/pnpm-lock.yaml
@@ -3807,7 +3807,7 @@ packages:
dependencies:
semver: 7.3.8
shelljs: 0.8.5
- typescript: 5.0.0-dev.20230128
+ typescript: 5.0.0-dev.20230130
dev: false
/downlevel-dts/0.7.0:
@@ -8653,8 +8653,8 @@ packages:
hasBin: true
dev: false
- /typescript/5.0.0-dev.20230128:
- resolution: {integrity: sha512-oos2fAiWy4+bCwSKXn56TsFz0vasZJ0uQR5FxXDUmi9y4+TDxUUZXpIVv3E6RKFz4ee0ndvMOwTjpnb2WE2gpw==}
+ /typescript/5.0.0-dev.20230130:
+ resolution: {integrity: sha512-4zmbh58Vt3HDAD0AvHr1ccmAkKKODriYMNajcSzUylVgXCXrNGTJOReMp54GBs67KfQFaLOpVZlLrlD2FKn9Kg==}
engines: {node: '>=4.2.0'}
hasBin: true
dev: false
@@ -14306,7 +14306,7 @@ packages:
dev: false
file:projects/arm-securityinsight.tgz:
- resolution: {integrity: sha512-d8udKrcyGW4OyfXv0psVKzVXVerBuD302uh5OHItbwtda6rWaVw7cyzSJKKnz2tAUeGy5UDqpWJoJ6Ai2ivexw==, tarball: file:projects/arm-securityinsight.tgz}
+ resolution: {integrity: sha512-rQhiJTl5w7atrsTjMkE5GK/EBbcqmME0Xm0L/O4/lWl+hE/vXIBfggL/PRiqkQepoPUlutqxXAAcWdNu0FSijw==, tarball: file:projects/arm-securityinsight.tgz}
name: '@rush-temp/arm-securityinsight'
version: 0.0.0
dependencies:
@@ -14317,18 +14317,18 @@ packages:
'@rollup/plugin-multi-entry': 4.1.0_rollup@2.79.1
'@rollup/plugin-node-resolve': 13.3.0_rollup@2.79.1
'@types/chai': 4.3.4
+ '@types/node': 14.18.36
chai: 4.3.7
cross-env: 7.0.3
mkdirp: 1.0.4
mocha: 7.2.0
rimraf: 3.0.2
rollup: 2.79.1
- rollup-plugin-sourcemaps: 0.6.3_rollup@2.79.1
+ rollup-plugin-sourcemaps: 0.6.3_p2gydaekoyjvl5wd3ixslt7iq4
tslib: 2.5.0
- typescript: 4.6.4
+ typescript: 4.8.4
uglify-js: 3.17.4
transitivePeerDependencies:
- - '@types/node'
- supports-color
dev: false
diff --git a/sdk/securityinsight/arm-securityinsight/LICENSE b/sdk/securityinsight/arm-securityinsight/LICENSE
index 5d1d36e0af80..3a1d9b6f24f7 100644
--- a/sdk/securityinsight/arm-securityinsight/LICENSE
+++ b/sdk/securityinsight/arm-securityinsight/LICENSE
@@ -1,6 +1,6 @@
The MIT License (MIT)
-Copyright (c) 2022 Microsoft
+Copyright (c) 2023 Microsoft
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
diff --git a/sdk/securityinsight/arm-securityinsight/README.md b/sdk/securityinsight/arm-securityinsight/README.md
index 7181392099b1..d4b3978f58fa 100644
--- a/sdk/securityinsight/arm-securityinsight/README.md
+++ b/sdk/securityinsight/arm-securityinsight/README.md
@@ -13,7 +13,7 @@ API spec for Microsoft.SecurityInsights (Azure Security Insights) resource provi
### Currently supported environments
-- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- [LTS versions of Node.js](https://github.com/nodejs/release#release-schedule)
- Latest versions of Safari, Chrome, Edge and Firefox.
See our [support policy](https://github.com/Azure/azure-sdk-for-js/blob/main/SUPPORT.md) for more details.
diff --git a/sdk/securityinsight/arm-securityinsight/_meta.json b/sdk/securityinsight/arm-securityinsight/_meta.json
index efd1ec43a862..82c68440f1fa 100644
--- a/sdk/securityinsight/arm-securityinsight/_meta.json
+++ b/sdk/securityinsight/arm-securityinsight/_meta.json
@@ -1,8 +1,8 @@
{
- "commit": "b41f929626289b59e31be8a1091c99994864b096",
+ "commit": "d05158e54e1f9c22cf2f52b64d9e2ddccc7105fe",
"readme": "specification/securityinsights/resource-manager/readme.md",
- "autorest_command": "autorest --version=3.8.4 --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\\securityinsights\\resource-manager\\readme.md --use=@autorest/typescript@6.0.0-rc.1.20220727.1 --generate-sample=true",
+ "autorest_command": "autorest --version=3.9.3 --typescript --modelerfour.lenient-model-deduplication --azure-arm --head-as-boolean=true --license-header=MICROSOFT_MIT_NO_VERSION --generate-test --typescript-sdks-folder=/mnt/vss/_work/1/s/azure-sdk-for-js ../azure-rest-api-specs/specification/securityinsights/resource-manager/readme.md --use=@autorest/typescript@6.0.0-rc.5",
"repository_url": "https://github.com/Azure/azure-rest-api-specs.git",
- "release_tool": "@azure-tools/js-sdk-release-tools@2.4.2",
- "use": "@autorest/typescript@6.0.0-rc.1.20220727.1"
+ "release_tool": "@azure-tools/js-sdk-release-tools@2.6.0",
+ "use": "@autorest/typescript@6.0.0-rc.5"
}
\ No newline at end of file
diff --git a/sdk/securityinsight/arm-securityinsight/package.json b/sdk/securityinsight/arm-securityinsight/package.json
index 9a999cddda13..1a031da9dfd1 100644
--- a/sdk/securityinsight/arm-securityinsight/package.json
+++ b/sdk/securityinsight/arm-securityinsight/package.json
@@ -3,7 +3,7 @@
"sdk-type": "mgmt",
"author": "Microsoft Corporation",
"description": "A generated SDK for SecurityInsights.",
- "version": "1.0.0-beta.6",
+ "version": "1.0.0-beta.1",
"engines": {
"node": ">=14.0.0"
},
@@ -11,7 +11,7 @@
"@azure/core-lro": "^2.2.0",
"@azure/abort-controller": "^1.0.0",
"@azure/core-paging": "^1.2.0",
- "@azure/core-client": "^1.5.0",
+ "@azure/core-client": "^1.6.1",
"@azure/core-auth": "^1.3.0",
"@azure/core-rest-pipeline": "^1.8.0",
"tslib": "^2.2.0"
@@ -36,7 +36,7 @@
"mkdirp": "^1.0.4",
"rollup": "^2.66.1",
"rollup-plugin-sourcemaps": "^0.6.3",
- "typescript": "~4.6.0",
+ "typescript": "~4.8.0",
"uglify-js": "^3.4.9",
"rimraf": "^3.0.0",
"@azure/identity": "^2.0.1",
@@ -46,6 +46,7 @@
"@types/chai": "^4.2.8",
"chai": "^4.2.0",
"cross-env": "^7.0.2",
+ "@types/node": "^14.0.0",
"@azure/dev-tool": "^1.0.0"
},
"homepage": "https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/securityinsight/arm-securityinsight",
@@ -109,13 +110,5 @@
}
]
},
- "autoPublish": true,
- "//sampleConfiguration": {
- "productName": "",
- "productSlugs": [
- "azure"
- ],
- "disableDocsMs": true,
- "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-securityinsight?view=azure-node-preview"
- }
-}
+ "autoPublish": true
+}
\ No newline at end of file
diff --git a/sdk/securityinsight/arm-securityinsight/src/index.ts b/sdk/securityinsight/arm-securityinsight/src/index.ts
index 50cc92ce15d9..6a27d560aabf 100644
--- a/sdk/securityinsight/arm-securityinsight/src/index.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/index.ts
@@ -7,6 +7,7 @@
*/
///
+export { getContinuationToken } from "./pagingHelper";
export * from "./models";
export { SecurityInsights } from "./securityInsights";
export * from "./operationsInterfaces";
diff --git a/sdk/securityinsight/arm-securityinsight/src/models/index.ts b/sdk/securityinsight/arm-securityinsight/src/models/index.ts
index 0ce7824a0d80..ab75bd71b6bf 100644
--- a/sdk/securityinsight/arm-securityinsight/src/models/index.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/models/index.ts
@@ -17,6 +17,7 @@ export type AutomationRuleConditionUnion =
| PropertyConditionProperties;
export type AutomationRuleActionUnion =
| AutomationRuleAction
+ | AutomationRuleAddIncidentTaskAction
| AutomationRuleModifyPropertiesAction
| AutomationRuleRunPlaybookAction;
export type EntityTimelineItemUnion =
@@ -40,6 +41,7 @@ export type DataConnectorsCheckRequirementsUnion =
| MtpCheckRequirements
| OfficeATPCheckRequirements
| OfficeIRMCheckRequirements
+ | MicrosoftPurviewInformationProtectionCheckRequirements
| Office365ProjectCheckRequirements
| OfficePowerBICheckRequirements
| TICheckRequirements
@@ -119,6 +121,7 @@ export type DataConnectorUnion =
| McasDataConnector
| Dynamics365DataConnector
| OfficeATPDataConnector
+ | MicrosoftPurviewInformationProtectionDataConnector
| Office365ProjectDataConnector
| OfficePowerBIDataConnector
| OfficeIRMDataConnector
@@ -229,6 +232,18 @@ export interface AlertRuleTemplatesList {
value: AlertRuleTemplateUnion[];
}
+/** The triggered analytics rule run array */
+export interface TriggeredAnalyticsRuleRuns {
+ value: TriggeredAnalyticsRuleRun[];
+ /** NOTE: This property will not be serialized. It can only be populated by the server. */
+ readonly nextLink?: string;
+}
+
+/** Analytics Rule Run Trigger request */
+export interface AnalyticsRuleRunTrigger {
+ executionTimeUtc: Date;
+}
+
/** Describes automation rule triggering logic. */
export interface AutomationRuleTriggeringLogic {
/** Determines whether the automation rule is enabled or disabled. */
@@ -255,7 +270,7 @@ export interface AutomationRuleCondition {
/** Describes an automation rule action. */
export interface AutomationRuleAction {
/** Polymorphic discriminator, which specifies the different types this object can be */
- actionType: "ModifyProperties" | "RunPlaybook";
+ actionType: "AddIncidentTask" | "ModifyProperties" | "RunPlaybook";
order: number;
}
@@ -559,7 +574,7 @@ export interface EntityEdges {
/** The target entity Id. */
targetEntityId?: string;
/** A bag of custom fields that should be part of the entity and will be presented to the user. */
- additionalData?: { [propertyName: string]: Record };
+ additionalData?: { [propertyName: string]: any };
}
/** The parameters required to execute s timeline operation on the given entity. */
@@ -776,13 +791,37 @@ export interface ValidationError {
/** List all the incidents. */
export interface IncidentList {
+ value: Incident[];
/**
* URL to fetch the next set of incidents.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly nextLink?: string;
- /** Array of incidents. */
- value: Incident[];
+}
+
+/** Information on the user an incident is assigned to */
+export interface IncidentOwnerInfo {
+ /** The email of the user the incident is assigned to. */
+ email?: string;
+ /** The name of the user the incident is assigned to. */
+ assignedTo?: string;
+ /** The object id of the user the incident is assigned to. */
+ objectId?: string;
+ /** The user principal name of the user the incident is assigned to. */
+ userPrincipalName?: string;
+ /** The type of the owner the incident is assigned to. */
+ ownerType?: OwnerType;
+}
+
+/** Represents an incident label */
+export interface IncidentLabel {
+ /** The name of the label */
+ labelName: string;
+ /**
+ * The type of the label
+ * NOTE: This property will not be serialized. It can only be populated by the server.
+ */
+ readonly labelType?: IncidentLabelType;
}
/** Incident additional data property bag. */
@@ -807,46 +846,21 @@ export interface IncidentAdditionalData {
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly alertProductNames?: string[];
- /**
- * The provider incident url to the incident in Microsoft 365 Defender portal
- * NOTE: This property will not be serialized. It can only be populated by the server.
- */
- readonly providerIncidentUrl?: string;
/**
* The tactics associated with incident
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly tactics?: AttackTactic[];
/**
- * The techniques associated with incident's tactics'
+ * The techniques associated with incident's tactics
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly techniques?: string[];
-}
-
-/** Represents an incident label */
-export interface IncidentLabel {
- /** The name of the label */
- labelName: string;
/**
- * The type of the label
+ * The provider incident url to the incident in Microsoft 365 Defender portal
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly labelType?: IncidentLabelType;
-}
-
-/** Information on the user an incident is assigned to */
-export interface IncidentOwnerInfo {
- /** The email of the user the incident is assigned to. */
- email?: string;
- /** The name of the user the incident is assigned to. */
- assignedTo?: string;
- /** The object id of the user the incident is assigned to. */
- objectId?: string;
- /** The user principal name of the user the incident is assigned to. */
- userPrincipalName?: string;
- /** The type of the owner the incident is assigned to. */
- ownerType?: OwnerType;
+ readonly providerIncidentUrl?: string;
}
/** Describes team information */
@@ -878,18 +892,6 @@ export interface TeamInformation {
readonly description?: string;
}
-/** Describes team properties */
-export interface TeamProperties {
- /** The name of the team */
- teamName: string;
- /** The description of the team */
- teamDescription?: string;
- /** List of member IDs to add to the team */
- memberIds?: string[];
- /** List of group IDs to add their members to the team */
- groupIds?: string[];
-}
-
/** List of incident alerts. */
export interface IncidentAlertList {
/** Array of incident alerts. */
@@ -916,7 +918,7 @@ export interface EntityCommonProperties {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -930,15 +932,10 @@ export interface IncidentBookmarkList {
value: HuntingBookmark[];
}
-/** List of incident comments. */
export interface IncidentCommentList {
- /**
- * URL to fetch the next set of comments.
- * NOTE: This property will not be serialized. It can only be populated by the server.
- */
- readonly nextLink?: string;
- /** Array of comments. */
value: IncidentComment[];
+ /** NOTE: This property will not be serialized. It can only be populated by the server. */
+ readonly nextLink?: string;
}
/** The incident related entities response. */
@@ -951,10 +948,15 @@ export interface IncidentEntitiesResponse {
/** Information of a specific aggregation in the incident related entities result. */
export interface IncidentEntitiesResultsMetadata {
- /** Total number of aggregations of the given kind in the incident related entities result. */
- count: number;
/** The kind of the aggregated entity. */
entityKind: EntityKind;
+ /** Total number of aggregations of the given kind in the incident related entities result. */
+ count: number;
+}
+
+export interface IncidentTaskList {
+ value?: IncidentTask[];
+ nextLink?: string;
}
/** List of all the metadata. */
@@ -1041,6 +1043,90 @@ export interface SentinelOnboardingStatesList {
value: SentinelOnboardingState[];
}
+/** A list of recommendations */
+export interface RecommendationList {
+ /** An list of recommendations */
+ value?: Recommendation[];
+}
+
+/** Recommendation object. */
+export interface Recommendation {
+ /** id of recommendation. */
+ id: string;
+ /** Instructions of the recommendation. */
+ instructions: Instructions;
+ /** Content of the recommendation. */
+ content?: Content;
+ /** Id of the resource this recommendation refers to. */
+ resourceId?: string;
+ /** Collection of additional properties for the recommendation. */
+ additionalProperties?: { [propertyName: string]: string };
+ /** Title of the recommendation. */
+ title: string;
+ /** Description of the recommendation. */
+ description: string;
+ /** Title of the recommendation type. */
+ recommendationTypeTitle: string;
+ /** Id of the recommendation type. */
+ recommendationTypeId: string;
+ /** Category of the recommendation. */
+ category: Category;
+ /** Context of the recommendation. */
+ context: Context;
+ /** Id of the workspace this recommendation refers to. */
+ workspaceId: string;
+ /** List of actions to take for this recommendation. */
+ actions: RecommendedAction[];
+ /** State of the recommendation. */
+ state: State;
+ /** Priority of the recommendation. */
+ priority: Priority;
+ /** The time stamp (UTC) when the recommendation was last evaluated. */
+ lastEvaluatedTimeUtc: Date;
+ /** The time stamp (UTC) when the recommendation should be displayed again. */
+ hideUntilTimeUtc?: Date;
+ /** The timestamp (UTC) after which the recommendation should not be displayed anymore. */
+ displayUntilTimeUtc?: Date;
+ /** Value indicating if the recommendation should be displayed or not. */
+ visible?: boolean;
+}
+
+/** Instructions section of a recommendation. */
+export interface Instructions {
+ /** What actions should be taken to complete the recommendation. */
+ actionsToBePerformed: string;
+ /** Explains why the recommendation is important. */
+ recommendationImportance: string;
+ /** How should the user complete the recommendation. */
+ howToPerformActionDetails?: string;
+}
+
+/** Content section of the recommendation. */
+export interface Content {
+ /** Title of the content. */
+ title: string;
+ /** Description of the content. */
+ description: string;
+}
+
+/** What actions should be taken to complete the recommendation. */
+export interface RecommendedAction {
+ /** Text of the link to complete the action. */
+ linkText: string;
+ /** The Link to complete the action. */
+ linkUrl: string;
+ /** The state of the action. */
+ state?: Priority;
+}
+
+/** Recommendation Fields to update. */
+export interface RecommendationPatch {
+ /** State of the recommendation. */
+ state?: State;
+ /** The time stamp (UTC) when the recommendation should be displayed again. */
+ hideUntilTimeUtc?: Date;
+}
+
/** List all the SecurityMLAnalyticsSettings */
export interface SecurityMLAnalyticsSettingsList {
/**
@@ -1381,6 +1467,7 @@ export interface DataConnectorsCheckRequirements {
| "MicrosoftThreatProtection"
| "OfficeATP"
| "OfficeIRM"
+ | "MicrosoftPurviewInformationProtection"
| "Office365Project"
| "OfficePowerBI"
| "ThreatIntelligence"
@@ -1479,6 +1566,8 @@ export interface QueryBasedAlertRuleTemplateProperties {
alertDetailsOverride?: AlertDetailsOverride;
/** The event grouping settings. */
eventGroupingSettings?: EventGroupingSettings;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
}
/** Single entity mapping for the alert rule */
@@ -1507,6 +1596,16 @@ export interface AlertDetailsOverride {
alertTacticsColumnName?: string;
/** the column name to take the alert severity from */
alertSeverityColumnName?: string;
+ /** List of additional dynamic properties to override */
+ alertDynamicProperties?: AlertPropertyMapping[];
+}
+
+/** A single alert property mapping to override */
+export interface AlertPropertyMapping {
+ /** The V3 alert property */
+ alertProperty?: AlertProperty;
+ /** the column name to use to override this property */
+ value?: string;
}
/** Event grouping settings property bag. */
@@ -1515,6 +1614,12 @@ export interface EventGroupingSettings {
aggregationKind?: EventGroupingAggregationKind;
}
+/** A single sentinel entity mapping */
+export interface SentinelEntityMapping {
+ /** the column name to be mapped to the SentinelEntities */
+ columnName?: string;
+}
+
/** Represents a supported source signal configuration in Fusion detection. */
export interface FusionSourceSettings {
/** Determines whether this source signal is enabled or disabled in Fusion detection. */
@@ -1656,6 +1761,15 @@ export interface ScheduledAlertRuleCommonProperties {
entityMappings?: EntityMapping[];
/** The alert details override settings */
alertDetailsOverride?: AlertDetailsOverride;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
+}
+
+export interface AddIncidentTaskActionProperties {
+ /** The title of the task. */
+ title: string;
+ /** The description of the task. */
+ description?: string;
}
export interface AutomationRuleBooleanCondition {
@@ -1806,6 +1920,18 @@ export interface DataTypeDefinitions {
dataType?: string;
}
+/** Describes team properties */
+export interface TeamProperties {
+ /** The name of the team */
+ teamName: string;
+ /** The description of the team */
+ teamDescription?: string;
+ /** List of group IDs to add their members to the team */
+ groupIds?: string[];
+ /** List of member IDs to add to the team */
+ memberIds?: string[];
+}
+
/** security ml analytics settings data sources */
export interface SecurityMLAnalyticsSettingsDataSource {
/** The connector id that provides the following data types */
@@ -1870,6 +1996,12 @@ export interface Dynamics365DataConnectorDataTypes {
dynamics365CdsActivities: Dynamics365DataConnectorDataTypesDynamics365CdsActivities;
}
+/** The available data types for Microsoft Purview Information Protection data connector. */
+export interface MicrosoftPurviewInformationProtectionConnectorDataTypes {
+ /** Logs data type. */
+ logs: MicrosoftPurviewInformationProtectionConnectorDataTypesLogs;
+}
+
/** The available data types for Office Microsoft Project data connector. */
export interface Office365ProjectConnectorDataTypes {
/** Logs data type. */
@@ -2352,6 +2484,14 @@ export interface PropertyConditionProperties extends AutomationRuleCondition {
conditionProperties?: AutomationRulePropertyValuesCondition;
}
+/** Describes an automation rule action to add a task to an incident */
+export interface AutomationRuleAddIncidentTaskAction
+ extends AutomationRuleAction {
+ /** Polymorphic discriminator, which specifies the different types this object can be */
+ actionType: "AddIncidentTask";
+ actionConfiguration?: AddIncidentTaskActionProperties;
+}
+
/** Describes an automation rule action to modify an object's properties */
export interface AutomationRuleModifyPropertiesAction
extends AutomationRuleAction {
@@ -2459,6 +2599,13 @@ export interface SecurityAlertTimelineItem extends EntityTimelineItem {
timeGenerated: Date;
/** The name of the alert type. */
alertType: string;
+ /**
+ * The intent of the alert.
+ * NOTE: This property will not be serialized. It can only be populated by the server.
+ */
+ readonly intent?: KillChainIntent;
+ /** The techniques of the alert. */
+ techniques?: string[];
}
/** Represents Insight Query. */
@@ -3563,6 +3710,15 @@ export interface OfficeIRMCheckRequirements
tenantId?: string;
}
+/** Represents MicrosoftPurviewInformationProtection requirements check request. */
+export interface MicrosoftPurviewInformationProtectionCheckRequirements
+ extends DataConnectorsCheckRequirements {
+ /** Polymorphic discriminator, which specifies the different types this object can be */
+ kind: "MicrosoftPurviewInformationProtection";
+ /** The tenant id to connect to, and get the data from. */
+ tenantId?: string;
+}
+
/** Represents Office365 Project requirements check request. */
export interface Office365ProjectCheckRequirements
extends DataConnectorsCheckRequirements {
@@ -3735,6 +3891,10 @@ export interface OfficeATPCheckRequirementsProperties
export interface OfficeIRMCheckRequirementsProperties
extends DataConnectorTenantId {}
+/** MicrosoftPurviewInformationProtection requirements check properties. */
+export interface MicrosoftPurviewInformationProtectionCheckRequirementsProperties
+ extends DataConnectorTenantId {}
+
/** Office365 Project requirements check properties. */
export interface Office365ProjectCheckRequirementsProperties
extends DataConnectorTenantId {}
@@ -3790,6 +3950,13 @@ export interface OfficeATPDataConnectorProperties
extends DataConnectorTenantId,
DataConnectorWithAlertsProperties {}
+/** Microsoft Purview Information Protection data connector properties. */
+export interface MicrosoftPurviewInformationProtectionDataConnectorProperties
+ extends DataConnectorTenantId {
+ /** The available data types for the connector. */
+ dataTypes: MicrosoftPurviewInformationProtectionConnectorDataTypes;
+}
+
/** Office Microsoft Project data connector properties. */
export interface Office365ProjectDataConnectorProperties
extends DataConnectorTenantId {
@@ -3901,6 +4068,10 @@ export interface AwsS3DataConnectorDataTypesLogs
export interface Dynamics365DataConnectorDataTypesDynamics365CdsActivities
extends DataConnectorDataTypeCommon {}
+/** Logs data type. */
+export interface MicrosoftPurviewInformationProtectionConnectorDataTypesLogs
+ extends DataConnectorDataTypeCommon {}
+
/** Logs data type. */
export interface Office365ProjectConnectorDataTypesLogs
extends DataConnectorDataTypeCommon {}
@@ -3974,6 +4145,17 @@ export interface ActionRequest extends ResourceWithEtag {
triggerUri?: string;
}
+/** The triggered analytics rule run */
+export interface TriggeredAnalyticsRuleRun extends ResourceWithEtag {
+ executionTimeUtc: Date;
+ ruleId: string;
+ triggeredAnalyticsRuleRunId: string;
+ /** The triggered analytics rule run provisioning state */
+ provisioningState: ProvisioningState;
+ /** Dictionary of */
+ ruleRunAdditionalData?: { [propertyName: string]: any };
+}
+
export interface AutomationRule extends ResourceWithEtag {
/** The display name of the automation rule. */
displayName: string;
@@ -4074,70 +4256,71 @@ export interface CustomEntityQuery extends ResourceWithEtag {
kind: CustomEntityQueryKind;
}
-/** Represents an incident in Azure Security Insights. */
export interface Incident extends ResourceWithEtag {
- /**
- * Additional data on the incident
- * NOTE: This property will not be serialized. It can only be populated by the server.
- */
- readonly additionalData?: IncidentAdditionalData;
+ /** The title of the incident */
+ title?: string;
+ /** The description of the incident */
+ description?: string;
+ /** The severity of the incident */
+ severity?: IncidentSeverity;
+ /** The status of the incident */
+ status?: IncidentStatus;
/** The reason the incident was closed */
classification?: IncidentClassification;
- /** Describes the reason the incident was closed */
- classificationComment?: string;
/** The classification reason the incident was closed with */
classificationReason?: IncidentClassificationReason;
+ /** Describes the reason the incident was closed */
+ classificationComment?: string;
+ /** Describes a user that the incident is assigned to */
+ owner?: IncidentOwnerInfo;
+ /** List of labels relevant to this incident */
+ labels?: IncidentLabel[];
+ /** The time of the first activity in the incident */
+ firstActivityTimeUtc?: Date;
+ /** The time of the last activity in the incident */
+ lastActivityTimeUtc?: Date;
/**
- * The time the incident was created
+ * The last time the incident was updated
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly createdTimeUtc?: Date;
- /** The description of the incident */
- description?: string;
- /** The time of the first activity in the incident */
- firstActivityTimeUtc?: Date;
+ readonly lastModifiedTimeUtc?: Date;
/**
- * The deep-link url to the incident in Azure portal
+ * The time the incident was created
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly incidentUrl?: string;
+ readonly createdTimeUtc?: Date;
/**
* A sequential number
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly incidentNumber?: number;
- /** List of labels relevant to this incident */
- labels?: IncidentLabel[];
- /** The name of the source provider that generated the incident */
- providerName?: string;
- /** The incident ID assigned by the incident provider */
- providerIncidentId?: string;
- /** The time of the last activity in the incident */
- lastActivityTimeUtc?: Date;
/**
- * The last time the incident was updated
+ * Additional data on the incident
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly lastModifiedTimeUtc?: Date;
- /** Describes a user that the incident is assigned to */
- owner?: IncidentOwnerInfo;
+ readonly additionalData?: IncidentAdditionalData;
/**
* List of resource ids of Analytic rules related to the incident
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly relatedAnalyticRuleIds?: string[];
- /** The severity of the incident */
- severity?: IncidentSeverity;
- /** The status of the incident */
- status?: IncidentStatus;
+ /**
+ * The deep-link url to the incident in Azure portal
+ * NOTE: This property will not be serialized. It can only be populated by the server.
+ */
+ readonly incidentUrl?: string;
+ /** The name of the source provider that generated the incident */
+ providerName?: string;
+ /** The incident ID assigned by the incident provider */
+ providerIncidentId?: string;
/** Describes a team for the incident */
teamInformation?: TeamInformation;
- /** The title of the incident */
- title?: string;
}
/** Represents an incident comment */
export interface IncidentComment extends ResourceWithEtag {
+ /** The comment message */
+ message?: string;
/**
* The time the comment was created
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4148,8 +4331,6 @@ export interface IncidentComment extends ResourceWithEtag {
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
readonly lastModifiedTimeUtc?: Date;
- /** The comment message */
- message?: string;
/**
* Describes the client that created the comment
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4157,6 +4338,28 @@ export interface IncidentComment extends ResourceWithEtag {
readonly author?: ClientInfo;
}
+export interface IncidentTask extends ResourceWithEtag {
+ /** The title of the task */
+ title: string;
+ /** The description of the task */
+ description?: string;
+ status: IncidentTaskStatus;
+ /**
+ * The time the task was created
+ * NOTE: This property will not be serialized. It can only be populated by the server.
+ */
+ readonly createdTimeUtc?: Date;
+ /**
+ * The last time the task was updated
+ * NOTE: This property will not be serialized. It can only be populated by the server.
+ */
+ readonly lastModifiedTimeUtc?: Date;
+ /** Information on the client (user or application) that made some action */
+ createdBy?: ClientInfo;
+ /** Information on the client (user or application) that made some action */
+ lastModifiedBy?: ClientInfo;
+}
+
/** Metadata resource definition. */
export interface MetadataModel extends ResourceWithEtag {
/** Static ID for the content. Used to identify dependencies and content from solutions or community. Hard-coded/static for out of the box content and solutions. Dynamic for user-created. This is the resource name */
@@ -4547,6 +4750,8 @@ export interface ScheduledAlertRuleTemplate extends AlertRuleTemplate {
entityMappings?: EntityMapping[];
/** The alert details override settings */
alertDetailsOverride?: AlertDetailsOverride;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
}
/** Represents NRT alert rule template. */
@@ -4591,6 +4796,8 @@ export interface NrtAlertRuleTemplate extends AlertRuleTemplate {
alertDetailsOverride?: AlertDetailsOverride;
/** The event grouping settings. */
eventGroupingSettings?: EventGroupingSettings;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
}
/** Represents a security alert entity. */
@@ -4601,7 +4808,7 @@ export interface SecurityAlert extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4739,7 +4946,7 @@ export interface HuntingBookmark extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4777,7 +4984,7 @@ export interface AccountEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4853,7 +5060,7 @@ export interface AzureResourceEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4879,7 +5086,7 @@ export interface CloudApplicationEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4910,7 +5117,7 @@ export interface DnsEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4946,7 +5153,7 @@ export interface FileEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -4982,7 +5189,7 @@ export interface FileHashEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5008,7 +5215,7 @@ export interface HostEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5066,7 +5273,7 @@ export interface IoTDeviceEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5219,7 +5426,7 @@ export interface IpEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5250,7 +5457,7 @@ export interface MailboxEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5286,7 +5493,7 @@ export interface MailClusterEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5377,7 +5584,7 @@ export interface MailMessageEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5494,7 +5701,7 @@ export interface MalwareEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5530,7 +5737,7 @@ export interface ProcessEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5588,7 +5795,7 @@ export interface RegistryKeyEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5614,7 +5821,7 @@ export interface RegistryValueEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5650,7 +5857,7 @@ export interface SecurityGroupEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5681,7 +5888,7 @@ export interface SubmissionMailEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5747,7 +5954,7 @@ export interface UrlEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -5768,7 +5975,7 @@ export interface NicEntity extends Entity {
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -6004,6 +6211,8 @@ export interface ScheduledAlertRule extends AlertRule {
entityMappings?: EntityMapping[];
/** The alert details override settings */
alertDetailsOverride?: AlertDetailsOverride;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
/** The Name of the alert rule template used to create this rule. */
alertRuleTemplateName?: string;
/** The version of the alert rule template used to create this rule - in format , where all are numbers, for example 0 <1.0.2> */
@@ -6072,6 +6281,8 @@ export interface NrtAlertRule extends AlertRule {
alertDetailsOverride?: AlertDetailsOverride;
/** The event grouping settings. */
eventGroupingSettings?: EventGroupingSettings;
+ /** Array of the sentinel entity mappings of the alert rule */
+ sentinelEntitiesMappings?: SentinelEntityMapping[];
}
/** Represents Expansion entity query. */
@@ -6245,7 +6456,7 @@ export interface ThreatIntelligenceIndicatorModel
* A bag of custom fields that should be part of the entity and will be presented to the user.
* NOTE: This property will not be serialized. It can only be populated by the server.
*/
- readonly additionalData?: { [propertyName: string]: Record };
+ readonly additionalData?: { [propertyName: string]: any };
/**
* The graph item display name which is a short humanly readable description of the graph item instance. This property is optional and might be system generated.
* NOTE: This property will not be serialized. It can only be populated by the server.
@@ -6413,6 +6624,17 @@ export interface OfficeATPDataConnector extends DataConnector {
dataTypes?: AlertsDataTypeOfDataConnector;
}
+/** Represents Microsoft Purview Information Protection data connector. */
+export interface MicrosoftPurviewInformationProtectionDataConnector
+ extends DataConnector {
+ /** Polymorphic discriminator, which specifies the different types this object can be */
+ kind: "MicrosoftPurviewInformationProtection";
+ /** The tenant id to connect to, and get the data from. */
+ tenantId?: string;
+ /** The available data types for the connector. */
+ dataTypes?: MicrosoftPurviewInformationProtectionConnectorDataTypes;
+}
+
/** Represents Office Microsoft Project data connector. */
export interface Office365ProjectDataConnector extends DataConnector {
/** Polymorphic discriminator, which specifies the different types this object can be */
@@ -6529,6 +6751,11 @@ export interface CodelessApiPollingDataConnector extends DataConnector {
pollingConfig?: CodelessConnectorPollingConfigProperties;
}
+/** Defines headers for AlertRule_triggerRuleRun operation. */
+export interface AlertRuleTriggerRuleRunHeaders {
+ location?: string;
+}
+
/** Defines headers for Watchlists_delete operation. */
export interface WatchlistsDeleteHeaders {
/** Contains the status URL on which clients are expected to poll the status of the delete operation. */
@@ -6595,6 +6822,33 @@ export enum KnownCreatedByType {
*/
export type CreatedByType = string;
+/** Known values of {@link ProvisioningState} that the service accepts. */
+export enum KnownProvisioningState {
+ /** Accepted */
+ Accepted = "Accepted",
+ /** InProgress */
+ InProgress = "InProgress",
+ /** Succeeded */
+ Succeeded = "Succeeded",
+ /** Failed */
+ Failed = "Failed",
+ /** Canceled */
+ Canceled = "Canceled"
+}
+
+/**
+ * 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
+ * **Accepted** \
+ * **InProgress** \
+ * **Succeeded** \
+ * **Failed** \
+ * **Canceled**
+ */
+export type ProvisioningState = string;
+
/** Known values of {@link TriggersOn} that the service accepts. */
export enum KnownTriggersOn {
/** Trigger on Incidents */
@@ -6663,7 +6917,9 @@ export enum KnownActionType {
/** Modify an object's properties */
ModifyProperties = "ModifyProperties",
/** Run a playbook on an object */
- RunPlaybook = "RunPlaybook"
+ RunPlaybook = "RunPlaybook",
+ /** Add a task to an incident object */
+ AddIncidentTask = "AddIncidentTask"
}
/**
@@ -6672,7 +6928,8 @@ export enum KnownActionType {
* this enum contains the known values that the service supports.
* ### Known values supported by the service
* **ModifyProperties**: Modify an object's properties \
- * **RunPlaybook**: Run a playbook on an object
+ * **RunPlaybook**: Run a playbook on an object \
+ * **AddIncidentTask**: Add a task to an incident object
*/
export type ActionType = string;
@@ -6916,8 +7173,8 @@ export enum KnownGetInsightsError {
*/
export type GetInsightsError = string;
-/** Known values of {@link Enum13} that the service accepts. */
-export enum KnownEnum13 {
+/** Known values of {@link Enum14} that the service accepts. */
+export enum KnownEnum14 {
/** Expansion */
Expansion = "Expansion",
/** Activity */
@@ -6925,14 +7182,14 @@ export enum KnownEnum13 {
}
/**
- * Defines values for Enum13. \
- * {@link KnownEnum13} can be used interchangeably with Enum13,
+ * Defines values for Enum14. \
+ * {@link KnownEnum14} can be used interchangeably with Enum14,
* this enum contains the known values that the service supports.
* ### Known values supported by the service
* **Expansion** \
* **Activity**
*/
-export type Enum13 = string;
+export type Enum14 = string;
/** Known values of {@link CustomEntityQueryKind} that the service accepts. */
export enum KnownCustomEntityQueryKind {
@@ -7081,17 +7338,38 @@ export enum KnownFileImportState {
*/
export type FileImportState = string;
-/** Known values of {@link IncidentClassification} that the service accepts. */
-export enum KnownIncidentClassification {
- /** Incident classification was undetermined */
- Undetermined = "Undetermined",
- /** Incident was true positive */
- TruePositive = "TruePositive",
- /** Incident was benign positive */
- BenignPositive = "BenignPositive",
- /** Incident was false positive */
- FalsePositive = "FalsePositive"
-}
+/** Known values of {@link IncidentStatus} that the service accepts. */
+export enum KnownIncidentStatus {
+ /** An active incident which isn't being handled currently */
+ New = "New",
+ /** An active incident which is being handled */
+ Active = "Active",
+ /** A non-active incident */
+ Closed = "Closed"
+}
+
+/**
+ * Defines values for IncidentStatus. \
+ * {@link KnownIncidentStatus} can be used interchangeably with IncidentStatus,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **New**: An active incident which isn't being handled currently \
+ * **Active**: An active incident which is being handled \
+ * **Closed**: A non-active incident
+ */
+export type IncidentStatus = string;
+
+/** Known values of {@link IncidentClassification} that the service accepts. */
+export enum KnownIncidentClassification {
+ /** Incident classification was undetermined */
+ Undetermined = "Undetermined",
+ /** Incident was true positive */
+ TruePositive = "TruePositive",
+ /** Incident was benign positive */
+ BenignPositive = "BenignPositive",
+ /** Incident was false positive */
+ FalsePositive = "FalsePositive"
+}
/**
* Defines values for IncidentClassification. \
@@ -7129,24 +7407,6 @@ export enum KnownIncidentClassificationReason {
*/
export type IncidentClassificationReason = string;
-/** Known values of {@link IncidentLabelType} that the service accepts. */
-export enum KnownIncidentLabelType {
- /** Label manually created by a user */
- User = "User",
- /** Label automatically created by the system */
- AutoAssigned = "AutoAssigned"
-}
-
-/**
- * Defines values for IncidentLabelType. \
- * {@link KnownIncidentLabelType} can be used interchangeably with IncidentLabelType,
- * this enum contains the known values that the service supports.
- * ### Known values supported by the service
- * **User**: Label manually created by a user \
- * **AutoAssigned**: Label automatically created by the system
- */
-export type IncidentLabelType = string;
-
/** Known values of {@link OwnerType} that the service accepts. */
export enum KnownOwnerType {
/** The incident owner type is unknown */
@@ -7168,26 +7428,23 @@ export enum KnownOwnerType {
*/
export type OwnerType = string;
-/** Known values of {@link IncidentStatus} that the service accepts. */
-export enum KnownIncidentStatus {
- /** An active incident which isn't being handled currently */
- New = "New",
- /** An active incident which is being handled */
- Active = "Active",
- /** A non-active incident */
- Closed = "Closed"
+/** Known values of {@link IncidentLabelType} that the service accepts. */
+export enum KnownIncidentLabelType {
+ /** Label manually created by a user */
+ User = "User",
+ /** Label automatically created by the system */
+ AutoAssigned = "AutoAssigned"
}
/**
- * Defines values for IncidentStatus. \
- * {@link KnownIncidentStatus} can be used interchangeably with IncidentStatus,
+ * Defines values for IncidentLabelType. \
+ * {@link KnownIncidentLabelType} can be used interchangeably with IncidentLabelType,
* this enum contains the known values that the service supports.
* ### Known values supported by the service
- * **New**: An active incident which isn't being handled currently \
- * **Active**: An active incident which is being handled \
- * **Closed**: A non-active incident
+ * **User**: Label manually created by a user \
+ * **AutoAssigned**: Label automatically created by the system
*/
-export type IncidentStatus = string;
+export type IncidentLabelType = string;
/** Known values of {@link ConfidenceLevel} that the service accepts. */
export enum KnownConfidenceLevel {
@@ -7339,6 +7596,24 @@ export enum KnownAlertStatus {
*/
export type AlertStatus = string;
+/** Known values of {@link IncidentTaskStatus} that the service accepts. */
+export enum KnownIncidentTaskStatus {
+ /** A new task */
+ New = "New",
+ /** A completed task */
+ Completed = "Completed"
+}
+
+/**
+ * Defines values for IncidentTaskStatus. \
+ * {@link KnownIncidentTaskStatus} can be used interchangeably with IncidentTaskStatus,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **New**: A new task \
+ * **Completed**: A completed task
+ */
+export type IncidentTaskStatus = string;
+
/** Known values of {@link Kind} that the service accepts. */
export enum KnownKind {
/** DataConnector */
@@ -7465,6 +7740,105 @@ export enum KnownOperator {
*/
export type Operator = string;
+/** Known values of {@link Category} that the service accepts. */
+export enum KnownCategory {
+ /** Onboarding recommendation. */
+ Onboarding = "Onboarding",
+ /** New feature recommendation. */
+ NewFeature = "NewFeature",
+ /** Soc Efficiency recommendation. */
+ SocEfficiency = "SocEfficiency",
+ /** Cost optimization recommendation. */
+ CostOptimization = "CostOptimization",
+ /** Demo recommendation. */
+ Demo = "Demo"
+}
+
+/**
+ * Defines values for Category. \
+ * {@link KnownCategory} can be used interchangeably with Category,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **Onboarding**: Onboarding recommendation. \
+ * **NewFeature**: New feature recommendation. \
+ * **SocEfficiency**: Soc Efficiency recommendation. \
+ * **CostOptimization**: Cost optimization recommendation. \
+ * **Demo**: Demo recommendation.
+ */
+export type Category = string;
+
+/** Known values of {@link Context} that the service accepts. */
+export enum KnownContext {
+ /** Analytics context. */
+ Analytics = "Analytics",
+ /** Incidents context. */
+ Incidents = "Incidents",
+ /** Overview context. */
+ Overview = "Overview",
+ /** No context. */
+ None = "None"
+}
+
+/**
+ * Defines values for Context. \
+ * {@link KnownContext} can be used interchangeably with Context,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **Analytics**: Analytics context. \
+ * **Incidents**: Incidents context. \
+ * **Overview**: Overview context. \
+ * **None**: No context.
+ */
+export type Context = string;
+
+/** Known values of {@link Priority} that the service accepts. */
+export enum KnownPriority {
+ /** Low priority for recommendation. */
+ Low = "Low",
+ /** Medium priority for recommendation. */
+ Medium = "Medium",
+ /** High priority for recommendation. */
+ High = "High"
+}
+
+/**
+ * Defines values for Priority. \
+ * {@link KnownPriority} can be used interchangeably with Priority,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **Low**: Low priority for recommendation. \
+ * **Medium**: Medium priority for recommendation. \
+ * **High**: High priority for recommendation.
+ */
+export type Priority = string;
+
+/** Known values of {@link State} that the service accepts. */
+export enum KnownState {
+ /** Recommendation is active. */
+ Active = "Active",
+ /** Recommendation is disabled. */
+ Disabled = "Disabled",
+ /** Recommendation has been completed by user. */
+ CompletedByUser = "CompletedByUser",
+ /** Recommendation has been completed by action. */
+ CompletedByAction = "CompletedByAction",
+ /** Recommendation is hidden. */
+ Hidden = "Hidden"
+}
+
+/**
+ * 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
+ * **Active**: Recommendation is active. \
+ * **Disabled**: Recommendation is disabled. \
+ * **CompletedByUser**: Recommendation has been completed by user. \
+ * **CompletedByAction**: Recommendation has been completed by action. \
+ * **Hidden**: Recommendation is hidden.
+ */
+export type State = string;
+
/** Known values of {@link SecurityMLAnalyticsSettingsKind} that the service accepts. */
export enum KnownSecurityMLAnalyticsSettingsKind {
/** Anomaly */
@@ -7698,6 +8072,8 @@ export enum KnownDataConnectorKind {
OfficeIRM = "OfficeIRM",
/** Office365Project */
Office365Project = "Office365Project",
+ /** MicrosoftPurviewInformationProtection */
+ MicrosoftPurviewInformationProtection = "MicrosoftPurviewInformationProtection",
/** OfficePowerBI */
OfficePowerBI = "OfficePowerBI",
/** AmazonWebServicesCloudTrail */
@@ -7736,6 +8112,7 @@ export enum KnownDataConnectorKind {
* **OfficeATP** \
* **OfficeIRM** \
* **Office365Project** \
+ * **MicrosoftPurviewInformationProtection** \
* **OfficePowerBI** \
* **AmazonWebServicesCloudTrail** \
* **AmazonWebServicesS3** \
@@ -7897,6 +8274,45 @@ export enum KnownEntityMappingType {
*/
export type EntityMappingType = string;
+/** Known values of {@link AlertProperty} that the service accepts. */
+export enum KnownAlertProperty {
+ /** Alert's link */
+ AlertLink = "AlertLink",
+ /** Confidence level property */
+ ConfidenceLevel = "ConfidenceLevel",
+ /** Confidence score */
+ ConfidenceScore = "ConfidenceScore",
+ /** Extended links to the alert */
+ ExtendedLinks = "ExtendedLinks",
+ /** Product name alert property */
+ ProductName = "ProductName",
+ /** Provider name alert property */
+ ProviderName = "ProviderName",
+ /** Product component name alert property */
+ ProductComponentName = "ProductComponentName",
+ /** Remediation steps alert property */
+ RemediationSteps = "RemediationSteps",
+ /** Techniques alert property */
+ Techniques = "Techniques"
+}
+
+/**
+ * Defines values for AlertProperty. \
+ * {@link KnownAlertProperty} can be used interchangeably with AlertProperty,
+ * this enum contains the known values that the service supports.
+ * ### Known values supported by the service
+ * **AlertLink**: Alert's link \
+ * **ConfidenceLevel**: Confidence level property \
+ * **ConfidenceScore**: Confidence score \
+ * **ExtendedLinks**: Extended links to the alert \
+ * **ProductName**: Product name alert property \
+ * **ProviderName**: Provider name alert property \
+ * **ProductComponentName**: Product component name alert property \
+ * **RemediationSteps**: Remediation steps alert property \
+ * **Techniques**: Techniques alert property
+ */
+export type AlertProperty = string;
+
/** Known values of {@link EventGroupingAggregationKind} that the service accepts. */
export enum KnownEventGroupingAggregationKind {
/** SingleAlert */
@@ -8887,6 +9303,39 @@ export interface AlertRuleTemplatesListNextOptionalParams
/** Contains response data for the listNext operation. */
export type AlertRuleTemplatesListNextResponse = AlertRuleTemplatesList;
+/** Optional parameters. */
+export interface TriggeredAnalyticsRuleRunGetOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the get operation. */
+export type TriggeredAnalyticsRuleRunGetResponse = TriggeredAnalyticsRuleRun;
+
+/** Optional parameters. */
+export interface GetTriggeredAnalyticsRuleRunsListOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the list operation. */
+export type GetTriggeredAnalyticsRuleRunsListResponse = TriggeredAnalyticsRuleRuns;
+
+/** Optional parameters. */
+export interface GetTriggeredAnalyticsRuleRunsListNextOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the listNext operation. */
+export type GetTriggeredAnalyticsRuleRunsListNextResponse = TriggeredAnalyticsRuleRuns;
+
+/** Optional parameters. */
+export interface AlertRuleTriggerRuleRunOptionalParams
+ 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 triggerRuleRun operation. */
+export type AlertRuleTriggerRuleRunResponse = AlertRuleTriggerRuleRunHeaders;
+
/** Optional parameters. */
export interface AutomationRulesGetOptionalParams
extends coreClient.OperationOptions {}
@@ -8998,16 +9447,7 @@ export type IncidentsListEntitiesResponse = IncidentEntitiesResponse;
/** Optional parameters. */
export interface IncidentsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type IncidentsListNextResponse = IncidentList;
@@ -9080,16 +9520,7 @@ export interface BookmarkRelationsDeleteOptionalParams
/** Optional parameters. */
export interface BookmarkRelationsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type BookmarkRelationsListNextResponse = RelationList;
@@ -9182,16 +9613,7 @@ export type EntitiesRelationsListResponse = RelationList;
/** Optional parameters. */
export interface EntitiesRelationsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type EntitiesRelationsListNextResponse = RelationList;
@@ -9207,7 +9629,7 @@ export type EntityRelationsGetRelationResponse = Relation;
export interface EntityQueriesListOptionalParams
extends coreClient.OperationOptions {
/** The entity query kind we want to fetch */
- kind?: Enum13;
+ kind?: Enum14;
}
/** Contains response data for the list operation. */
@@ -9233,10 +9655,7 @@ export interface EntityQueriesDeleteOptionalParams
/** Optional parameters. */
export interface EntityQueriesListNextOptionalParams
- extends coreClient.OperationOptions {
- /** The entity query kind we want to fetch */
- kind?: Enum13;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type EntityQueriesListNextResponse = EntityQueryList;
@@ -9306,16 +9725,7 @@ export type FileImportsDeleteResponse = FileImport;
/** Optional parameters. */
export interface FileImportsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type FileImportsListNextResponse = FileImportList;
@@ -9356,16 +9766,7 @@ export interface IncidentCommentsDeleteOptionalParams
/** Optional parameters. */
export interface IncidentCommentsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type IncidentCommentsListNextResponse = IncidentCommentList;
@@ -9406,20 +9807,43 @@ export interface IncidentRelationsDeleteOptionalParams
/** Optional parameters. */
export interface IncidentRelationsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type IncidentRelationsListNextResponse = RelationList;
+/** Optional parameters. */
+export interface IncidentTasksListOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the list operation. */
+export type IncidentTasksListResponse = IncidentTaskList;
+
+/** Optional parameters. */
+export interface IncidentTasksGetOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the get operation. */
+export type IncidentTasksGetResponse = IncidentTask;
+
+/** Optional parameters. */
+export interface IncidentTasksCreateOrUpdateOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the createOrUpdate operation. */
+export type IncidentTasksCreateOrUpdateResponse = IncidentTask;
+
+/** Optional parameters. */
+export interface IncidentTasksDeleteOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Optional parameters. */
+export interface IncidentTasksListNextOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the listNext operation. */
+export type IncidentTasksListNextResponse = IncidentTaskList;
+
/** Optional parameters. */
export interface MetadataListOptionalParams
extends coreClient.OperationOptions {
@@ -9463,16 +9887,7 @@ export type MetadataUpdateResponse = MetadataModel;
/** Optional parameters. */
export interface MetadataListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Used to skip n elements in the OData query (offset). Returns a nextLink to the next page of results if there are any left. */
- skip?: number;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type MetadataListNextResponse = MetadataList;
@@ -9530,6 +9945,32 @@ export interface SentinelOnboardingStatesListOptionalParams
/** Contains response data for the list operation. */
export type SentinelOnboardingStatesListResponse = SentinelOnboardingStatesList;
+/** Optional parameters. */
+export interface GetRecommendationsListOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the list operation. */
+export type GetRecommendationsListResponse = RecommendationList;
+
+/** Optional parameters. */
+export interface GetSingleRecommendationOptionalParams
+ extends coreClient.OperationOptions {}
+
+/** Contains response data for the singleRecommendation operation. */
+export type GetSingleRecommendationResponse = Recommendation;
+
+/** Optional parameters. */
+export interface UpdateRecommendationOptionalParams
+ 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 recommendation operation. */
+export type UpdateRecommendationResponse = Recommendation;
+
/** Optional parameters. */
export interface SecurityMLAnalyticsSettingsListOptionalParams
extends coreClient.OperationOptions {}
@@ -9701,16 +10142,7 @@ export type ThreatIntelligenceIndicatorsListResponse = ThreatIntelligenceInforma
/** Optional parameters. */
export interface ThreatIntelligenceIndicatorsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Filters the results, based on a Boolean condition. Optional. */
- filter?: string;
- /** Sorts the results. Optional. */
- orderby?: string;
- /** Returns only the first n results. Optional. */
- top?: number;
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type ThreatIntelligenceIndicatorsListNextResponse = ThreatIntelligenceInformationList;
@@ -9755,10 +10187,7 @@ export type WatchlistsCreateOrUpdateResponse = Watchlist;
/** Optional parameters. */
export interface WatchlistsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type WatchlistsListNextResponse = WatchlistList;
@@ -9793,10 +10222,7 @@ export type WatchlistItemsCreateOrUpdateResponse = WatchlistItem;
/** Optional parameters. */
export interface WatchlistItemsListNextOptionalParams
- extends coreClient.OperationOptions {
- /** Skiptoken is only used if a previous operation returned a partial result. If a previous response contains a nextLink element, the value of the nextLink element will include a skiptoken parameter that specifies a starting point to use for subsequent calls. Optional. */
- skipToken?: string;
-}
+ extends coreClient.OperationOptions {}
/** Contains response data for the listNext operation. */
export type WatchlistItemsListNextResponse = WatchlistItemList;
diff --git a/sdk/securityinsight/arm-securityinsight/src/models/mappers.ts b/sdk/securityinsight/arm-securityinsight/src/models/mappers.ts
index 6f5b1105eada..343b473def22 100644
--- a/sdk/securityinsight/arm-securityinsight/src/models/mappers.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/models/mappers.ts
@@ -232,6 +232,51 @@ export const AlertRuleTemplatesList: coreClient.CompositeMapper = {
}
};
+export const TriggeredAnalyticsRuleRuns: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "TriggeredAnalyticsRuleRuns",
+ modelProperties: {
+ value: {
+ serializedName: "value",
+ required: true,
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "TriggeredAnalyticsRuleRun"
+ }
+ }
+ }
+ },
+ nextLink: {
+ serializedName: "nextLink",
+ readOnly: true,
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const AnalyticsRuleRunTrigger: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "AnalyticsRuleRunTrigger",
+ modelProperties: {
+ executionTimeUtc: {
+ serializedName: "properties.executionTimeUtc",
+ required: true,
+ type: {
+ name: "DateTime"
+ }
+ }
+ }
+ }
+};
+
export const AutomationRuleTriggeringLogic: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -1229,9 +1274,7 @@ export const EntityEdges: coreClient.CompositeMapper = {
serializedName: "additionalData",
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
}
}
@@ -1886,13 +1929,6 @@ export const IncidentList: coreClient.CompositeMapper = {
name: "Composite",
className: "IncidentList",
modelProperties: {
- nextLink: {
- serializedName: "nextLink",
- readOnly: true,
- type: {
- name: "String"
- }
- },
value: {
serializedName: "value",
required: true,
@@ -1905,6 +1941,75 @@ export const IncidentList: coreClient.CompositeMapper = {
}
}
}
+ },
+ nextLink: {
+ serializedName: "nextLink",
+ readOnly: true,
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const IncidentOwnerInfo: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "IncidentOwnerInfo",
+ modelProperties: {
+ email: {
+ serializedName: "email",
+ type: {
+ name: "String"
+ }
+ },
+ assignedTo: {
+ serializedName: "assignedTo",
+ type: {
+ name: "String"
+ }
+ },
+ objectId: {
+ serializedName: "objectId",
+ type: {
+ name: "Uuid"
+ }
+ },
+ userPrincipalName: {
+ serializedName: "userPrincipalName",
+ type: {
+ name: "String"
+ }
+ },
+ ownerType: {
+ serializedName: "ownerType",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const IncidentLabel: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "IncidentLabel",
+ modelProperties: {
+ labelName: {
+ serializedName: "labelName",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ labelType: {
+ serializedName: "labelType",
+ readOnly: true,
+ type: {
+ name: "String"
+ }
}
}
}
@@ -1948,13 +2053,6 @@ export const IncidentAdditionalData: coreClient.CompositeMapper = {
}
}
},
- providerIncidentUrl: {
- serializedName: "providerIncidentUrl",
- readOnly: true,
- type: {
- name: "String"
- }
- },
tactics: {
serializedName: "tactics",
readOnly: true,
@@ -1978,25 +2076,9 @@ export const IncidentAdditionalData: coreClient.CompositeMapper = {
}
}
}
- }
- }
- }
-};
-
-export const IncidentLabel: coreClient.CompositeMapper = {
- type: {
- name: "Composite",
- className: "IncidentLabel",
- modelProperties: {
- labelName: {
- serializedName: "labelName",
- required: true,
- type: {
- name: "String"
- }
},
- labelType: {
- serializedName: "labelType",
+ providerIncidentUrl: {
+ serializedName: "providerIncidentUrl",
readOnly: true,
type: {
name: "String"
@@ -2006,45 +2088,6 @@ export const IncidentLabel: coreClient.CompositeMapper = {
}
};
-export const IncidentOwnerInfo: coreClient.CompositeMapper = {
- type: {
- name: "Composite",
- className: "IncidentOwnerInfo",
- modelProperties: {
- email: {
- serializedName: "email",
- type: {
- name: "String"
- }
- },
- assignedTo: {
- serializedName: "assignedTo",
- type: {
- name: "String"
- }
- },
- objectId: {
- serializedName: "objectId",
- type: {
- name: "Uuid"
- }
- },
- userPrincipalName: {
- serializedName: "userPrincipalName",
- type: {
- name: "String"
- }
- },
- ownerType: {
- serializedName: "ownerType",
- type: {
- name: "String"
- }
- }
- }
- }
-};
-
export const TeamInformation: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -2089,50 +2132,6 @@ export const TeamInformation: coreClient.CompositeMapper = {
}
};
-export const TeamProperties: coreClient.CompositeMapper = {
- type: {
- name: "Composite",
- className: "TeamProperties",
- modelProperties: {
- teamName: {
- serializedName: "teamName",
- required: true,
- type: {
- name: "String"
- }
- },
- teamDescription: {
- serializedName: "teamDescription",
- type: {
- name: "String"
- }
- },
- memberIds: {
- serializedName: "memberIds",
- type: {
- name: "Sequence",
- element: {
- type: {
- name: "Uuid"
- }
- }
- }
- },
- groupIds: {
- serializedName: "groupIds",
- type: {
- name: "Sequence",
- element: {
- type: {
- name: "Uuid"
- }
- }
- }
- }
- }
- }
-};
-
export const IncidentAlertList: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -2188,9 +2187,7 @@ export const EntityCommonProperties: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -2231,13 +2228,6 @@ export const IncidentCommentList: coreClient.CompositeMapper = {
name: "Composite",
className: "IncidentCommentList",
modelProperties: {
- nextLink: {
- serializedName: "nextLink",
- readOnly: true,
- type: {
- name: "String"
- }
- },
value: {
serializedName: "value",
required: true,
@@ -2250,6 +2240,13 @@ export const IncidentCommentList: coreClient.CompositeMapper = {
}
}
}
+ },
+ nextLink: {
+ serializedName: "nextLink",
+ readOnly: true,
+ type: {
+ name: "String"
+ }
}
}
}
@@ -2293,18 +2290,45 @@ export const IncidentEntitiesResultsMetadata: coreClient.CompositeMapper = {
name: "Composite",
className: "IncidentEntitiesResultsMetadata",
modelProperties: {
- count: {
- serializedName: "count",
+ entityKind: {
+ serializedName: "entityKind",
required: true,
type: {
- name: "Number"
+ name: "String"
}
},
- entityKind: {
- serializedName: "entityKind",
+ count: {
+ serializedName: "count",
required: true,
type: {
- name: "String"
+ name: "Number"
+ }
+ }
+ }
+ }
+};
+
+export const IncidentTaskList: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "IncidentTaskList",
+ modelProperties: {
+ value: {
+ serializedName: "value",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "IncidentTask"
+ }
+ }
+ }
+ },
+ nextLink: {
+ serializedName: "nextLink",
+ type: {
+ name: "String"
}
}
}
@@ -2562,6 +2586,278 @@ export const SentinelOnboardingStatesList: coreClient.CompositeMapper = {
}
};
+export const RecommendationList: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "RecommendationList",
+ modelProperties: {
+ value: {
+ serializedName: "value",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Recommendation"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const Recommendation: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "Recommendation",
+ modelProperties: {
+ id: {
+ serializedName: "id",
+ required: true,
+ type: {
+ name: "Uuid"
+ }
+ },
+ instructions: {
+ serializedName: "instructions",
+ type: {
+ name: "Composite",
+ className: "Instructions"
+ }
+ },
+ content: {
+ serializedName: "content",
+ type: {
+ name: "Composite",
+ className: "Content"
+ }
+ },
+ resourceId: {
+ serializedName: "resourceId",
+ nullable: true,
+ type: {
+ name: "String"
+ }
+ },
+ additionalProperties: {
+ serializedName: "additionalProperties",
+ nullable: true,
+ type: {
+ name: "Dictionary",
+ value: { type: { name: "String" } }
+ }
+ },
+ title: {
+ serializedName: "title",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "description",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ recommendationTypeTitle: {
+ serializedName: "recommendationTypeTitle",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ recommendationTypeId: {
+ serializedName: "recommendationTypeId",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ category: {
+ serializedName: "category",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ context: {
+ serializedName: "context",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ workspaceId: {
+ serializedName: "workspaceId",
+ required: true,
+ type: {
+ name: "Uuid"
+ }
+ },
+ actions: {
+ serializedName: "actions",
+ required: true,
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "RecommendedAction"
+ }
+ }
+ }
+ },
+ state: {
+ serializedName: "state",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ priority: {
+ serializedName: "priority",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ lastEvaluatedTimeUtc: {
+ serializedName: "lastEvaluatedTimeUtc",
+ required: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ hideUntilTimeUtc: {
+ serializedName: "hideUntilTimeUtc",
+ nullable: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ displayUntilTimeUtc: {
+ serializedName: "displayUntilTimeUtc",
+ nullable: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ visible: {
+ serializedName: "visible",
+ type: {
+ name: "Boolean"
+ }
+ }
+ }
+ }
+};
+
+export const Instructions: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "Instructions",
+ modelProperties: {
+ actionsToBePerformed: {
+ serializedName: "actionsToBePerformed",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ recommendationImportance: {
+ serializedName: "recommendationImportance",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ howToPerformActionDetails: {
+ serializedName: "howToPerformActionDetails",
+ nullable: true,
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Content: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "Content",
+ modelProperties: {
+ title: {
+ serializedName: "title",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "description",
+ required: true,
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const RecommendedAction: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "RecommendedAction",
+ modelProperties: {
+ linkText: {
+ serializedName: "linkText",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ linkUrl: {
+ serializedName: "linkUrl",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ state: {
+ serializedName: "state",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const RecommendationPatch: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "RecommendationPatch",
+ modelProperties: {
+ state: {
+ serializedName: "state",
+ type: {
+ name: "String"
+ }
+ },
+ hideUntilTimeUtc: {
+ serializedName: "hideUntilTimeUtc",
+ type: {
+ name: "DateTime"
+ }
+ }
+ }
+ }
+};
+
export const SecurityMLAnalyticsSettingsList: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -3820,6 +4116,18 @@ export const QueryBasedAlertRuleTemplateProperties: coreClient.CompositeMapper =
name: "Composite",
className: "EventGroupingSettings"
}
+ },
+ sentinelEntitiesMappings: {
+ serializedName: "sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
+ }
+ }
+ }
}
}
}
@@ -3901,6 +4209,39 @@ export const AlertDetailsOverride: coreClient.CompositeMapper = {
type: {
name: "String"
}
+ },
+ alertDynamicProperties: {
+ serializedName: "alertDynamicProperties",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "AlertPropertyMapping"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const AlertPropertyMapping: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "AlertPropertyMapping",
+ modelProperties: {
+ alertProperty: {
+ serializedName: "alertProperty",
+ type: {
+ name: "String"
+ }
+ },
+ value: {
+ serializedName: "value",
+ type: {
+ name: "String"
+ }
}
}
}
@@ -3921,6 +4262,21 @@ export const EventGroupingSettings: coreClient.CompositeMapper = {
}
};
+export const SentinelEntityMapping: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping",
+ modelProperties: {
+ columnName: {
+ serializedName: "columnName",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
export const FusionSourceSettings: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -4357,16 +4713,50 @@ export const ScheduledAlertRuleCommonProperties: coreClient.CompositeMapper = {
element: {
type: {
name: "Composite",
- className: "EntityMapping"
+ className: "EntityMapping"
+ }
+ }
+ }
+ },
+ alertDetailsOverride: {
+ serializedName: "alertDetailsOverride",
+ type: {
+ name: "Composite",
+ className: "AlertDetailsOverride"
+ }
+ },
+ sentinelEntitiesMappings: {
+ serializedName: "sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
}
}
}
+ }
+ }
+ }
+};
+
+export const AddIncidentTaskActionProperties: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "AddIncidentTaskActionProperties",
+ modelProperties: {
+ title: {
+ serializedName: "title",
+ required: true,
+ type: {
+ name: "String"
+ }
},
- alertDetailsOverride: {
- serializedName: "alertDetailsOverride",
+ description: {
+ serializedName: "description",
type: {
- name: "Composite",
- className: "AlertDetailsOverride"
+ name: "String"
}
}
}
@@ -4907,6 +5297,50 @@ export const DataTypeDefinitions: coreClient.CompositeMapper = {
}
};
+export const TeamProperties: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "TeamProperties",
+ modelProperties: {
+ teamName: {
+ serializedName: "teamName",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ teamDescription: {
+ serializedName: "teamDescription",
+ type: {
+ name: "String"
+ }
+ },
+ groupIds: {
+ serializedName: "groupIds",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Uuid"
+ }
+ }
+ }
+ },
+ memberIds: {
+ serializedName: "memberIds",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Uuid"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
export const SecurityMLAnalyticsSettingsDataSource: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -5084,6 +5518,23 @@ export const Dynamics365DataConnectorDataTypes: coreClient.CompositeMapper = {
}
};
+export const MicrosoftPurviewInformationProtectionConnectorDataTypes: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionConnectorDataTypes",
+ modelProperties: {
+ logs: {
+ serializedName: "logs",
+ type: {
+ name: "Composite",
+ className:
+ "MicrosoftPurviewInformationProtectionConnectorDataTypesLogs"
+ }
+ }
+ }
+ }
+};
+
export const Office365ProjectConnectorDataTypes: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -6385,6 +6836,27 @@ export const PropertyConditionProperties: coreClient.CompositeMapper = {
}
};
+export const AutomationRuleAddIncidentTaskAction: coreClient.CompositeMapper = {
+ serializedName: "AddIncidentTask",
+ type: {
+ name: "Composite",
+ className: "AutomationRuleAddIncidentTaskAction",
+ uberParent: "AutomationRuleAction",
+ polymorphicDiscriminator:
+ AutomationRuleAction.type.polymorphicDiscriminator,
+ modelProperties: {
+ ...AutomationRuleAction.type.modelProperties,
+ actionConfiguration: {
+ serializedName: "actionConfiguration",
+ type: {
+ name: "Composite",
+ className: "AddIncidentTaskActionProperties"
+ }
+ }
+ }
+ }
+};
+
export const AutomationRuleModifyPropertiesAction: coreClient.CompositeMapper = {
serializedName: "ModifyProperties",
type: {
@@ -6720,6 +7192,24 @@ export const SecurityAlertTimelineItem: coreClient.CompositeMapper = {
type: {
name: "String"
}
+ },
+ intent: {
+ serializedName: "intent",
+ readOnly: true,
+ type: {
+ name: "String"
+ }
+ },
+ techniques: {
+ serializedName: "techniques",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "String"
+ }
+ }
+ }
}
}
}
@@ -8816,6 +9306,26 @@ export const OfficeIRMCheckRequirements: coreClient.CompositeMapper = {
}
};
+export const MicrosoftPurviewInformationProtectionCheckRequirements: coreClient.CompositeMapper = {
+ serializedName: "MicrosoftPurviewInformationProtection",
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionCheckRequirements",
+ uberParent: "DataConnectorsCheckRequirements",
+ polymorphicDiscriminator:
+ DataConnectorsCheckRequirements.type.polymorphicDiscriminator,
+ modelProperties: {
+ ...DataConnectorsCheckRequirements.type.modelProperties,
+ tenantId: {
+ serializedName: "properties.tenantId",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
export const Office365ProjectCheckRequirements: coreClient.CompositeMapper = {
serializedName: "Office365Project",
type: {
@@ -9297,6 +9807,17 @@ export const OfficeIRMCheckRequirementsProperties: coreClient.CompositeMapper =
}
};
+export const MicrosoftPurviewInformationProtectionCheckRequirementsProperties: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className:
+ "MicrosoftPurviewInformationProtectionCheckRequirementsProperties",
+ modelProperties: {
+ ...DataConnectorTenantId.type.modelProperties
+ }
+ }
+};
+
export const Office365ProjectCheckRequirementsProperties: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -9438,6 +9959,23 @@ export const OfficeATPDataConnectorProperties: coreClient.CompositeMapper = {
}
};
+export const MicrosoftPurviewInformationProtectionDataConnectorProperties: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionDataConnectorProperties",
+ modelProperties: {
+ ...DataConnectorTenantId.type.modelProperties,
+ dataTypes: {
+ serializedName: "dataTypes",
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionConnectorDataTypes"
+ }
+ }
+ }
+ }
+};
+
export const Office365ProjectDataConnectorProperties: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -9726,6 +10264,16 @@ export const Dynamics365DataConnectorDataTypesDynamics365CdsActivities: coreClie
}
};
+export const MicrosoftPurviewInformationProtectionConnectorDataTypesLogs: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionConnectorDataTypesLogs",
+ modelProperties: {
+ ...DataConnectorDataTypeCommon.type.modelProperties
+ }
+ }
+};
+
export const Office365ProjectConnectorDataTypesLogs: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -9943,6 +10491,51 @@ export const ActionRequest: coreClient.CompositeMapper = {
}
};
+export const TriggeredAnalyticsRuleRun: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "TriggeredAnalyticsRuleRun",
+ modelProperties: {
+ ...ResourceWithEtag.type.modelProperties,
+ executionTimeUtc: {
+ serializedName: "properties.executionTimeUtc",
+ required: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ ruleId: {
+ serializedName: "properties.ruleId",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ triggeredAnalyticsRuleRunId: {
+ serializedName: "properties.triggeredAnalyticsRuleRunId",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ provisioningState: {
+ serializedName: "properties.provisioningState",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ ruleRunAdditionalData: {
+ serializedName: "properties.ruleRunAdditionalData",
+ type: {
+ name: "Dictionary",
+ value: { type: { name: "any" } }
+ }
+ }
+ }
+ }
+};
+
export const AutomationRule: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -10244,62 +10837,53 @@ export const Incident: coreClient.CompositeMapper = {
className: "Incident",
modelProperties: {
...ResourceWithEtag.type.modelProperties,
- additionalData: {
- serializedName: "properties.additionalData",
- type: {
- name: "Composite",
- className: "IncidentAdditionalData"
- }
- },
- classification: {
- serializedName: "properties.classification",
+ title: {
+ serializedName: "properties.title",
type: {
name: "String"
}
},
- classificationComment: {
- serializedName: "properties.classificationComment",
+ description: {
+ serializedName: "properties.description",
type: {
name: "String"
}
},
- classificationReason: {
- serializedName: "properties.classificationReason",
+ severity: {
+ serializedName: "properties.severity",
type: {
name: "String"
}
},
- createdTimeUtc: {
- serializedName: "properties.createdTimeUtc",
- readOnly: true,
+ status: {
+ serializedName: "properties.status",
type: {
- name: "DateTime"
+ name: "String"
}
},
- description: {
- serializedName: "properties.description",
+ classification: {
+ serializedName: "properties.classification",
type: {
name: "String"
}
},
- firstActivityTimeUtc: {
- serializedName: "properties.firstActivityTimeUtc",
+ classificationReason: {
+ serializedName: "properties.classificationReason",
type: {
- name: "DateTime"
+ name: "String"
}
},
- incidentUrl: {
- serializedName: "properties.incidentUrl",
- readOnly: true,
+ classificationComment: {
+ serializedName: "properties.classificationComment",
type: {
name: "String"
}
},
- incidentNumber: {
- serializedName: "properties.incidentNumber",
- readOnly: true,
+ owner: {
+ serializedName: "properties.owner",
type: {
- name: "Number"
+ name: "Composite",
+ className: "IncidentOwnerInfo"
}
},
labels: {
@@ -10307,23 +10891,17 @@ export const Incident: coreClient.CompositeMapper = {
type: {
name: "Sequence",
element: {
- type: {
- name: "Composite",
- className: "IncidentLabel"
- }
- }
- }
- },
- providerName: {
- serializedName: "properties.providerName",
- type: {
- name: "String"
+ type: {
+ name: "Composite",
+ className: "IncidentLabel"
+ }
+ }
}
},
- providerIncidentId: {
- serializedName: "properties.providerIncidentId",
+ firstActivityTimeUtc: {
+ serializedName: "properties.firstActivityTimeUtc",
type: {
- name: "String"
+ name: "DateTime"
}
},
lastActivityTimeUtc: {
@@ -10339,11 +10917,25 @@ export const Incident: coreClient.CompositeMapper = {
name: "DateTime"
}
},
- owner: {
- serializedName: "properties.owner",
+ createdTimeUtc: {
+ serializedName: "properties.createdTimeUtc",
+ readOnly: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ incidentNumber: {
+ serializedName: "properties.incidentNumber",
+ readOnly: true,
+ type: {
+ name: "Number"
+ }
+ },
+ additionalData: {
+ serializedName: "properties.additionalData",
type: {
name: "Composite",
- className: "IncidentOwnerInfo"
+ className: "IncidentAdditionalData"
}
},
relatedAnalyticRuleIds: {
@@ -10358,14 +10950,21 @@ export const Incident: coreClient.CompositeMapper = {
}
}
},
- severity: {
- serializedName: "properties.severity",
+ incidentUrl: {
+ serializedName: "properties.incidentUrl",
+ readOnly: true,
type: {
name: "String"
}
},
- status: {
- serializedName: "properties.status",
+ providerName: {
+ serializedName: "properties.providerName",
+ type: {
+ name: "String"
+ }
+ },
+ providerIncidentId: {
+ serializedName: "properties.providerIncidentId",
type: {
name: "String"
}
@@ -10376,12 +10975,6 @@ export const Incident: coreClient.CompositeMapper = {
name: "Composite",
className: "TeamInformation"
}
- },
- title: {
- serializedName: "properties.title",
- type: {
- name: "String"
- }
}
}
}
@@ -10393,6 +10986,12 @@ export const IncidentComment: coreClient.CompositeMapper = {
className: "IncidentComment",
modelProperties: {
...ResourceWithEtag.type.modelProperties,
+ message: {
+ serializedName: "properties.message",
+ type: {
+ name: "String"
+ }
+ },
createdTimeUtc: {
serializedName: "properties.createdTimeUtc",
readOnly: true,
@@ -10407,14 +11006,66 @@ export const IncidentComment: coreClient.CompositeMapper = {
name: "DateTime"
}
},
- message: {
- serializedName: "properties.message",
+ author: {
+ serializedName: "properties.author",
+ type: {
+ name: "Composite",
+ className: "ClientInfo"
+ }
+ }
+ }
+ }
+};
+
+export const IncidentTask: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "IncidentTask",
+ modelProperties: {
+ ...ResourceWithEtag.type.modelProperties,
+ title: {
+ serializedName: "properties.title",
+ required: true,
type: {
name: "String"
}
},
- author: {
- serializedName: "properties.author",
+ description: {
+ serializedName: "properties.description",
+ type: {
+ name: "String"
+ }
+ },
+ status: {
+ serializedName: "properties.status",
+ required: true,
+ type: {
+ name: "String"
+ }
+ },
+ createdTimeUtc: {
+ serializedName: "properties.createdTimeUtc",
+ readOnly: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ lastModifiedTimeUtc: {
+ serializedName: "properties.lastModifiedTimeUtc",
+ readOnly: true,
+ type: {
+ name: "DateTime"
+ }
+ },
+ createdBy: {
+ serializedName: "properties.createdBy",
+ type: {
+ name: "Composite",
+ className: "ClientInfo"
+ }
+ },
+ lastModifiedBy: {
+ serializedName: "properties.lastModifiedBy",
type: {
name: "Composite",
className: "ClientInfo"
@@ -11672,6 +12323,18 @@ export const ScheduledAlertRuleTemplate: coreClient.CompositeMapper = {
name: "Composite",
className: "AlertDetailsOverride"
}
+ },
+ sentinelEntitiesMappings: {
+ serializedName: "properties.sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
+ }
+ }
+ }
}
}
}
@@ -11808,6 +12471,18 @@ export const NrtAlertRuleTemplate: coreClient.CompositeMapper = {
name: "Composite",
className: "EventGroupingSettings"
}
+ },
+ sentinelEntitiesMappings: {
+ serializedName: "properties.sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
+ }
+ }
+ }
}
}
}
@@ -11827,9 +12502,7 @@ export const SecurityAlert: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12053,9 +12726,7 @@ export const HuntingBookmark: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12157,9 +12828,7 @@ export const AccountEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12271,9 +12940,7 @@ export const AzureResourceEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12315,9 +12982,7 @@ export const CloudApplicationEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12366,9 +13031,7 @@ export const DnsEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12429,9 +13092,7 @@ export const FileEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12492,9 +13153,7 @@ export const FileHashEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12536,9 +13195,7 @@ export const HostEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12629,9 +13286,7 @@ export const IoTDeviceEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12875,9 +13530,7 @@ export const IpEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12932,9 +13585,7 @@ export const MailboxEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -12990,9 +13641,7 @@ export const MailClusterEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13138,9 +13787,7 @@ export const MailMessageEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13373,9 +14020,7 @@ export const MalwareEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13441,9 +14086,7 @@ export const ProcessEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13534,9 +14177,7 @@ export const RegistryKeyEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13578,9 +14219,7 @@ export const RegistryValueEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13636,9 +14275,7 @@ export const SecurityGroupEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13687,9 +14324,7 @@ export const SubmissionMailEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13787,9 +14422,7 @@ export const UrlEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -13824,9 +14457,7 @@ export const NicEntity: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -14408,6 +15039,18 @@ export const ScheduledAlertRule: coreClient.CompositeMapper = {
className: "AlertDetailsOverride"
}
},
+ sentinelEntitiesMappings: {
+ serializedName: "properties.sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
+ }
+ }
+ }
+ },
alertRuleTemplateName: {
serializedName: "properties.alertRuleTemplateName",
type: {
@@ -14621,6 +15264,18 @@ export const NrtAlertRule: coreClient.CompositeMapper = {
name: "Composite",
className: "EventGroupingSettings"
}
+ },
+ sentinelEntitiesMappings: {
+ serializedName: "properties.sentinelEntitiesMappings",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "SentinelEntityMapping"
+ }
+ }
+ }
}
}
}
@@ -15099,9 +15754,7 @@ export const ThreatIntelligenceIndicatorModel: coreClient.CompositeMapper = {
readOnly: true,
type: {
name: "Dictionary",
- value: {
- type: { name: "Dictionary", value: { type: { name: "any" } } }
- }
+ value: { type: { name: "any" } }
}
},
friendlyName: {
@@ -15610,6 +16263,32 @@ export const OfficeATPDataConnector: coreClient.CompositeMapper = {
}
};
+export const MicrosoftPurviewInformationProtectionDataConnector: coreClient.CompositeMapper = {
+ serializedName: "MicrosoftPurviewInformationProtection",
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionDataConnector",
+ uberParent: "DataConnector",
+ polymorphicDiscriminator: DataConnector.type.polymorphicDiscriminator,
+ modelProperties: {
+ ...DataConnector.type.modelProperties,
+ tenantId: {
+ serializedName: "properties.tenantId",
+ type: {
+ name: "String"
+ }
+ },
+ dataTypes: {
+ serializedName: "properties.dataTypes",
+ type: {
+ name: "Composite",
+ className: "MicrosoftPurviewInformationProtectionConnectorDataTypes"
+ }
+ }
+ }
+ }
+};
+
export const Office365ProjectDataConnector: coreClient.CompositeMapper = {
serializedName: "Office365Project",
type: {
@@ -15922,6 +16601,21 @@ export const CodelessApiPollingDataConnector: coreClient.CompositeMapper = {
}
};
+export const AlertRuleTriggerRuleRunHeaders: coreClient.CompositeMapper = {
+ type: {
+ name: "Composite",
+ className: "AlertRuleTriggerRuleRunHeaders",
+ modelProperties: {
+ location: {
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
export const WatchlistsDeleteHeaders: coreClient.CompositeMapper = {
type: {
name: "Composite",
@@ -15966,6 +16660,7 @@ export let discriminators = {
"AutomationRuleCondition.PropertyArray": PropertyArrayConditionProperties,
"AutomationRuleCondition.PropertyChanged": PropertyChangedConditionProperties,
"AutomationRuleCondition.Property": PropertyConditionProperties,
+ "AutomationRuleAction.AddIncidentTask": AutomationRuleAddIncidentTaskAction,
"AutomationRuleAction.ModifyProperties": AutomationRuleModifyPropertiesAction,
"AutomationRuleAction.RunPlaybook": AutomationRuleRunPlaybookAction,
"EntityTimelineItem.Activity": ActivityTimelineItem,
@@ -15985,6 +16680,7 @@ export let discriminators = {
"DataConnectorsCheckRequirements.MicrosoftThreatProtection": MtpCheckRequirements,
"DataConnectorsCheckRequirements.OfficeATP": OfficeATPCheckRequirements,
"DataConnectorsCheckRequirements.OfficeIRM": OfficeIRMCheckRequirements,
+ "DataConnectorsCheckRequirements.MicrosoftPurviewInformationProtection": MicrosoftPurviewInformationProtectionCheckRequirements,
"DataConnectorsCheckRequirements.Office365Project": Office365ProjectCheckRequirements,
"DataConnectorsCheckRequirements.OfficePowerBI": OfficePowerBICheckRequirements,
"DataConnectorsCheckRequirements.ThreatIntelligence": TICheckRequirements,
@@ -16051,6 +16747,7 @@ export let discriminators = {
"DataConnector.MicrosoftCloudAppSecurity": McasDataConnector,
"DataConnector.Dynamics365": Dynamics365DataConnector,
"DataConnector.OfficeATP": OfficeATPDataConnector,
+ "DataConnector.MicrosoftPurviewInformationProtection": MicrosoftPurviewInformationProtectionDataConnector,
"DataConnector.Office365Project": Office365ProjectDataConnector,
"DataConnector.OfficePowerBI": OfficePowerBIDataConnector,
"DataConnector.OfficeIRM": OfficeIRMDataConnector,
diff --git a/sdk/securityinsight/arm-securityinsight/src/models/parameters.ts b/sdk/securityinsight/arm-securityinsight/src/models/parameters.ts
index dd3bcead9d0b..0abf2ed7a590 100644
--- a/sdk/securityinsight/arm-securityinsight/src/models/parameters.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/models/parameters.ts
@@ -14,10 +14,11 @@ import {
import {
AlertRule as AlertRuleMapper,
ActionRequest as ActionRequestMapper,
+ AnalyticsRuleRunTrigger as AnalyticsRuleRunTriggerMapper,
AutomationRule as AutomationRuleMapper,
ManualTriggerRequestBody as ManualTriggerRequestBodyMapper,
Incident as IncidentMapper,
- TeamProperties as TeamPropertiesMapper,
+ TeamInformation as TeamInformationMapper,
Bookmark as BookmarkMapper,
Relation as RelationMapper,
BookmarkExpandParameters as BookmarkExpandParametersMapper,
@@ -27,6 +28,7 @@ import {
CustomEntityQuery as CustomEntityQueryMapper,
FileImport as FileImportMapper,
IncidentComment as IncidentCommentMapper,
+ IncidentTask as IncidentTaskMapper,
MetadataModel as MetadataModelMapper,
MetadataPatch as MetadataPatchMapper,
SentinelOnboardingState as SentinelOnboardingStateMapper,
@@ -70,7 +72,7 @@ export const $host: OperationURLParameter = {
export const apiVersion: OperationQueryParameter = {
parameterPath: "apiVersion",
mapper: {
- defaultValue: "2022-09-01-preview",
+ defaultValue: "2023-02-01-preview",
isConstant: true,
serializedName: "api-version",
type: {
@@ -112,6 +114,7 @@ export const workspaceName: OperationURLParameter = {
parameterPath: "workspaceName",
mapper: {
constraints: {
+ Pattern: new RegExp("^[A-Za-z0-9][A-Za-z0-9-]+[A-Za-z0-9]$"),
MaxLength: 90,
MinLength: 1
},
@@ -190,6 +193,22 @@ export const alertRuleTemplateId: OperationURLParameter = {
}
};
+export const ruleRunId: OperationURLParameter = {
+ parameterPath: "ruleRunId",
+ mapper: {
+ serializedName: "ruleRunId",
+ required: true,
+ type: {
+ name: "String"
+ }
+ }
+};
+
+export const analyticsRuleRunTriggerParameter: OperationParameter = {
+ parameterPath: "analyticsRuleRunTriggerParameter",
+ mapper: AnalyticsRuleRunTriggerMapper
+};
+
export const automationRuleId: OperationURLParameter = {
parameterPath: "automationRuleId",
mapper: {
@@ -280,7 +299,7 @@ export const incident: OperationParameter = {
export const teamProperties: OperationParameter = {
parameterPath: "teamProperties",
- mapper: TeamPropertiesMapper
+ mapper: TeamInformationMapper
};
export const bookmarkId: OperationURLParameter = {
@@ -460,6 +479,22 @@ export const incidentComment: OperationParameter = {
mapper: IncidentCommentMapper
};
+export const incidentTaskId: OperationURLParameter = {
+ parameterPath: "incidentTaskId",
+ mapper: {
+ serializedName: "incidentTaskId",
+ required: true,
+ type: {
+ name: "String"
+ }
+ }
+};
+
+export const incidentTask: OperationParameter = {
+ parameterPath: "incidentTask",
+ mapper: IncidentTaskMapper
+};
+
export const skip: OperationQueryParameter = {
parameterPath: ["options", "skip"],
mapper: {
@@ -518,6 +553,34 @@ export const sentinelOnboardingStateParameter: OperationParameter = {
mapper: SentinelOnboardingStateMapper
};
+export const recommendationId: OperationURLParameter = {
+ parameterPath: "recommendationId",
+ mapper: {
+ serializedName: "recommendationId",
+ required: true,
+ type: {
+ name: "Uuid"
+ }
+ }
+};
+
+export const recommendationPatch: OperationParameter = {
+ parameterPath: "recommendationPatch",
+ mapper: {
+ serializedName: "recommendationPatch",
+ required: true,
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "RecommendationPatch"
+ }
+ }
+ }
+ }
+};
+
export const settingsResourceName: OperationURLParameter = {
parameterPath: "settingsResourceName",
mapper: {
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/actions.ts b/sdk/securityinsight/arm-securityinsight/src/operations/actions.ts
index 72aea9cb6a13..e06f4de90aa9 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/actions.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/actions.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Actions } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -65,12 +66,16 @@ export class ActionsImpl implements Actions {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listByAlertRulePagingPage(
resourceGroupName,
workspaceName,
ruleId,
- options
+ options,
+ settings
);
}
};
@@ -80,16 +85,23 @@ export class ActionsImpl implements Actions {
resourceGroupName: string,
workspaceName: string,
ruleId: string,
- options?: ActionsListByAlertRuleOptionalParams
+ options?: ActionsListByAlertRuleOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._listByAlertRule(
- resourceGroupName,
- workspaceName,
- ruleId,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: ActionsListByAlertRuleResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._listByAlertRule(
+ resourceGroupName,
+ workspaceName,
+ ruleId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listByAlertRuleNext(
resourceGroupName,
@@ -99,7 +111,9 @@ export class ActionsImpl implements Actions {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -337,7 +351,6 @@ const listByAlertRuleNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleOperations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleOperations.ts
new file mode 100644
index 000000000000..72374b4e6912
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleOperations.ts
@@ -0,0 +1,174 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { AlertRuleOperations } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
+import { LroImpl } from "../lroImpl";
+import {
+ AnalyticsRuleRunTrigger,
+ AlertRuleTriggerRuleRunOptionalParams,
+ AlertRuleTriggerRuleRunResponse
+} from "../models";
+
+/** Class containing AlertRuleOperations operations. */
+export class AlertRuleOperationsImpl implements AlertRuleOperations {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class AlertRuleOperations class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * triggers analytics rule run
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleId Alert rule ID
+ * @param analyticsRuleRunTriggerParameter The Analytics Rule Run Trigger parameter
+ * @param options The options parameters.
+ */
+ async beginTriggerRuleRun(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleId: string,
+ analyticsRuleRunTriggerParameter: AnalyticsRuleRunTrigger,
+ options?: AlertRuleTriggerRuleRunOptionalParams
+ ): Promise<
+ PollerLike<
+ PollOperationState,
+ AlertRuleTriggerRuleRunResponse
+ >
+ > {
+ const directSendOperation = async (
+ args: coreClient.OperationArguments,
+ spec: coreClient.OperationSpec
+ ): Promise => {
+ return this.client.sendOperationRequest(args, spec);
+ };
+ const sendOperation = async (
+ args: coreClient.OperationArguments,
+ spec: coreClient.OperationSpec
+ ) => {
+ let currentRawResponse:
+ | coreClient.FullOperationResponse
+ | undefined = undefined;
+ const providedCallback = args.options?.onResponse;
+ const callback: coreClient.RawResponseCallback = (
+ rawResponse: coreClient.FullOperationResponse,
+ flatResponse: unknown
+ ) => {
+ currentRawResponse = rawResponse;
+ providedCallback?.(rawResponse, flatResponse);
+ };
+ const updatedArgs = {
+ ...args,
+ options: {
+ ...args.options,
+ onResponse: callback
+ }
+ };
+ const flatResponse = await directSendOperation(updatedArgs, spec);
+ return {
+ flatResponse,
+ rawResponse: {
+ statusCode: currentRawResponse!.status,
+ body: currentRawResponse!.parsedBody,
+ headers: currentRawResponse!.headers.toJSON()
+ }
+ };
+ };
+
+ const lro = new LroImpl(
+ sendOperation,
+ {
+ resourceGroupName,
+ workspaceName,
+ ruleId,
+ analyticsRuleRunTriggerParameter,
+ options
+ },
+ triggerRuleRunOperationSpec
+ );
+ const poller = new LroEngine(lro, {
+ resumeFrom: options?.resumeFrom,
+ intervalInMs: options?.updateIntervalInMs,
+ lroResourceLocationConfig: "location"
+ });
+ await poller.poll();
+ return poller;
+ }
+
+ /**
+ * triggers analytics rule run
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleId Alert rule ID
+ * @param analyticsRuleRunTriggerParameter The Analytics Rule Run Trigger parameter
+ * @param options The options parameters.
+ */
+ async beginTriggerRuleRunAndWait(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleId: string,
+ analyticsRuleRunTriggerParameter: AnalyticsRuleRunTrigger,
+ options?: AlertRuleTriggerRuleRunOptionalParams
+ ): Promise {
+ const poller = await this.beginTriggerRuleRun(
+ resourceGroupName,
+ workspaceName,
+ ruleId,
+ analyticsRuleRunTriggerParameter,
+ options
+ );
+ return poller.pollUntilDone();
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const triggerRuleRunOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/alertRules/{ruleId}/triggerRuleRun",
+ httpMethod: "POST",
+ responses: {
+ 200: {
+ headersMapper: Mappers.AlertRuleTriggerRuleRunHeaders
+ },
+ 201: {
+ headersMapper: Mappers.AlertRuleTriggerRuleRunHeaders
+ },
+ 202: {
+ headersMapper: Mappers.AlertRuleTriggerRuleRunHeaders
+ },
+ 204: {
+ headersMapper: Mappers.AlertRuleTriggerRuleRunHeaders
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ requestBody: Parameters.analyticsRuleRunTriggerParameter,
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.ruleId
+ ],
+ headerParameters: [Parameters.accept, Parameters.contentType],
+ mediaType: "json",
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleTemplates.ts b/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleTemplates.ts
index dbad34be967b..1f75b5557ce4 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleTemplates.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/alertRuleTemplates.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { AlertRuleTemplates } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -54,8 +55,16 @@ export class AlertRuleTemplatesImpl implements AlertRuleTemplates {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -63,11 +72,18 @@ export class AlertRuleTemplatesImpl implements AlertRuleTemplates {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: AlertRuleTemplatesListOptionalParams
+ options?: AlertRuleTemplatesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: AlertRuleTemplatesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -76,7 +92,9 @@ export class AlertRuleTemplatesImpl implements AlertRuleTemplates {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -208,7 +226,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/alertRules.ts b/sdk/securityinsight/arm-securityinsight/src/operations/alertRules.ts
index 43164a9c587c..d13d035b61df 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/alertRules.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/alertRules.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { AlertRules } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -57,8 +58,16 @@ export class AlertRulesImpl implements AlertRules {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -66,11 +75,18 @@ export class AlertRulesImpl implements AlertRules {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: AlertRulesListOptionalParams
+ options?: AlertRulesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: AlertRulesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -79,7 +95,9 @@ export class AlertRulesImpl implements AlertRules {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -301,7 +319,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/automationRules.ts b/sdk/securityinsight/arm-securityinsight/src/operations/automationRules.ts
index 9e885d622466..19ea8f48732e 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/automationRules.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/automationRules.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { AutomationRules } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -16,13 +17,13 @@ import {
AutomationRule,
AutomationRulesListNextOptionalParams,
AutomationRulesListOptionalParams,
+ AutomationRulesListResponse,
AutomationRulesGetOptionalParams,
AutomationRulesGetResponse,
AutomationRulesCreateOrUpdateOptionalParams,
AutomationRulesCreateOrUpdateResponse,
AutomationRulesDeleteOptionalParams,
AutomationRulesDeleteResponse,
- AutomationRulesListResponse,
AutomationRulesListNextResponse
} from "../models";
@@ -58,8 +59,16 @@ export class AutomationRulesImpl implements AutomationRules {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -67,11 +76,18 @@ export class AutomationRulesImpl implements AutomationRules {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: AutomationRulesListOptionalParams
+ options?: AutomationRulesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: AutomationRulesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -80,7 +96,9 @@ export class AutomationRulesImpl implements AutomationRules {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -308,7 +326,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/bookmarkRelations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/bookmarkRelations.ts
index b399a68bbfc5..d9aa94d1350d 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/bookmarkRelations.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/bookmarkRelations.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { BookmarkRelations } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -64,12 +65,16 @@ export class BookmarkRelationsImpl implements BookmarkRelations {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listPagingPage(
resourceGroupName,
workspaceName,
bookmarkId,
- options
+ options,
+ settings
);
}
};
@@ -79,16 +84,23 @@ export class BookmarkRelationsImpl implements BookmarkRelations {
resourceGroupName: string,
workspaceName: string,
bookmarkId: string,
- options?: BookmarkRelationsListOptionalParams
+ options?: BookmarkRelationsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(
- resourceGroupName,
- workspaceName,
- bookmarkId,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: BookmarkRelationsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ bookmarkId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -98,7 +110,9 @@ export class BookmarkRelationsImpl implements BookmarkRelations {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -349,13 +363,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/bookmarks.ts b/sdk/securityinsight/arm-securityinsight/src/operations/bookmarks.ts
index 1587a320cf92..e8d43303da5b 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/bookmarks.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/bookmarks.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Bookmarks } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -57,8 +58,16 @@ export class BookmarksImpl implements Bookmarks {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -66,11 +75,18 @@ export class BookmarksImpl implements Bookmarks {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: BookmarksListOptionalParams
+ options?: BookmarksListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: BookmarksListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -79,7 +95,9 @@ export class BookmarksImpl implements Bookmarks {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -301,7 +319,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/dataConnectors.ts b/sdk/securityinsight/arm-securityinsight/src/operations/dataConnectors.ts
index ff60c1cc995f..05e5122394ec 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/dataConnectors.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/dataConnectors.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { DataConnectors } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -60,8 +61,16 @@ export class DataConnectorsImpl implements DataConnectors {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -69,11 +78,18 @@ export class DataConnectorsImpl implements DataConnectors {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: DataConnectorsListOptionalParams
+ options?: DataConnectorsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: DataConnectorsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -82,7 +98,9 @@ export class DataConnectorsImpl implements DataConnectors {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -400,7 +418,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/entities.ts b/sdk/securityinsight/arm-securityinsight/src/operations/entities.ts
index 3f01a3174daa..bb7626cae02f 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/entities.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/entities.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Entities } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -63,8 +64,16 @@ export class EntitiesImpl implements Entities {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -72,11 +81,18 @@ export class EntitiesImpl implements Entities {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: EntitiesListOptionalParams
+ options?: EntitiesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: EntitiesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -85,7 +101,9 @@ export class EntitiesImpl implements Entities {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -353,7 +371,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/entitiesRelations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/entitiesRelations.ts
index 1117b74cd510..7c7e7118b214 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/entitiesRelations.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/entitiesRelations.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { EntitiesRelations } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -59,12 +60,16 @@ export class EntitiesRelationsImpl implements EntitiesRelations {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listPagingPage(
resourceGroupName,
workspaceName,
entityId,
- options
+ options,
+ settings
);
}
};
@@ -74,16 +79,23 @@ export class EntitiesRelationsImpl implements EntitiesRelations {
resourceGroupName: string,
workspaceName: string,
entityId: string,
- options?: EntitiesRelationsListOptionalParams
+ options?: EntitiesRelationsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(
- resourceGroupName,
- workspaceName,
- entityId,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: EntitiesRelationsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ entityId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -93,7 +105,9 @@ export class EntitiesRelationsImpl implements EntitiesRelations {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -196,13 +210,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/entityQueries.ts b/sdk/securityinsight/arm-securityinsight/src/operations/entityQueries.ts
index 21190c27d569..795fdb6ece7a 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/entityQueries.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/entityQueries.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { EntityQueries } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -58,8 +59,16 @@ export class EntityQueriesImpl implements EntityQueries {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -67,11 +76,18 @@ export class EntityQueriesImpl implements EntityQueries {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: EntityQueriesListOptionalParams
+ options?: EntityQueriesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: EntityQueriesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -80,7 +96,9 @@ export class EntityQueriesImpl implements EntityQueries {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -302,7 +320,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion, Parameters.kind1],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/entityQueryTemplates.ts b/sdk/securityinsight/arm-securityinsight/src/operations/entityQueryTemplates.ts
index 51b5a4ab4e9b..e0eef1bd7e04 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/entityQueryTemplates.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/entityQueryTemplates.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { EntityQueryTemplates } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -54,8 +55,16 @@ export class EntityQueryTemplatesImpl implements EntityQueryTemplates {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -63,11 +72,18 @@ export class EntityQueryTemplatesImpl implements EntityQueryTemplates {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: EntityQueryTemplatesListOptionalParams
+ options?: EntityQueryTemplatesListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: EntityQueryTemplatesListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -76,7 +92,9 @@ export class EntityQueryTemplatesImpl implements EntityQueryTemplates {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -208,7 +226,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion, Parameters.kind2],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/fileImports.ts b/sdk/securityinsight/arm-securityinsight/src/operations/fileImports.ts
index 85d011403732..2c61c29c476c 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/fileImports.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/fileImports.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { FileImports } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -60,8 +61,16 @@ export class FileImportsImpl implements FileImports {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -69,11 +78,18 @@ export class FileImportsImpl implements FileImports {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: FileImportsListOptionalParams
+ options?: FileImportsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: FileImportsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -82,7 +98,9 @@ export class FileImportsImpl implements FileImports {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -391,13 +409,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/get.ts b/sdk/securityinsight/arm-securityinsight/src/operations/get.ts
new file mode 100644
index 000000000000..3b420b7b9785
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/get.ts
@@ -0,0 +1,75 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { Get } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import {
+ GetSingleRecommendationOptionalParams,
+ GetSingleRecommendationResponse
+} from "../models";
+
+/** Class containing Get operations. */
+export class GetImpl implements Get {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class Get class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Gets a recommendation by its id.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param options The options parameters.
+ */
+ singleRecommendation(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ options?: GetSingleRecommendationOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, recommendationId, options },
+ singleRecommendationOperationSpec
+ );
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const singleRecommendationOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations/{recommendationId}",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Recommendation
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.recommendationId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/getRecommendations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/getRecommendations.ts
new file mode 100644
index 000000000000..b354ff342f93
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/getRecommendations.ts
@@ -0,0 +1,72 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { GetRecommendations } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import {
+ GetRecommendationsListOptionalParams,
+ GetRecommendationsListResponse
+} from "../models";
+
+/** Class containing GetRecommendations operations. */
+export class GetRecommendationsImpl implements GetRecommendations {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class GetRecommendations class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Gets a list of all recommendations.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param options The options parameters.
+ */
+ list(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetRecommendationsListOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, options },
+ listOperationSpec
+ );
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const listOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.RecommendationList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/getTriggeredAnalyticsRuleRuns.ts b/sdk/securityinsight/arm-securityinsight/src/operations/getTriggeredAnalyticsRuleRuns.ts
new file mode 100644
index 000000000000..c6813493406d
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/getTriggeredAnalyticsRuleRuns.ts
@@ -0,0 +1,195 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
+import { GetTriggeredAnalyticsRuleRuns } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import {
+ TriggeredAnalyticsRuleRun,
+ GetTriggeredAnalyticsRuleRunsListNextOptionalParams,
+ GetTriggeredAnalyticsRuleRunsListOptionalParams,
+ GetTriggeredAnalyticsRuleRunsListResponse,
+ GetTriggeredAnalyticsRuleRunsListNextResponse
+} from "../models";
+
+///
+/** Class containing GetTriggeredAnalyticsRuleRuns operations. */
+export class GetTriggeredAnalyticsRuleRunsImpl
+ implements GetTriggeredAnalyticsRuleRuns {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class GetTriggeredAnalyticsRuleRuns class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Gets the triggered analytics rule runs.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param options The options parameters.
+ */
+ public list(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetTriggeredAnalyticsRuleRunsListOptionalParams
+ ): PagedAsyncIterableIterator {
+ const iter = this.listPagingAll(resourceGroupName, workspaceName, options);
+ return {
+ next() {
+ return iter.next();
+ },
+ [Symbol.asyncIterator]() {
+ return this;
+ },
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
+ }
+ };
+ }
+
+ private async *listPagingPage(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetTriggeredAnalyticsRuleRunsListOptionalParams,
+ settings?: PageSettings
+ ): AsyncIterableIterator {
+ let result: GetTriggeredAnalyticsRuleRunsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
+ while (continuationToken) {
+ result = await this._listNext(
+ resourceGroupName,
+ workspaceName,
+ continuationToken,
+ options
+ );
+ continuationToken = result.nextLink;
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
+ }
+
+ private async *listPagingAll(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetTriggeredAnalyticsRuleRunsListOptionalParams
+ ): AsyncIterableIterator {
+ for await (const page of this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options
+ )) {
+ yield* page;
+ }
+ }
+
+ /**
+ * Gets the triggered analytics rule runs.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param options The options parameters.
+ */
+ private _list(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetTriggeredAnalyticsRuleRunsListOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, options },
+ listOperationSpec
+ );
+ }
+
+ /**
+ * ListNext
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param nextLink The nextLink from the previous successful call to the List method.
+ * @param options The options parameters.
+ */
+ private _listNext(
+ resourceGroupName: string,
+ workspaceName: string,
+ nextLink: string,
+ options?: GetTriggeredAnalyticsRuleRunsListNextOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, nextLink, options },
+ listNextOperationSpec
+ );
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const listOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.TriggeredAnalyticsRuleRuns
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
+const listNextOperationSpec: coreClient.OperationSpec = {
+ path: "{nextLink}",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.TriggeredAnalyticsRuleRuns
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.nextLink
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/incidentComments.ts b/sdk/securityinsight/arm-securityinsight/src/operations/incidentComments.ts
index ae27ca7777d1..739ad280e2d9 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/incidentComments.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/incidentComments.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { IncidentComments } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -64,12 +65,16 @@ export class IncidentCommentsImpl implements IncidentComments {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listPagingPage(
resourceGroupName,
workspaceName,
incidentId,
- options
+ options,
+ settings
);
}
};
@@ -79,16 +84,23 @@ export class IncidentCommentsImpl implements IncidentComments {
resourceGroupName: string,
workspaceName: string,
incidentId: string,
- options?: IncidentCommentsListOptionalParams
+ options?: IncidentCommentsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(
- resourceGroupName,
- workspaceName,
- incidentId,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: IncidentCommentsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -98,7 +110,9 @@ export class IncidentCommentsImpl implements IncidentComments {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -361,13 +375,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/incidentRelations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/incidentRelations.ts
index c58d9e3de7af..280b5a260cd4 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/incidentRelations.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/incidentRelations.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { IncidentRelations } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -64,12 +65,16 @@ export class IncidentRelationsImpl implements IncidentRelations {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listPagingPage(
resourceGroupName,
workspaceName,
incidentId,
- options
+ options,
+ settings
);
}
};
@@ -79,16 +84,23 @@ export class IncidentRelationsImpl implements IncidentRelations {
resourceGroupName: string,
workspaceName: string,
incidentId: string,
- options?: IncidentRelationsListOptionalParams
+ options?: IncidentRelationsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(
- resourceGroupName,
- workspaceName,
- incidentId,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: IncidentRelationsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -98,7 +110,9 @@ export class IncidentRelationsImpl implements IncidentRelations {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -349,13 +363,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/incidentTasks.ts b/sdk/securityinsight/arm-securityinsight/src/operations/incidentTasks.ts
new file mode 100644
index 000000000000..fa1f14f92b19
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/incidentTasks.ts
@@ -0,0 +1,370 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
+import { IncidentTasks } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import {
+ IncidentTask,
+ IncidentTasksListNextOptionalParams,
+ IncidentTasksListOptionalParams,
+ IncidentTasksListResponse,
+ IncidentTasksGetOptionalParams,
+ IncidentTasksGetResponse,
+ IncidentTasksCreateOrUpdateOptionalParams,
+ IncidentTasksCreateOrUpdateResponse,
+ IncidentTasksDeleteOptionalParams,
+ IncidentTasksListNextResponse
+} from "../models";
+
+///
+/** Class containing IncidentTasks operations. */
+export class IncidentTasksImpl implements IncidentTasks {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class IncidentTasks class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Gets all incident tasks.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param options The options parameters.
+ */
+ public list(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ options?: IncidentTasksListOptionalParams
+ ): PagedAsyncIterableIterator {
+ const iter = this.listPagingAll(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options
+ );
+ return {
+ next() {
+ return iter.next();
+ },
+ [Symbol.asyncIterator]() {
+ return this;
+ },
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options,
+ settings
+ );
+ }
+ };
+ }
+
+ private async *listPagingPage(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ options?: IncidentTasksListOptionalParams,
+ settings?: PageSettings
+ ): AsyncIterableIterator {
+ let result: IncidentTasksListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
+ while (continuationToken) {
+ result = await this._listNext(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ continuationToken,
+ options
+ );
+ continuationToken = result.nextLink;
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
+ }
+
+ private async *listPagingAll(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ options?: IncidentTasksListOptionalParams
+ ): AsyncIterableIterator {
+ for await (const page of this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ options
+ )) {
+ yield* page;
+ }
+ }
+
+ /**
+ * Gets all incident tasks.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param options The options parameters.
+ */
+ private _list(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ options?: IncidentTasksListOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, incidentId, options },
+ listOperationSpec
+ );
+ }
+
+ /**
+ * Gets an incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param options The options parameters.
+ */
+ get(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ options?: IncidentTasksGetOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, incidentId, incidentTaskId, options },
+ getOperationSpec
+ );
+ }
+
+ /**
+ * Creates or updates the incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param incidentTask The incident task
+ * @param options The options parameters.
+ */
+ createOrUpdate(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ incidentTask: IncidentTask,
+ options?: IncidentTasksCreateOrUpdateOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroupName,
+ workspaceName,
+ incidentId,
+ incidentTaskId,
+ incidentTask,
+ options
+ },
+ createOrUpdateOperationSpec
+ );
+ }
+
+ /**
+ * Delete the incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param options The options parameters.
+ */
+ delete(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ options?: IncidentTasksDeleteOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, incidentId, incidentTaskId, options },
+ deleteOperationSpec
+ );
+ }
+
+ /**
+ * ListNext
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param nextLink The nextLink from the previous successful call to the List method.
+ * @param options The options parameters.
+ */
+ private _listNext(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ nextLink: string,
+ options?: IncidentTasksListNextOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, incidentId, nextLink, options },
+ listNextOperationSpec
+ );
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const listOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.IncidentTaskList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.incidentId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
+const getOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks/{incidentTaskId}",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.IncidentTask
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.incidentId,
+ Parameters.incidentTaskId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
+const createOrUpdateOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks/{incidentTaskId}",
+ httpMethod: "PUT",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.IncidentTask
+ },
+ 201: {
+ bodyMapper: Mappers.IncidentTask
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ requestBody: Parameters.incidentTask,
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.incidentId,
+ Parameters.incidentTaskId
+ ],
+ headerParameters: [Parameters.accept, Parameters.contentType],
+ mediaType: "json",
+ serializer
+};
+const deleteOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/incidents/{incidentId}/tasks/{incidentTaskId}",
+ httpMethod: "DELETE",
+ responses: {
+ 200: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.incidentId,
+ Parameters.incidentTaskId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
+const listNextOperationSpec: coreClient.OperationSpec = {
+ path: "{nextLink}",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.IncidentTaskList
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.nextLink,
+ Parameters.incidentId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/incidents.ts b/sdk/securityinsight/arm-securityinsight/src/operations/incidents.ts
index 3cf9b36c40ec..590556a9b541 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/incidents.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/incidents.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Incidents } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -16,15 +17,15 @@ import {
Incident,
IncidentsListNextOptionalParams,
IncidentsListOptionalParams,
+ IncidentsListResponse,
IncidentsRunPlaybookOptionalParams,
IncidentsRunPlaybookResponse,
- IncidentsListResponse,
IncidentsGetOptionalParams,
IncidentsGetResponse,
IncidentsCreateOrUpdateOptionalParams,
IncidentsCreateOrUpdateResponse,
IncidentsDeleteOptionalParams,
- TeamProperties,
+ TeamInformation,
IncidentsCreateTeamOptionalParams,
IncidentsCreateTeamResponse,
IncidentsListAlertsOptionalParams,
@@ -68,8 +69,16 @@ export class IncidentsImpl implements Incidents {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -77,11 +86,18 @@ export class IncidentsImpl implements Incidents {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: IncidentsListOptionalParams
+ options?: IncidentsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: IncidentsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -90,7 +106,9 @@ export class IncidentsImpl implements Incidents {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -216,7 +234,7 @@ export class IncidentsImpl implements Incidents {
resourceGroupName: string,
workspaceName: string,
incidentId: string,
- teamProperties: TeamProperties,
+ teamProperties: TeamInformation,
options?: IncidentsCreateTeamOptionalParams
): Promise {
return this.client.sendOperationRequest(
@@ -537,13 +555,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/index.ts b/sdk/securityinsight/arm-securityinsight/src/operations/index.ts
index 6f66d834535e..0fb0c9d731c9 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/index.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/index.ts
@@ -9,6 +9,9 @@
export * from "./alertRules";
export * from "./actions";
export * from "./alertRuleTemplates";
+export * from "./triggeredAnalyticsRuleRunOperations";
+export * from "./getTriggeredAnalyticsRuleRuns";
+export * from "./alertRuleOperations";
export * from "./automationRules";
export * from "./incidents";
export * from "./bookmarks";
@@ -25,9 +28,13 @@ export * from "./entityQueryTemplates";
export * from "./fileImports";
export * from "./incidentComments";
export * from "./incidentRelations";
+export * from "./incidentTasks";
export * from "./metadata";
export * from "./officeConsents";
export * from "./sentinelOnboardingStates";
+export * from "./getRecommendations";
+export * from "./get";
+export * from "./update";
export * from "./securityMLAnalyticsSettings";
export * from "./productSettings";
export * from "./sourceControlOperations";
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/metadata.ts b/sdk/securityinsight/arm-securityinsight/src/operations/metadata.ts
index be14e682404d..13eb2ca4e7df 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/metadata.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/metadata.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Metadata } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -60,8 +61,16 @@ export class MetadataImpl implements Metadata {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -69,11 +78,18 @@ export class MetadataImpl implements Metadata {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: MetadataListOptionalParams
+ options?: MetadataListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: MetadataListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -82,7 +98,9 @@ export class MetadataImpl implements Metadata {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -362,13 +380,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skip
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/officeConsents.ts b/sdk/securityinsight/arm-securityinsight/src/operations/officeConsents.ts
index 28d1a51e8097..ee7a70418524 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/officeConsents.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/officeConsents.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { OfficeConsents } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -55,8 +56,16 @@ export class OfficeConsentsImpl implements OfficeConsents {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -64,11 +73,18 @@ export class OfficeConsentsImpl implements OfficeConsents {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: OfficeConsentsListOptionalParams
+ options?: OfficeConsentsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: OfficeConsentsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -77,7 +93,9 @@ export class OfficeConsentsImpl implements OfficeConsents {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -250,7 +268,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/operations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/operations.ts
index c4723841b70a..bb5947816a4f 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/operations.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/operations.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Operations } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -48,22 +49,34 @@ export class OperationsImpl implements Operations {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(options, settings);
}
};
}
private async *listPagingPage(
- options?: OperationsListOptionalParams
+ options?: OperationsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: OperationsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(continuationToken, options);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -130,7 +143,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [Parameters.$host, Parameters.nextLink],
headerParameters: [Parameters.accept],
serializer
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/securityMLAnalyticsSettings.ts b/sdk/securityinsight/arm-securityinsight/src/operations/securityMLAnalyticsSettings.ts
index 3b4bae234a8e..e44c11eda5e4 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/securityMLAnalyticsSettings.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/securityMLAnalyticsSettings.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { SecurityMLAnalyticsSettings } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -58,8 +59,16 @@ export class SecurityMLAnalyticsSettingsImpl
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -67,11 +76,18 @@ export class SecurityMLAnalyticsSettingsImpl
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: SecurityMLAnalyticsSettingsListOptionalParams
+ options?: SecurityMLAnalyticsSettingsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: SecurityMLAnalyticsSettingsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -80,7 +96,9 @@ export class SecurityMLAnalyticsSettingsImpl
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -308,7 +326,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/sourceControlOperations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/sourceControlOperations.ts
index 1337fe8b5caa..3ec1025708df 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/sourceControlOperations.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/sourceControlOperations.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { SourceControlOperations } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -60,12 +61,16 @@ export class SourceControlOperationsImpl implements SourceControlOperations {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listRepositoriesPagingPage(
resourceGroupName,
workspaceName,
repoType,
- options
+ options,
+ settings
);
}
};
@@ -75,16 +80,23 @@ export class SourceControlOperationsImpl implements SourceControlOperations {
resourceGroupName: string,
workspaceName: string,
repoType: RepoType,
- options?: SourceControlListRepositoriesOptionalParams
+ options?: SourceControlListRepositoriesOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._listRepositories(
- resourceGroupName,
- workspaceName,
- repoType,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: SourceControlListRepositoriesResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._listRepositories(
+ resourceGroupName,
+ workspaceName,
+ repoType,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listRepositoriesNext(
resourceGroupName,
@@ -94,7 +106,9 @@ export class SourceControlOperationsImpl implements SourceControlOperations {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -192,7 +206,6 @@ const listRepositoriesNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/sourceControls.ts b/sdk/securityinsight/arm-securityinsight/src/operations/sourceControls.ts
index 4fc9a379dd59..ca0870585015 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/sourceControls.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/sourceControls.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { SourceControls } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -57,8 +58,16 @@ export class SourceControlsImpl implements SourceControls {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -66,11 +75,18 @@ export class SourceControlsImpl implements SourceControls {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: SourceControlsListOptionalParams
+ options?: SourceControlsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: SourceControlsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -79,7 +95,9 @@ export class SourceControlsImpl implements SourceControls {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -307,7 +325,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicator.ts b/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicator.ts
index 38d88c457010..e753b93e1b87 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicator.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicator.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { ThreatIntelligenceIndicator } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -17,6 +18,7 @@ import {
ThreatIntelligenceFilteringCriteria,
ThreatIntelligenceIndicatorQueryIndicatorsNextOptionalParams,
ThreatIntelligenceIndicatorQueryIndicatorsOptionalParams,
+ ThreatIntelligenceIndicatorQueryIndicatorsResponse,
ThreatIntelligenceIndicatorModel,
ThreatIntelligenceIndicatorCreateIndicatorOptionalParams,
ThreatIntelligenceIndicatorCreateIndicatorResponse,
@@ -25,7 +27,6 @@ import {
ThreatIntelligenceIndicatorCreateOptionalParams,
ThreatIntelligenceIndicatorCreateResponse,
ThreatIntelligenceIndicatorDeleteOptionalParams,
- ThreatIntelligenceIndicatorQueryIndicatorsResponse,
ThreatIntelligenceAppendTags,
ThreatIntelligenceIndicatorAppendTagsOptionalParams,
ThreatIntelligenceIndicatorReplaceTagsOptionalParams,
@@ -74,12 +75,16 @@ export class ThreatIntelligenceIndicatorImpl
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.queryIndicatorsPagingPage(
resourceGroupName,
workspaceName,
threatIntelligenceFilteringCriteria,
- options
+ options,
+ settings
);
}
};
@@ -89,16 +94,23 @@ export class ThreatIntelligenceIndicatorImpl
resourceGroupName: string,
workspaceName: string,
threatIntelligenceFilteringCriteria: ThreatIntelligenceFilteringCriteria,
- options?: ThreatIntelligenceIndicatorQueryIndicatorsOptionalParams
+ options?: ThreatIntelligenceIndicatorQueryIndicatorsOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._queryIndicators(
- resourceGroupName,
- workspaceName,
- threatIntelligenceFilteringCriteria,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: ThreatIntelligenceIndicatorQueryIndicatorsResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._queryIndicators(
+ resourceGroupName,
+ workspaceName,
+ threatIntelligenceFilteringCriteria,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._queryIndicatorsNext(
resourceGroupName,
@@ -108,7 +120,9 @@ export class ThreatIntelligenceIndicatorImpl
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -512,7 +526,6 @@ const queryIndicatorsNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicators.ts b/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicators.ts
index af9eb6c60f9b..e91f2583c13f 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicators.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/threatIntelligenceIndicators.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { ThreatIntelligenceIndicators } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -53,8 +54,16 @@ export class ThreatIntelligenceIndicatorsImpl
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -62,11 +71,18 @@ export class ThreatIntelligenceIndicatorsImpl
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: ThreatIntelligenceIndicatorsListOptionalParams
+ options?: ThreatIntelligenceIndicatorsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: ThreatIntelligenceIndicatorsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -75,7 +91,9 @@ export class ThreatIntelligenceIndicatorsImpl
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -171,13 +189,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [
- Parameters.apiVersion,
- Parameters.filter,
- Parameters.orderby,
- Parameters.top,
- Parameters.skipToken
- ],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/triggeredAnalyticsRuleRunOperations.ts b/sdk/securityinsight/arm-securityinsight/src/operations/triggeredAnalyticsRuleRunOperations.ts
new file mode 100644
index 000000000000..2c3565718cc0
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/triggeredAnalyticsRuleRunOperations.ts
@@ -0,0 +1,76 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { TriggeredAnalyticsRuleRunOperations } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import {
+ TriggeredAnalyticsRuleRunGetOptionalParams,
+ TriggeredAnalyticsRuleRunGetResponse
+} from "../models";
+
+/** Class containing TriggeredAnalyticsRuleRunOperations operations. */
+export class TriggeredAnalyticsRuleRunOperationsImpl
+ implements TriggeredAnalyticsRuleRunOperations {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class TriggeredAnalyticsRuleRunOperations class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Gets the triggered analytics rule run.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleRunId the triggered rule id
+ * @param options The options parameters.
+ */
+ get(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleRunId: string,
+ options?: TriggeredAnalyticsRuleRunGetOptionalParams
+ ): Promise {
+ return this.client.sendOperationRequest(
+ { resourceGroupName, workspaceName, ruleRunId, options },
+ getOperationSpec
+ );
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const getOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/triggeredAnalyticsRuleRuns/{ruleRunId}",
+ httpMethod: "GET",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.TriggeredAnalyticsRuleRun
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.ruleRunId
+ ],
+ headerParameters: [Parameters.accept],
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/update.ts b/sdk/securityinsight/arm-securityinsight/src/operations/update.ts
new file mode 100644
index 000000000000..cb73ea25842d
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/update.ts
@@ -0,0 +1,173 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { Update } from "../operationsInterfaces";
+import * as coreClient from "@azure/core-client";
+import * as Mappers from "../models/mappers";
+import * as Parameters from "../models/parameters";
+import { SecurityInsights } from "../securityInsights";
+import { PollerLike, PollOperationState, LroEngine } from "@azure/core-lro";
+import { LroImpl } from "../lroImpl";
+import {
+ RecommendationPatch,
+ UpdateRecommendationOptionalParams,
+ UpdateRecommendationResponse
+} from "../models";
+
+/** Class containing Update operations. */
+export class UpdateImpl implements Update {
+ private readonly client: SecurityInsights;
+
+ /**
+ * Initialize a new instance of the class Update class.
+ * @param client Reference to the service client
+ */
+ constructor(client: SecurityInsights) {
+ this.client = client;
+ }
+
+ /**
+ * Patch a recommendation.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param recommendationPatch Recommendation Fields to Update.
+ * @param options The options parameters.
+ */
+ async beginRecommendation(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ recommendationPatch: RecommendationPatch[],
+ options?: UpdateRecommendationOptionalParams
+ ): Promise<
+ PollerLike<
+ PollOperationState,
+ UpdateRecommendationResponse
+ >
+ > {
+ const directSendOperation = async (
+ args: coreClient.OperationArguments,
+ spec: coreClient.OperationSpec
+ ): Promise => {
+ return this.client.sendOperationRequest(args, spec);
+ };
+ const sendOperation = async (
+ args: coreClient.OperationArguments,
+ spec: coreClient.OperationSpec
+ ) => {
+ let currentRawResponse:
+ | coreClient.FullOperationResponse
+ | undefined = undefined;
+ const providedCallback = args.options?.onResponse;
+ const callback: coreClient.RawResponseCallback = (
+ rawResponse: coreClient.FullOperationResponse,
+ flatResponse: unknown
+ ) => {
+ currentRawResponse = rawResponse;
+ providedCallback?.(rawResponse, flatResponse);
+ };
+ const updatedArgs = {
+ ...args,
+ options: {
+ ...args.options,
+ onResponse: callback
+ }
+ };
+ const flatResponse = await directSendOperation(updatedArgs, spec);
+ return {
+ flatResponse,
+ rawResponse: {
+ statusCode: currentRawResponse!.status,
+ body: currentRawResponse!.parsedBody,
+ headers: currentRawResponse!.headers.toJSON()
+ }
+ };
+ };
+
+ const lro = new LroImpl(
+ sendOperation,
+ {
+ resourceGroupName,
+ workspaceName,
+ recommendationId,
+ recommendationPatch,
+ options
+ },
+ recommendationOperationSpec
+ );
+ const poller = new LroEngine(lro, {
+ resumeFrom: options?.resumeFrom,
+ intervalInMs: options?.updateIntervalInMs
+ });
+ await poller.poll();
+ return poller;
+ }
+
+ /**
+ * Patch a recommendation.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param recommendationPatch Recommendation Fields to Update.
+ * @param options The options parameters.
+ */
+ async beginRecommendationAndWait(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ recommendationPatch: RecommendationPatch[],
+ options?: UpdateRecommendationOptionalParams
+ ): Promise {
+ const poller = await this.beginRecommendation(
+ resourceGroupName,
+ workspaceName,
+ recommendationId,
+ recommendationPatch,
+ options
+ );
+ return poller.pollUntilDone();
+ }
+}
+// Operation Specifications
+const serializer = coreClient.createSerializer(Mappers, /* isXml */ false);
+
+const recommendationOperationSpec: coreClient.OperationSpec = {
+ path:
+ "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OperationalInsights/workspaces/{workspaceName}/providers/Microsoft.SecurityInsights/recommendations/{recommendationId}",
+ httpMethod: "PATCH",
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Recommendation
+ },
+ 201: {
+ bodyMapper: Mappers.Recommendation
+ },
+ 202: {
+ bodyMapper: Mappers.Recommendation
+ },
+ 204: {
+ bodyMapper: Mappers.Recommendation
+ },
+ default: {
+ bodyMapper: Mappers.CloudError
+ }
+ },
+ requestBody: Parameters.recommendationPatch,
+ queryParameters: [Parameters.apiVersion],
+ urlParameters: [
+ Parameters.$host,
+ Parameters.subscriptionId,
+ Parameters.resourceGroupName,
+ Parameters.workspaceName,
+ Parameters.recommendationId
+ ],
+ headerParameters: [Parameters.accept, Parameters.contentType],
+ mediaType: "json",
+ serializer
+};
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/watchlistItems.ts b/sdk/securityinsight/arm-securityinsight/src/operations/watchlistItems.ts
index 265d8e1a7791..666a4319eeb6 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/watchlistItems.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/watchlistItems.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { WatchlistItems } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -64,12 +65,16 @@ export class WatchlistItemsImpl implements WatchlistItems {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
return this.listPagingPage(
resourceGroupName,
workspaceName,
watchlistAlias,
- options
+ options,
+ settings
);
}
};
@@ -79,16 +84,23 @@ export class WatchlistItemsImpl implements WatchlistItems {
resourceGroupName: string,
workspaceName: string,
watchlistAlias: string,
- options?: WatchlistItemsListOptionalParams
+ options?: WatchlistItemsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(
- resourceGroupName,
- workspaceName,
- watchlistAlias,
- options
- );
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: WatchlistItemsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(
+ resourceGroupName,
+ workspaceName,
+ watchlistAlias,
+ options
+ );
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -98,7 +110,9 @@ export class WatchlistItemsImpl implements WatchlistItems {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -355,7 +369,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion, Parameters.skipToken],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operations/watchlists.ts b/sdk/securityinsight/arm-securityinsight/src/operations/watchlists.ts
index 6b21e6d9455d..3a83914f06c7 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operations/watchlists.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operations/watchlists.ts
@@ -6,7 +6,8 @@
* Changes may cause incorrect behavior and will be lost if the code is regenerated.
*/
-import { PagedAsyncIterableIterator } from "@azure/core-paging";
+import { PagedAsyncIterableIterator, PageSettings } from "@azure/core-paging";
+import { setContinuationToken } from "../pagingHelper";
import { Watchlists } from "../operationsInterfaces";
import * as coreClient from "@azure/core-client";
import * as Mappers from "../models/mappers";
@@ -58,8 +59,16 @@ export class WatchlistsImpl implements Watchlists {
[Symbol.asyncIterator]() {
return this;
},
- byPage: () => {
- return this.listPagingPage(resourceGroupName, workspaceName, options);
+ byPage: (settings?: PageSettings) => {
+ if (settings?.maxPageSize) {
+ throw new Error("maxPageSize is not supported by this operation.");
+ }
+ return this.listPagingPage(
+ resourceGroupName,
+ workspaceName,
+ options,
+ settings
+ );
}
};
}
@@ -67,11 +76,18 @@ export class WatchlistsImpl implements Watchlists {
private async *listPagingPage(
resourceGroupName: string,
workspaceName: string,
- options?: WatchlistsListOptionalParams
+ options?: WatchlistsListOptionalParams,
+ settings?: PageSettings
): AsyncIterableIterator {
- let result = await this._list(resourceGroupName, workspaceName, options);
- yield result.value || [];
- let continuationToken = result.nextLink;
+ let result: WatchlistsListResponse;
+ let continuationToken = settings?.continuationToken;
+ if (!continuationToken) {
+ result = await this._list(resourceGroupName, workspaceName, options);
+ let page = result.value || [];
+ continuationToken = result.nextLink;
+ setContinuationToken(page, continuationToken);
+ yield page;
+ }
while (continuationToken) {
result = await this._listNext(
resourceGroupName,
@@ -80,7 +96,9 @@ export class WatchlistsImpl implements Watchlists {
options
);
continuationToken = result.nextLink;
- yield result.value || [];
+ let page = result.value || [];
+ setContinuationToken(page, continuationToken);
+ yield page;
}
}
@@ -310,7 +328,6 @@ const listNextOperationSpec: coreClient.OperationSpec = {
bodyMapper: Mappers.CloudError
}
},
- queryParameters: [Parameters.apiVersion, Parameters.skipToken],
urlParameters: [
Parameters.$host,
Parameters.subscriptionId,
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/alertRuleOperations.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/alertRuleOperations.ts
new file mode 100644
index 000000000000..5b13b7aa8cb5
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/alertRuleOperations.ts
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PollerLike, PollOperationState } from "@azure/core-lro";
+import {
+ AnalyticsRuleRunTrigger,
+ AlertRuleTriggerRuleRunOptionalParams,
+ AlertRuleTriggerRuleRunResponse
+} from "../models";
+
+/** Interface representing a AlertRuleOperations. */
+export interface AlertRuleOperations {
+ /**
+ * triggers analytics rule run
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleId Alert rule ID
+ * @param analyticsRuleRunTriggerParameter The Analytics Rule Run Trigger parameter
+ * @param options The options parameters.
+ */
+ beginTriggerRuleRun(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleId: string,
+ analyticsRuleRunTriggerParameter: AnalyticsRuleRunTrigger,
+ options?: AlertRuleTriggerRuleRunOptionalParams
+ ): Promise<
+ PollerLike<
+ PollOperationState,
+ AlertRuleTriggerRuleRunResponse
+ >
+ >;
+ /**
+ * triggers analytics rule run
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleId Alert rule ID
+ * @param analyticsRuleRunTriggerParameter The Analytics Rule Run Trigger parameter
+ * @param options The options parameters.
+ */
+ beginTriggerRuleRunAndWait(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleId: string,
+ analyticsRuleRunTriggerParameter: AnalyticsRuleRunTrigger,
+ options?: AlertRuleTriggerRuleRunOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/get.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/get.ts
new file mode 100644
index 000000000000..8384596c454c
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/get.ts
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 {
+ GetSingleRecommendationOptionalParams,
+ GetSingleRecommendationResponse
+} from "../models";
+
+/** Interface representing a Get. */
+export interface Get {
+ /**
+ * Gets a recommendation by its id.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param options The options parameters.
+ */
+ singleRecommendation(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ options?: GetSingleRecommendationOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getRecommendations.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getRecommendations.ts
new file mode 100644
index 000000000000..3c68d7feb9c2
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getRecommendations.ts
@@ -0,0 +1,27 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 {
+ GetRecommendationsListOptionalParams,
+ GetRecommendationsListResponse
+} from "../models";
+
+/** Interface representing a GetRecommendations. */
+export interface GetRecommendations {
+ /**
+ * Gets a list of all recommendations.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param options The options parameters.
+ */
+ list(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetRecommendationsListOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getTriggeredAnalyticsRuleRuns.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getTriggeredAnalyticsRuleRuns.ts
new file mode 100644
index 000000000000..f1c077beeeaa
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/getTriggeredAnalyticsRuleRuns.ts
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PagedAsyncIterableIterator } from "@azure/core-paging";
+import {
+ TriggeredAnalyticsRuleRun,
+ GetTriggeredAnalyticsRuleRunsListOptionalParams
+} from "../models";
+
+///
+/** Interface representing a GetTriggeredAnalyticsRuleRuns. */
+export interface GetTriggeredAnalyticsRuleRuns {
+ /**
+ * Gets the triggered analytics rule runs.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param options The options parameters.
+ */
+ list(
+ resourceGroupName: string,
+ workspaceName: string,
+ options?: GetTriggeredAnalyticsRuleRunsListOptionalParams
+ ): PagedAsyncIterableIterator;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidentTasks.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidentTasks.ts
new file mode 100644
index 000000000000..68e3fc281f99
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidentTasks.ts
@@ -0,0 +1,83 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PagedAsyncIterableIterator } from "@azure/core-paging";
+import {
+ IncidentTask,
+ IncidentTasksListOptionalParams,
+ IncidentTasksGetOptionalParams,
+ IncidentTasksGetResponse,
+ IncidentTasksCreateOrUpdateOptionalParams,
+ IncidentTasksCreateOrUpdateResponse,
+ IncidentTasksDeleteOptionalParams
+} from "../models";
+
+///
+/** Interface representing a IncidentTasks. */
+export interface IncidentTasks {
+ /**
+ * Gets all incident tasks.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param options The options parameters.
+ */
+ list(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ options?: IncidentTasksListOptionalParams
+ ): PagedAsyncIterableIterator;
+ /**
+ * Gets an incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param options The options parameters.
+ */
+ get(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ options?: IncidentTasksGetOptionalParams
+ ): Promise;
+ /**
+ * Creates or updates the incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param incidentTask The incident task
+ * @param options The options parameters.
+ */
+ createOrUpdate(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ incidentTask: IncidentTask,
+ options?: IncidentTasksCreateOrUpdateOptionalParams
+ ): Promise;
+ /**
+ * Delete the incident task.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param incidentId Incident ID
+ * @param incidentTaskId Incident task ID
+ * @param options The options parameters.
+ */
+ delete(
+ resourceGroupName: string,
+ workspaceName: string,
+ incidentId: string,
+ incidentTaskId: string,
+ options?: IncidentTasksDeleteOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidents.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidents.ts
index 18695a4f8cc7..300c8af1bbdc 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidents.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/incidents.ts
@@ -17,7 +17,7 @@ import {
IncidentsCreateOrUpdateOptionalParams,
IncidentsCreateOrUpdateResponse,
IncidentsDeleteOptionalParams,
- TeamProperties,
+ TeamInformation,
IncidentsCreateTeamOptionalParams,
IncidentsCreateTeamResponse,
IncidentsListAlertsOptionalParams,
@@ -109,7 +109,7 @@ export interface Incidents {
resourceGroupName: string,
workspaceName: string,
incidentId: string,
- teamProperties: TeamProperties,
+ teamProperties: TeamInformation,
options?: IncidentsCreateTeamOptionalParams
): Promise;
/**
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/index.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/index.ts
index 6f66d834535e..0fb0c9d731c9 100644
--- a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/index.ts
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/index.ts
@@ -9,6 +9,9 @@
export * from "./alertRules";
export * from "./actions";
export * from "./alertRuleTemplates";
+export * from "./triggeredAnalyticsRuleRunOperations";
+export * from "./getTriggeredAnalyticsRuleRuns";
+export * from "./alertRuleOperations";
export * from "./automationRules";
export * from "./incidents";
export * from "./bookmarks";
@@ -25,9 +28,13 @@ export * from "./entityQueryTemplates";
export * from "./fileImports";
export * from "./incidentComments";
export * from "./incidentRelations";
+export * from "./incidentTasks";
export * from "./metadata";
export * from "./officeConsents";
export * from "./sentinelOnboardingStates";
+export * from "./getRecommendations";
+export * from "./get";
+export * from "./update";
export * from "./securityMLAnalyticsSettings";
export * from "./productSettings";
export * from "./sourceControlOperations";
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/triggeredAnalyticsRuleRunOperations.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/triggeredAnalyticsRuleRunOperations.ts
new file mode 100644
index 000000000000..5447cc5462a3
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/triggeredAnalyticsRuleRunOperations.ts
@@ -0,0 +1,29 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 {
+ TriggeredAnalyticsRuleRunGetOptionalParams,
+ TriggeredAnalyticsRuleRunGetResponse
+} from "../models";
+
+/** Interface representing a TriggeredAnalyticsRuleRunOperations. */
+export interface TriggeredAnalyticsRuleRunOperations {
+ /**
+ * Gets the triggered analytics rule run.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param ruleRunId the triggered rule id
+ * @param options The options parameters.
+ */
+ get(
+ resourceGroupName: string,
+ workspaceName: string,
+ ruleRunId: string,
+ options?: TriggeredAnalyticsRuleRunGetOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/update.ts b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/update.ts
new file mode 100644
index 000000000000..af860bcdf8e5
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/operationsInterfaces/update.ts
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the 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 { PollerLike, PollOperationState } from "@azure/core-lro";
+import {
+ RecommendationPatch,
+ UpdateRecommendationOptionalParams,
+ UpdateRecommendationResponse
+} from "../models";
+
+/** Interface representing a Update. */
+export interface Update {
+ /**
+ * Patch a recommendation.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param recommendationPatch Recommendation Fields to Update.
+ * @param options The options parameters.
+ */
+ beginRecommendation(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ recommendationPatch: RecommendationPatch[],
+ options?: UpdateRecommendationOptionalParams
+ ): Promise<
+ PollerLike<
+ PollOperationState,
+ UpdateRecommendationResponse
+ >
+ >;
+ /**
+ * Patch a recommendation.
+ * @param resourceGroupName The name of the resource group. The name is case insensitive.
+ * @param workspaceName The name of the workspace.
+ * @param recommendationId Recommendation Id.
+ * @param recommendationPatch Recommendation Fields to Update.
+ * @param options The options parameters.
+ */
+ beginRecommendationAndWait(
+ resourceGroupName: string,
+ workspaceName: string,
+ recommendationId: string,
+ recommendationPatch: RecommendationPatch[],
+ options?: UpdateRecommendationOptionalParams
+ ): Promise;
+}
diff --git a/sdk/securityinsight/arm-securityinsight/src/pagingHelper.ts b/sdk/securityinsight/arm-securityinsight/src/pagingHelper.ts
new file mode 100644
index 000000000000..269a2b9814b5
--- /dev/null
+++ b/sdk/securityinsight/arm-securityinsight/src/pagingHelper.ts
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) Microsoft Corporation.
+ * Licensed under the MIT License.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */
+
+export interface PageInfo {
+ continuationToken?: string;
+}
+
+const pageMap = new WeakMap