Cloud Compute Enrichment - Generic
This playbook provides a generic enrichment of AWS, GCP, and Azure compute resources.
Common Playbooks · 9 tasks · 6 inputs · 27 outputs
Details
| ID | Cloud Compute Enrichment - Generic |
|---|---|
| From Version | 6.8.0 |
| Tasks | 9 |
README
This playbook provides a generic enrichment of AWS, GCP, and Azure compute resources.
Dependencies
This playbook uses the following sub-playbooks, integrations, and scripts.
Sub-playbooks
This playbook does not use any sub-playbooks.
Integrations
This playbook does not use any integrations.
Scripts
This playbook does not use any scripts.
Commands
- aws-ec2-describe-instances
- gcp-compute-get-instance
- azure-vm-get-instance-details
Playbook Inputs
| Name | Description | Default Value | Required |
|---|---|---|---|
| cloudProvider | The cloud provider involved. | Optional | |
| instanceName | The instance name. | Optional | |
| instanceID | The instance ID. | Optional | |
| zone | The zone holding the instance. | Optional | |
| region | The region holding the instance. | Optional | |
| azureResourceGroup | The instance’s resource group. | Optional |
Playbook Outputs
| Path | Description | Type |
|---|---|---|
| AWS.EC2.Instances | The instances. | unknown |
| AWS.EC2.Instances.Monitoring | The monitoring for the instance. | unknown |
| AWS.EC2.Instances.State | The current state of the instance. | unknown |
| AWS.EC2.Instances.IamInstanceProfile | The IAM instance profile associated with the instance, if applicable. | unknown |
| AWS.EC2.Instances.NetworkInterfaces | The network interfaces for the instance. | unknown |
| AWS.EC2.Instances.NetworkInterfaces.PrivateIpAddresses | The private IPv4 addresses associated with the network interface. | unknown |
| AWS.EC2.Instances.SecurityGroups | The security groups for the instance. | unknown |
| AWS.EC2.Instances.StateReason | The reason for the most recent state transition. | unknown |
| AWS.EC2.Instances.Tags | Any tags assigned to the instance. | unknown |
| GoogleCloudCompute.Instances | The instances. | unknown |
| GoogleCloudCompute.Instances.tags | Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. Multiple tags can be specified via the tags.items field. | unknown |
| GoogleCloudCompute.Instances.networkInterfaces | An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance. | unknown |
| GoogleCloudCompute.Instances.networkInterfaces.aliasIpRanges | An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. | unknown |
| GoogleCloudCompute.Instances.disks | Array of disks associated with this instance. Persistent disks must be created before you can assign them. | unknown |
| GoogleCloudCompute.Instances.disks.initializeParams | Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. | unknown |
| GoogleCloudCompute.Instances.disks.initializeParams.sourceImageEncryptionKey | The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. | unknown |
| GoogleCloudCompute.Instances.disks.initializeParams.labels | Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks. | unknown |
| GoogleCloudCompute.Instances.disks.guestOsFeatures | A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. | unknown |
| GoogleCloudCompute.Instances.disks.diskEncryptionKey | Encrypts or decrypts a disk using a customer-supplied encryption key. | unknown |
| GoogleCloudCompute.Instances.metadata | The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys. | unknown |
| GoogleCloudCompute.Instances.metadata.items | Array of key/value pairs. The total size of all keys and values must be less than 512 KB. | unknown |
| GoogleCloudCompute.Instances.serviceAccounts | A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. | unknown |
| GoogleCloudCompute.Instances.scheduling | Sets the scheduling options for this instance. | unknown |
| GoogleCloudCompute.Instances.scheduling.nodeAffinities | A set of node affinity and anti-affinity. | unknown |
| GoogleCloudCompute.Instances.labels | Labels to apply to this instance. These can be later modified by the setLabels method. | unknown |
| GoogleCloudCompute.Instances.guestAccelerators | A list of the type and count of accelerator cards attached to the instance. | unknown |
| Azure.Compute | The VMs. | unknown |
Playbook Image

