diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/DeletePlaybookConfiguration_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/DeletePlaybookConfiguration_example.json new file mode 100644 index 000000000000..35d5367809ef --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/DeletePlaybookConfiguration_example.json @@ -0,0 +1,12 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "20ff7fc3-e762-44dd-bd96-b71116dcdc23", + "resourceGroupName": "myRg", + "playbookConfigurationName": "myPlaybookConfigName" + }, + "responses": { + "204": { + } + } +} \ No newline at end of file diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationResourceGroup_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationResourceGroup_example.json new file mode 100644 index 000000000000..757a31db78f0 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationResourceGroup_example.json @@ -0,0 +1,68 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "resourceGroupName": "exampleResourceGroup", + "playbookConfigurationName": "examplePlaybookConfiguration" + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + } + ] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsResourceGroup_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsResourceGroup_example.json new file mode 100644 index 000000000000..2c5e2c45cdba --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsResourceGroup_example.json @@ -0,0 +1,71 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "resourceGroupName": "exampleResourceGroup" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri1.com" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri2.com" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsSubscription_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsSubscription_example.json new file mode 100644 index 000000000000..dc5ea975c16a --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/GetPlaybookConfigurationsSubscription_example.json @@ -0,0 +1,70 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982" + }, + "responses": { + "200": { + "body": { + "value": [ + { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri1.com" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri2.com" + } + ] + } + } + ] + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PatchPlaybookConfiguration_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PatchPlaybookConfiguration_example.json new file mode 100644 index 000000000000..d30f3dddbe23 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PatchPlaybookConfiguration_example.json @@ -0,0 +1,122 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "playbookConfigurationName": "examplePlaybookConfiguration", + "resourceGroupName": "exampleResourceGroup", + "PlaybookConfiguration": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": { + "ScenarioName" : "ExampleScenario" + }, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri1.com" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri2.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": { + "ScenarioName" : "ExampleScenario" + }, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + } + ] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PutPlaybookConfiguration_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PutPlaybookConfiguration_example.json new file mode 100644 index 000000000000..f8d1962cac63 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/PutPlaybookConfiguration_example.json @@ -0,0 +1,176 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "playbookConfigurationName": "examplePlaybookConfiguration", + "resourceGroupName": "exampleResourceGroup", + "PlaybookConfiguration": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri1.com" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri2.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + } + ] + } + } + }, + "201": { + "body": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "(This value contains a secret and will not be retrieved)" + } + ] + } + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/ValidatePlaybookConfiguration_example.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/ValidatePlaybookConfiguration_example.json new file mode 100644 index 000000000000..2aa89b2228bf --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/examples/PlaybookConfigurations/ValidatePlaybookConfiguration_example.json @@ -0,0 +1,72 @@ +{ + "parameters": { + "api-version": "2019-01-01-preview", + "subscriptionId": "e4272367-5645-4c4e-9c67-3b74b59a6982", + "playbookConfigurationName": "examplePlaybookConfiguration", + "resourceGroupName": "exampleResourceGroup", + "PlaybookConfiguration": { + "id": "/subscriptions/e4272367-5645-4c4e-9c67-3b74b59a6982/resourceGroups/exampleResourceGroup/providers/Microsoft.Security/playbookConfigurations/examplePlaybookConfiguration", + "name": "examplePlaybookConfiguration", + "type": "Microsoft.Security/playbookConfigurations", + "location": "Central US", + "tags": {}, + "properties": { + "description": "An example of a playbook configuration that triggers two LogicApp resources (myTest1 and myTest2) on any security assessment of type customAssessment", + "isEnabled": true, + "metadata": { + "createdDateTimeUtc": "2019-03-27T08:43:54.5755094Z", + "createdBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72", + "lastUpdatedDateTimeUtc": "2019-03-28T08:43:54.5755094Z", + "lastUpdatedBy": "2c429ed8-089f-42aa-9bb9-92312b8c9f72" + }, + "scopes": [ + { + "description": "A description that helps to identify this scope - for example: security assessments that relate to the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26" + }, + { + "description": "A description that help to identify this scope - for example: security assessments that relate to the resource group myResourceGroup within the subscription 212f9889-769e-45ae-ab43-6da33674bd26", + "scopePath": "/subscriptions/212f9889-769e-45ae-ab43-6da33674bd26/resourceGroups/myResourceGroup" + } + ], + "sources": [ + { + "eventSource": "AscAssessments", + "ruleSets": [ + { + "rules": [ + { + "propertyJPath": "$.Entity.AssessmentType", + "propertyType": "string", + "expectedValue": "customAssessment", + "operator": "EqualsIgnoreCase" + } + ] + } + ] + } + ], + "actions": [ + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest1", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri1.com" + }, + { + "logicAppResourceId": "/subscriptions/e54a4a18-5b94-4f90-9471-bd3decad8a2e/resourceGroups/sample/providers/Microsoft.Logic/workflows/MyTest2", + "actionType": "LogicApp", + "uri": "https://exampleTriggerUri2.com" + } + ] + } + } + }, + "responses": { + "200": { + "body": { + "isValid": true, + "message": "" + } + } + } +} diff --git a/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/playbookConfigurations.json b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/playbookConfigurations.json new file mode 100644 index 000000000000..07880a039ce2 --- /dev/null +++ b/specification/security/resource-manager/Microsoft.Security/preview/2019-01-01-preview/playbookConfigurations.json @@ -0,0 +1,618 @@ +{ + "swagger": "2.0", + "info": { + "title": "Security Center", + "description": "API spec for Microsoft.Security (Azure Security Center) resource provider", + "version": "2019-01-01-preview" + }, + "host": "management.azure.com", + "schemes": ["https"], + "consumes": ["application/json"], + "produces": ["application/json"], + "security": [{ + "azure_auth": ["user_impersonation"] + }], + "securityDefinitions": { + "azure_auth": { + "type": "oauth2", + "authorizationUrl": "https://login.microsoftonline.com/common/oauth2/authorize", + "flow": "implicit", + "description": "Azure Active Directory OAuth2 Flow", + "scopes": { + "user_impersonation": "impersonate your user account" + } + } + }, + "paths": { + "/subscriptions/{subscriptionId}/providers/Microsoft.Security/playbookConfigurations": { + "get": { + "x-ms-examples": { + "Get playbook configurations of subscription": { + "$ref": "./examples/PlaybookConfigurations/GetPlaybookConfigurationsSubscription_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Get all playbook configurations in a subscription.", + "operationId": "PlaybookConfigurations_List", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/playbookConfigurations": { + "get": { + "x-ms-examples": { + "Get playbook configurations of a single resource group": { + "$ref": "./examples/PlaybookConfigurations/GetPlaybookConfigurationsResourceGroup_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Get all playbook configurations in a resource group.", + "operationId": "PlaybookConfigurations_ListByResourceGroup", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfigurationList" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + }, + "x-ms-pageable": { + "nextLinkName": "nextLink" + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/playbookConfigurations/{playbookConfigurationName}": { + "get": { + "x-ms-examples": { + "Get a single playbook configuration details": { + "$ref": "./examples/PlaybookConfigurations/GetPlaybookConfigurationResourceGroup_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Get the details of a playbook configuration.", + "operationId": "PlaybookConfigurations_Get", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationName" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "put": { + "x-ms-examples": { + "Create or update a single playbook configuration": { + "$ref": "./examples/PlaybookConfigurations/PutPlaybookConfiguration_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Create or update a playbook configuration. If a playbook configuration is already created and a subsequent create request is issued with different properties, the playbook configuration properties will be updated.", + "operationId": "PlaybookConfigurations_CreateOrUpdate", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationInBody" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfiguration" + } + }, + "201": { + "description": "Created", + "schema": { + "$ref": "#/definitions/PlaybookConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "patch": { + "x-ms-examples": { + "Create or update a single playbook configuration": { + "$ref": "./examples/PlaybookConfigurations/PatchPlaybookConfiguration_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Patch an existing playbook configuration. Supports only Tags", + "operationId": "PlaybookConfigurations_Patch", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationInBody" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfiguration" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + }, + "delete": { + "x-ms-examples": { + "Delete a single playbook configuration": { + "$ref": "./examples/PlaybookConfigurations/DeletePlaybookConfiguration_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "operationId": "PlaybookConfigurations_Delete", + "description": "Delete a playbook configuration.", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationName" + } + ], + "responses": { + "204": { + "description": "NoContent" + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + }, + "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/playbookConfigurations/{playbookConfigurationName}/validate": { + "post": { + "x-ms-examples": { + "Validate the playbook configuration model before create or update": { + "$ref": "./examples/PlaybookConfigurations/ValidatePlaybookConfiguration_example.json" + } + }, + "tags": ["PlaybookConfigurations"], + "description": "Validate the playbook configuration model before create or update. Any validation errors are returned to the client.", + "operationId": "PlaybookConfigurations_Validate", + "parameters": [{ + "$ref": "../../../common/v1/types.json#/parameters/ApiVersion" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/SubscriptionId" + }, + { + "$ref": "../../../common/v1/types.json#/parameters/ResourceGroupName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationName" + }, + { + "$ref": "#/parameters/PlaybookConfigurationInBody" + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/PlaybookConfigurationValidationStatus" + } + }, + "default": { + "description": "Error response describing why the operation failed.", + "schema": { + "$ref": "../../../common/v1/types.json#/definitions/CloudError" + } + } + } + } + } + }, + "definitions": { + "PlaybookConfigurationList": { + "description": "List of playbook configurations response.", + "required": ["value"], + "properties": { + "value": { + "type": "array", + "description": "The list of playbook configurations under the given scope.", + "items": { + "$ref": "#/definitions/PlaybookConfiguration" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "PlaybookConfiguration": { + "type": "object", + "description": "The playbook configuration resource.", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "description": "Playbook configuration data", + "$ref": "#/definitions/PlaybookConfigurationProperties" + } + }, + "allOf": [{ + "$ref": "../../../common/v1/types.json#/definitions/TrackedResource" + }] + }, + "PlaybookConfigurationProperties": { + "type": "object", + "description": "The playbook configuration data.", + "properties": { + "description": { + "type": "string", + "description": "The playbook configuration description." + }, + "isEnabled": { + "type": "boolean", + "description": "Indicates whether the playbook configuration is enabled." + }, + "metadata": { + "type": "object", + "description": "The metadata of the playbook configuration resource.", + "$ref": "#/definitions/PlaybookConfigurationMetadata" + }, + "scopes": { + "type": "array", + "description": "A collection of the subscription's resources scopes on which the playbook configurations logic is applied.", + "items": { + "$ref": "#/definitions/PlaybookConfigurationScope" + } + }, + "sources": { + "type": "array", + "description": "A collection of the source event types which evaluate the playbook configuration set of rules.", + "items": { + "$ref": "#/definitions/PlaybookConfigurationSource" + } + }, + "actions": { + "type": "array", + "description": "A collection of the actions which are triggered if all the configured rule set evaluation is true.", + "items": { + "$ref": "#/definitions/PlaybookConfigurationAction" + } + } + } + }, + "PlaybookConfigurationMetadata": { + "type": "object", + "description": "The metadata of the playbook configuration resource.", + "properties": { + "createdDateTimeUtc": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The playbook configuration creation date." + }, + "createdBy": { + "readOnly": true, + "type": "string", + "description": "The AAD object ID of the entity that created the playbook configuration." + }, + "lastUpdatedDateTimeUtc": { + "readOnly": true, + "type": "string", + "format": "date-time", + "description": "The playbook configuration last updated date." + }, + "lastUpdatedBy": { + "readOnly": true, + "type": "string", + "description": "The AAD object ID of the entity that last updated the playbook configuration." + } + } + }, + "PlaybookConfigurationSource": { + "type": "object", + "description": "The source event types which evaluate the playbook configuration set of rules. For example - security alerts and recommended tasks.", + "properties": { + "eventSource": { + "type": "string", + "description": "A valid event source type." + }, + "ruleSets": { + "type": "array", + "description": "A set of rules which evaluate upon event interception.", + "items": { + "$ref": "#/definitions/PlaybookConfigurationRuleSet" + } + } + } + }, + "PlaybookConfigurationScope": { + "type": "object", + "description": "The subscription's resources scope", + "properties": { + "description": { + "type": "string", + "description": "The resources scope description." + }, + "scopePath": { + "type": "string", + "description": "The resources scope path." + } + } + }, + "PlaybookConfigurationAction": { + "type": "object", + "description": "The action that should be triggered.", + "discriminator": "actionType", + "properties": { + "actionType": { + "type": "string", + "description": "type of action that will be triggered by the PlaybookConfiguration", + "enum": ["LogicApp", "EventHub", "SecurityEmail"], + "x-ms-enum": { + "name": "ActionType", + "modelAsString": true, + "values": [ + { + "value": "LogicApp" + }, + { + "value": "EventHub" + }, + { + "value": "SecurityEmail" + } + ] + } + } + } + }, + "PlaybookConfigurationActionLogicApp": { + "type": "object", + "description": "The logic app action that should be triggered.", + "x-ms-discriminator-value": "LogicApp", + "allOf": [{ + "$ref": "#/definitions/PlaybookConfigurationAction" + }], + "properties": { + "logicAppResourceId": { + "type": "string", + "description": "The triggered resource id." + }, + "uri": { + "type": "string", + "description": "The uri that should be triggered by an Http GET request.", + "format": "uri" + } + } + }, + "PlaybookConfigurationActionEventHub": { + "type": "object", + "description": "The event hub action that should be triggered.", + "x-ms-discriminator-value": "EventHub", + "allOf": [{ + "$ref": "#/definitions/PlaybookConfigurationAction" + }], + "properties": { + "eventHubResourceId": { + "type": "string", + "description": "The event hub resource id." + }, + "connectionString": { + "type": "string", + "description": "The event hub connection string(the primary or secondary key)." + } + } + }, + "PlaybookConfigurationActionSecurityEmail": { + "type": "object", + "description": "The Security Email action that should be triggered.", + "x-ms-discriminator-value": "SecurityEmail", + "allOf": [{ + "$ref": "#/definitions/PlaybookConfigurationAction" + }], + "properties": { + "subscriptionRbacRoles": { + "type": "array", + "description": "A list of RBAC roles of the subscription for the email to be sent to.", + "items": { + "type":"string", + "enum":[ + "AccountAdmin", + "ServiceAdmin", + "Owner", + "Contributor" + ] + } + }, + "emailAddresses": { + "type": "array", + "description": "A list of email addresses for the email to be sent to.", + "items": { + "type": "string", + "format": "email" + } + } + } + }, + "PlaybookConfigurationRuleSet": { + "type": "object", + "description": "A rule set which evaluates all its rules upon an event interception.", + "properties": { + "rules": { + "type": "array", + "items": { + "$ref": "#/definitions/PlaybookConfigurationTriggeringRule" + } + } + } + }, + "PlaybookConfigurationTriggeringRule": { + "type": "object", + "description": "A logic rule which evaluates upon event interception. The rule is configured by comparing the specified expected value, in an expected property within the event model, by the specified operator.", + "properties": { + "propertyJPath": { + "type": "string", + "description": "The JPath of the entity model property that should be checked." + }, + "propertyType": { + "type": "string", + "description": "The data type of the compared operands.", + "enum": [ + "string", + "integer", + "number", + "boolean" + ] + }, + "expectedValue": { + "type": "string", + "description": "The expected value." + }, + "operator": { + "type": "string", + "description": "A valid comparer operator to use.", + "enum": [ + "Equals", + "EqualsIgnoreCase", + "GreaterThan", + "GreaterThanOrEqualTo", + "LesserThan", + "LesserThanOrEqualTo", + "NotEquals", + "NotEqualsIgnoreCase", + "Contains", + "StartsWith", + "EndsWith" + ] + } + } + }, + "PlaybookConfigurationValidationStatus": { + "type": "object", + "description": "The playbook configuration model state property bag.", + "properties": { + "isValid": { + "type": "boolean", + "description": "Indicates whether the model is valid or not." + }, + "message": { + "type": "string", + "description": "The validation message." + } + } + } + }, + "parameters": { + "PlaybookConfigurationName": { + "name": "playbookConfigurationName", + "in": "path", + "required": true, + "type": "string", + "description": "The playbook Configuration name.", + "x-ms-parameter-location": "method" + }, + "PlaybookConfigurationInBody": { + "name": "PlaybookConfiguration", + "in": "body", + "required": true, + "description": "The playbook configuration resource", + "schema": { + "$ref": "#/definitions/PlaybookConfiguration" + } + } + } +} \ No newline at end of file diff --git a/specification/security/resource-manager/common/v1/types.json b/specification/security/resource-manager/common/v1/types.json index 6afed51f7d77..9a575589932a 100644 --- a/specification/security/resource-manager/common/v1/types.json +++ b/specification/security/resource-manager/common/v1/types.json @@ -1,195 +1,239 @@ -{ - "swagger": "2.0", - "info": { - "version": "1.0", - "title": "Common types" - }, - "paths": {}, - "definitions": { - "CloudError": { - "x-ms-external": true, - "type": "object", - "description": "Error response structure.", - "properties": { - "error": { - "x-ms-client-flatten": true, - "description": "Error data", - "$ref": "#/definitions/CloudErrorBody" - } - } - }, - "CloudErrorBody": { - "x-ms-external": true, - "type": "object", - "description": "Error details.", - "properties": { - "code": { - "readOnly": true, - "type": "string", - "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." - }, - "message": { - "readOnly": true, - "type": "string", - "description": "A message describing the error, intended to be suitable for display in a user interface." - } - } - }, - "Resource": { - "type": "object", - "description": "Describes an Azure resource.", - "properties": { - "id": { - "readOnly": true, - "type": "string", - "description": "Resource Id" - }, - "name": { - "readOnly": true, - "type": "string", - "description": "Resource name" - }, - "type": { - "readOnly": true, - "type": "string", - "description": "Resource type" - } - }, - "x-ms-azure-resource": true - }, - "Kind": { - "type": "object", - "description": "Describes an Azure resource with kind", - "properties": { - "kind": { - "type": "string", - "description": "Kind of the resource" - } - } - }, - "Location": { - "type": "object", - "description": "Describes an Azure resource with location", - "properties": { - "location": { - "readOnly": true, - "type": "string", - "description": "Location where the resource is stored" - } - } - }, - "AscLocationList": { - "type": "object", - "description": "List of locations where ASC saves your data", - "properties": { - "value": { - "readOnly": true, - "type": "array", - "items": { - "$ref": "#/definitions/AscLocation" - } - }, - "nextLink": { - "readOnly": true, - "type": "string", - "description": "The URI to fetch the next page." - } - } - }, - "AscLocation": { - "type": "object", - "description": "The ASC location of the subscription is in the \"name\" field", - "properties": { - "properties": { - "x-ms-client-flatten": true, - "$ref": "#/definitions/AscLocationProperties" - } - }, - "allOf": [ - { - "$ref": "#/definitions/Resource" - } - ] - }, - "AscLocationProperties": { - "type": "object", - "description": "An empty set of properties" - } - }, - "parameters": { - "SubscriptionId": { - "name": "subscriptionId", - "in": "path", - "required": true, - "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", - "type": "string", - "description": "Azure subscription ID" - }, - "ResourceGroupName": { - "name": "resourceGroupName", - "in": "path", - "required": true, - "type": "string", - "description": "The name of the resource group within the user's subscription. The name is case insensitive.", - "pattern": "^[-\\w\\._\\(\\)]+$", - "minLength": 1, - "maxLength": 90, - "x-ms-parameter-location": "method" - }, - "ApiVersion": { - "name": "api-version", - "in": "query", - "required": true, - "type": "string", - "description": "API version for the operation" - }, - "AscLocation": { - "name": "ascLocation", - "in": "path", - "required": true, - "type": "string", - "description": "The location where ASC stores the data of the subscription. can be retrieved from Get locations", - "x-ms-parameter-location": "client" - }, - "ResourceId": { - "name": "resourceId", - "in": "path", - "required": true, - "type": "string", - "description": "The identifier of the resource.", - "x-ms-parameter-location": "method" - }, - "Scope": { - "name": "scope", - "in": "path", - "required": true, - "type": "string", - "description": "Scope of the query, can be subscription (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group (/providers/Microsoft.Management/managementGroups/mgName).", - "x-ms-parameter-location": "method" - }, - "ODataFilter": { - "name": "$filter", - "in": "query", - "required": false, - "type": "string", - "description": "OData filter. Optional.", - "x-ms-parameter-location": "method" - }, - "ODataSelect": { - "name": "$select", - "in": "query", - "required": false, - "type": "string", - "description": "OData select. Optional.", - "x-ms-parameter-location": "method" - }, - "ODataExpand": { - "name": "$expand", - "in": "query", - "required": false, - "type": "string", - "description": "OData expand. Optional.", - "x-ms-parameter-location": "method" - } - } -} +{ + "swagger": "2.0", + "info": { + "version": "1.0", + "title": "Common types" + }, + "paths": {}, + "definitions": { + "CloudError": { + "x-ms-external": true, + "type": "object", + "description": "Error response structure.", + "properties": { + "error": { + "x-ms-client-flatten": true, + "description": "Error data", + "$ref": "#/definitions/CloudErrorBody" + } + } + }, + "CloudErrorBody": { + "x-ms-external": true, + "type": "object", + "description": "Error details.", + "properties": { + "code": { + "readOnly": true, + "type": "string", + "description": "An identifier for the error. Codes are invariant and are intended to be consumed programmatically." + }, + "message": { + "readOnly": true, + "type": "string", + "description": "A message describing the error, intended to be suitable for display in a user interface." + } + } + }, + "Resource": { + "type": "object", + "description": "Describes an Azure resource.", + "properties": { + "id": { + "readOnly": true, + "type": "string", + "description": "Resource Id" + }, + "name": { + "readOnly": true, + "type": "string", + "description": "Resource name" + }, + "type": { + "readOnly": true, + "type": "string", + "description": "Resource type" + } + }, + "x-ms-azure-resource": true + }, + "TrackedResource": { + "type": "object", + "description": "Describes an Azure tracked resource.", + "allOf": [ + { + "$ref": "#/definitions/Resource" + }, + { + "$ref": "#/definitions/Location" + }, + { + "$ref": "#/definitions/Kind" + }, + { + "$ref": "#/definitions/ETag" + }, + { + "$ref": "#/definitions/Tags" + } + ] + }, + "ETag": { + "type": "object", + "description": "Entity tag is used for comparing two or more entities from the same requested resource. ETags may be returned for individual resources, and then sent via If-Match / If-None-Match headers for concurrency control. ", + "properties": { + "etag": { + "type": "string", + "description": "Entity tag is used for comparing two or more entities from the same requested resource. ETags may be returned for individual resources, and then sent via If-Match / If-None-Match headers for concurrency control. " + } + } + }, + "Tags": { + "type": "object", + "description": "A list of key value pairs that describe the resource.", + "properties": { + "tags": { + "type": "object", + "description": "A list of key value pairs that describe the resource.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "Kind": { + "type": "object", + "description": "Describes an Azure resource with kind", + "properties": { + "kind": { + "type": "string", + "description": "Kind of the resource" + } + } + }, + "Location": { + "type": "object", + "description": "Describes an Azure resource with location", + "properties": { + "location": { + "readOnly": true, + "type": "string", + "description": "Location where the resource is stored" + } + } + }, + "AscLocationList": { + "type": "object", + "description": "List of locations where ASC saves your data", + "properties": { + "value": { + "readOnly": true, + "type": "array", + "items": { + "$ref": "#/definitions/AscLocation" + } + }, + "nextLink": { + "readOnly": true, + "type": "string", + "description": "The URI to fetch the next page." + } + } + }, + "AscLocation": { + "type": "object", + "description": "The ASC location of the subscription is in the \"name\" field", + "properties": { + "properties": { + "x-ms-client-flatten": true, + "$ref": "#/definitions/AscLocationProperties" + } + }, + "allOf": [ + { + "$ref": "#/definitions/Resource" + } + ] + }, + "AscLocationProperties": { + "type": "object", + "description": "An empty set of properties" + } + }, + "parameters": { + "SubscriptionId": { + "name": "subscriptionId", + "in": "path", + "required": true, + "pattern": "^[0-9A-Fa-f]{8}-([0-9A-Fa-f]{4}-){3}[0-9A-Fa-f]{12}$", + "type": "string", + "description": "Azure subscription ID" + }, + "ResourceGroupName": { + "name": "resourceGroupName", + "in": "path", + "required": true, + "type": "string", + "description": "The name of the resource group within the user's subscription. The name is case insensitive.", + "pattern": "^[-\\w\\._\\(\\)]+$", + "minLength": 1, + "maxLength": 90, + "x-ms-parameter-location": "method" + }, + "ApiVersion": { + "name": "api-version", + "in": "query", + "required": true, + "type": "string", + "description": "API version for the operation" + }, + "AscLocation": { + "name": "ascLocation", + "in": "path", + "required": true, + "type": "string", + "description": "The location where ASC stores the data of the subscription. can be retrieved from Get locations", + "x-ms-parameter-location": "client" + }, + "ResourceId": { + "name": "resourceId", + "in": "path", + "required": true, + "type": "string", + "description": "The identifier of the resource.", + "x-ms-parameter-location": "method" + }, + "Scope": { + "name": "scope", + "in": "path", + "required": true, + "type": "string", + "description": "Scope of the query, can be subscription (/subscriptions/0b06d9ea-afe6-4779-bd59-30e5c2d9d13f) or management group (/providers/Microsoft.Management/managementGroups/mgName).", + "x-ms-parameter-location": "method" + }, + "ODataFilter": { + "name": "$filter", + "in": "query", + "required": false, + "type": "string", + "description": "OData filter. Optional.", + "x-ms-parameter-location": "method" + }, + "ODataSelect": { + "name": "$select", + "in": "query", + "required": false, + "type": "string", + "description": "OData select. Optional.", + "x-ms-parameter-location": "method" + }, + "ODataExpand": { + "name": "$expand", + "in": "query", + "required": false, + "type": "string", + "description": "OData expand. Optional.", + "x-ms-parameter-location": "method" + } + } +} diff --git a/specification/security/resource-manager/readme.md b/specification/security/resource-manager/readme.md index 8b10436b7c67..fc74c7215fc3 100644 --- a/specification/security/resource-manager/readme.md +++ b/specification/security/resource-manager/readme.md @@ -51,6 +51,7 @@ These settings apply only when `--tag=package-composite-v1` is specified on the ```yaml $(tag) == 'package-composite-v1' input-file: +- Microsoft.Security/preview/2019-01-01-preview/playbookConfigurations.json - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - Microsoft.Security/preview/2017-08-01-preview/pricings.json - Microsoft.Security/preview/2017-08-01-preview/securityContacts.json @@ -84,6 +85,7 @@ These settings apply only when `--tag=package-composite-v2` is specified on the ```yaml $(tag) == 'package-composite-v2' input-file: +- Microsoft.Security/preview/2019-01-01-preview/playbookConfigurations.json - Microsoft.Security/preview/2019-01-01-preview/regulatoryCompliance.json - Microsoft.Security/stable/2018-06-01/pricings.json - Microsoft.Security/preview/2017-08-01-preview/securityContacts.json