Inputs
cloudProvider— The cloud provider involved.instanceName— The instance name.instanceID— The instance ID.zone— The zone holding the instance.region— The region holding the instance.azureResourceGroup— The instance's resource group.
Outputs
AWS.EC2.Instances— The instances.AWS.EC2.Instances.Monitoring— The monitoring for the instance.AWS.EC2.Instances.State— The current state of the instance.AWS.EC2.Instances.IamInstanceProfile— The IAM instance profile associated with the instance, if applicable.AWS.EC2.Instances.NetworkInterfaces— The network interfaces for the instance.AWS.EC2.Instances.NetworkInterfaces.PrivateIpAddresses— The private IPv4 addresses associated with the network interface.AWS.EC2.Instances.SecurityGroups— The security groups for the instance.AWS.EC2.Instances.StateReason— The reason for the most recent state transition.AWS.EC2.Instances.Tags— Any tags assigned to the instance.GoogleCloudCompute.Instances— The instances.GoogleCloudCompute.Instances.tags— Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. Multiple tags can be specified via the tags.items field.GoogleCloudCompute.Instances.networkInterfaces— An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance.GoogleCloudCompute.Instances.networkInterfaces.aliasIpRanges— An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks.GoogleCloudCompute.Instances.disks— Array of disks associated with this instance. Persistent disks must be created before you can assign them.GoogleCloudCompute.Instances.disks.initializeParams— Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.GoogleCloudCompute.Instances.disks.initializeParams.sourceImageEncryptionKey— The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.GoogleCloudCompute.Instances.disks.initializeParams.labels— Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.GoogleCloudCompute.Instances.disks.guestOsFeatures— A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options.GoogleCloudCompute.Instances.disks.diskEncryptionKey— Encrypts or decrypts a disk using a customer-supplied encryption key.GoogleCloudCompute.Instances.metadata— The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys.GoogleCloudCompute.Instances.metadata.items— Array of key/value pairs. The total size of all keys and values must be less than 512 KB.GoogleCloudCompute.Instances.serviceAccounts— A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported.GoogleCloudCompute.Instances.scheduling— Sets the scheduling options for this instance.GoogleCloudCompute.Instances.scheduling.nodeAffinities— A set of node affinity and anti-affinity.GoogleCloudCompute.Instances.labels— Labels to apply to this instance. These can be later modified by the setLabels method.GoogleCloudCompute.Instances.guestAccelerators— A list of the type and count of accelerator cards attached to the instance.Azure.Compute— The VMs.
Commands used
aws-ec2-describe-instances
azure-vm-get-instance-details
gcp-compute-get-instance
Flowchart
id: Cloud Compute Enrichment - Generic version: -1 name: Cloud Compute Enrichment - Generic description: This playbook provides a generic enrichment of AWS, GCP, and Azure compute resources. starttaskid: "0" tasks: "0": id: "0" taskid: 3f8e7f67-8491-49fb-89db-2727f1841b18 type: start task: id: 3f8e7f67-8491-49fb-89db-2727f1841b18 version: -1 name: "" iscommand: false brand: "" description: '' nexttasks: '#none#': - "1" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 450, "y": 50 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "1": id: "1" taskid: ae4cee68-df82-4603-87cb-e79445256411 type: condition task: id: ae4cee68-df82-4603-87cb-e79445256411 version: -1 name: Select cloud provider description: Checks the cloud provider. type: condition iscommand: false brand: "" nexttasks: '#default#': - "9" AWS: - "3" Azure: - "2" GCP: - "4" separatecontext: false conditions: - label: AWS condition: - - operator: isEqualString left: value: complex: root: inputs.cloudProvider iscontext: true right: value: simple: AWS ignorecase: true - - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: AWS - IAM ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - - operator: isNotEmpty left: value: complex: root: inputs.instanceID iscontext: true - label: Azure condition: - - operator: isEqualString left: value: complex: root: inputs.cloudProvider iscontext: true right: value: simple: Azure ignorecase: true - - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: MicrosoftGraphIdentityandAccess ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: Microsoft Graph Groups ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: Microsoft Graph User ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - - operator: isNotEmpty left: value: complex: root: inputs.instanceName iscontext: true - label: GCP condition: - - operator: isEqualString left: value: complex: root: inputs.cloudProvider iscontext: true right: value: simple: GCP - - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: GSuiteAdmin ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - operator: isEqualString left: value: complex: root: modules filters: - - operator: isEqualString left: value: simple: modules.brand iscontext: true right: value: simple: GCP-IAM ignorecase: true accessor: state iscontext: true right: value: simple: active ignorecase: true - - operator: isNotEmpty left: value: complex: root: inputs.instanceName iscontext: true continueonerrortype: "" view: |- { "position": { "x": 450, "y": 180 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "2": id: "2" taskid: 1439edfd-f3a0-4047-871b-1f1d48d53728 type: title task: id: 1439edfd-f3a0-4047-871b-1f1d48d53728 version: -1 name: 'Azure Enrichment ' type: title iscommand: false brand: "" description: '' nexttasks: '#none#': - "8" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 10, "y": 390 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "3": id: "3" taskid: 5c4e9bb3-a12e-441f-8f45-3af3f4ed10ce type: title task: id: 5c4e9bb3-a12e-441f-8f45-3af3f4ed10ce version: -1 name: AWS Enrichment type: title iscommand: false brand: "" description: '' nexttasks: '#none#': - "5" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 450, "y": 390 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "4": id: "4" taskid: eab4ac86-7bbd-415d-820b-d2bd7d6a502c type: title task: id: eab4ac86-7bbd-415d-820b-d2bd7d6a502c version: -1 name: GCP Enrichment type: title iscommand: false brand: "" description: '' nexttasks: '#none#': - "7" separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 890, "y": 390 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "5": id: "5" taskid: d24e7a76-18aa-49e5-8190-de87e42077ec type: regular task: id: d24e7a76-18aa-49e5-8190-de87e42077ec version: -1 name: Get instance details description: Describes one or more of your instances. script: '|||aws-ec2-describe-instances' type: regular iscommand: true brand: "" nexttasks: '#none#': - "9" scriptarguments: instanceIds: complex: root: inputs.instanceID region: complex: root: inputs.region separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 450, "y": 520 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "7": id: "7" taskid: f16ac6d2-41ab-4b1e-8929-03d9b58302ac type: regular task: id: f16ac6d2-41ab-4b1e-8929-03d9b58302ac version: -1 name: Get instance details description: Returns the specified Instance resource. Gets a list of available instances by making a list() request. script: '|||gcp-compute-get-instance' type: regular iscommand: true brand: "" nexttasks: '#none#': - "9" scriptarguments: instance: complex: root: inputs.instanceName zone: complex: root: inputs.zone separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 890, "y": 520 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "8": id: "8" taskid: 8432e791-c422-43da-8a8b-19ee2d20a26c type: regular task: id: 8432e791-c422-43da-8a8b-19ee2d20a26c version: -1 name: Get instance details description: Gets the properties of a given virtual machine. script: '|||azure-vm-get-instance-details' type: regular iscommand: true brand: "" nexttasks: '#none#': - "9" scriptarguments: resource_group: complex: root: inputs.azureResourceGroup virtual_machine_name: complex: root: inputs.instanceName separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 10, "y": 520 } } note: false timertriggers: [] ignoreworker: false skipunavailable: true quietmode: 0 isoversize: false isautoswitchedtoquietmode: false "9": id: "9" taskid: 223fe0e9-f4d8-473f-8eb5-2144fe1d244e type: title task: id: 223fe0e9-f4d8-473f-8eb5-2144fe1d244e version: -1 name: Done type: title iscommand: false brand: "" description: '' separatecontext: false continueonerrortype: "" view: |- { "position": { "x": 450, "y": 690 } } note: false timertriggers: [] ignoreworker: false skipunavailable: false quietmode: 0 isoversize: false isautoswitchedtoquietmode: false view: |- { "linkLabelsPosition": {}, "paper": { "dimensions": { "height": 705, "width": 1260, "x": 10, "y": 50 } } } inputs: - key: cloudProvider value: {} required: false description: The cloud provider involved. playbookInputQuery: - key: instanceName value: {} required: false description: The instance name. playbookInputQuery: - key: instanceID value: {} required: false description: The instance ID. playbookInputQuery: - key: zone value: {} required: false description: The zone holding the instance. playbookInputQuery: - key: region value: {} required: false description: The region holding the instance. playbookInputQuery: - key: azureResourceGroup value: {} required: false description: The instance's resource group. playbookInputQuery: outputs: - contextPath: AWS.EC2.Instances description: The instances. type: unknown - contextPath: AWS.EC2.Instances.Monitoring description: The monitoring for the instance. type: unknown - contextPath: AWS.EC2.Instances.State description: The current state of the instance. type: unknown - contextPath: AWS.EC2.Instances.IamInstanceProfile description: The IAM instance profile associated with the instance, if applicable. type: unknown - contextPath: AWS.EC2.Instances.NetworkInterfaces description: The network interfaces for the instance. type: unknown - contextPath: AWS.EC2.Instances.NetworkInterfaces.PrivateIpAddresses description: The private IPv4 addresses associated with the network interface. type: unknown - contextPath: AWS.EC2.Instances.SecurityGroups description: The security groups for the instance. type: unknown - contextPath: AWS.EC2.Instances.StateReason description: The reason for the most recent state transition. type: unknown - contextPath: AWS.EC2.Instances.Tags description: Any tags assigned to the instance. type: unknown - contextPath: GoogleCloudCompute.Instances description: The instances. type: unknown - contextPath: GoogleCloudCompute.Instances.tags description: Tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035. Multiple tags can be specified via the tags.items field. - contextPath: GoogleCloudCompute.Instances.networkInterfaces description: An array of network configurations for this instance. These specify how interfaces are configured to interact with other network services, such as connecting to the internet. Multiple interfaces are supported per instance. - contextPath: GoogleCloudCompute.Instances.networkInterfaces.aliasIpRanges description: An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. - contextPath: GoogleCloudCompute.Instances.disks description: Array of disks associated with this instance. Persistent disks must be created before you can assign them. - contextPath: GoogleCloudCompute.Instances.disks.initializeParams description: Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. - contextPath: GoogleCloudCompute.Instances.disks.initializeParams.sourceImageEncryptionKey description: The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key. - contextPath: GoogleCloudCompute.Instances.disks.initializeParams.labels description: Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks. - contextPath: GoogleCloudCompute.Instances.disks.guestOsFeatures description: A list of features to enable on the guest operating system. Applicable only for bootable images. Read Enabling guest operating system features to see a list of available options. - contextPath: GoogleCloudCompute.Instances.disks.diskEncryptionKey description: Encrypts or decrypts a disk using a customer-supplied encryption key. - contextPath: GoogleCloudCompute.Instances.metadata description: The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys. - contextPath: GoogleCloudCompute.Instances.metadata.items description: Array of key/value pairs. The total size of all keys and values must be less than 512 KB. - contextPath: GoogleCloudCompute.Instances.serviceAccounts description: A list of service accounts, with their specified scopes, authorized for this instance. Only one service account per VM instance is supported. - contextPath: GoogleCloudCompute.Instances.scheduling description: Sets the scheduling options for this instance. - contextPath: GoogleCloudCompute.Instances.scheduling.nodeAffinities description: A set of node affinity and anti-affinity. - contextPath: GoogleCloudCompute.Instances.labels description: Labels to apply to this instance. These can be later modified by the setLabels method. - contextPath: GoogleCloudCompute.Instances.guestAccelerators description: A list of the type and count of accelerator cards attached to the instance. - contextPath: Azure.Compute description: The VMs. type: unknown quiet: false tests: - No tests (auto formatted) fromversion: 6.8.0