Skip to content

[ti_google_threat_intelligence] Add Agentless deployment #14511

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ Data collection is available for all nine feed types: `cryptominer`, `first_stag

## Requirements

### Agentless-enabled integration
Agentless integrations allow you to collect data without having to manage Elastic Agent in your cloud. They make manual agent deployment unnecessary, so you can focus on your data instead of the agent that collects it. For more information, refer to [Agentless integrations](https://www.elastic.co/guide/en/serverless/current/security-agentless-integrations.html) and the [Agentless integrations FAQ](https://www.elastic.co/guide/en/serverless/current/agentless-integration-troubleshooting.html).

Agentless deployments are only supported in Elastic Serverless and Elastic Cloud environments. This functionality is in beta and is subject to change. Beta features are not subject to the support SLA of official GA features.

### Agent-based installation
Elastic Agent must be installed. For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md).

## Setup
Expand Down Expand Up @@ -145,7 +151,7 @@ The following transform and its associated pipelines are used to filter relevant
- Prefix the pipeline name with the integration version.
For example:
```
0.2.0-ti_google_threat_intelligence-latest_ip_ioc-transform-pipeline
{package_version}-ti_google_threat_intelligence-latest_ip_ioc-transform-pipeline
```
- Click **Update** to save the changes.
5. Click the **three dots** again next to the transform and select **Start** to activate it.
Expand Down
5 changes: 5 additions & 0 deletions packages/ti_google_threat_intelligence/changelog.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,9 @@
# newer versions go on top
- version: 0.4.0
changes:
- description: Enable Agentless deployment.
type: enhancement
link: https://github.com/elastic/integrations/pull/14511
- version: 0.3.0
changes:
- description: Add data streams - linux, malicious_network_infrastructure, malware, mobile, osx.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ program: |
?"query": has(state.query) ? optional.of([state.query]) : optional.none(),
"limit": ["4000"],
"x-tool": ["Elastic"],
"User-Agent": ["v0.3.0"], // Keep this in sync with 'version' in package level manifest.yml.
"User-Agent": ["v0.4.0"], // Keep this in sync with 'version' in package level manifest.yml.
}.format_query()
).with({
"Header": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,17 @@ processors:
- drop:
if: ctx.message == 'retry'
tag: drop_retry_events
- remove:
field:
- organization
- division
- team
ignore_missing: true
if: ctx.organization instanceof String && ctx.division instanceof String && ctx.team instanceof String
tag: remove_agentless_tags
description: >-
Removes the fields added by Agentless as metadata,
as they can collide with ECS fields.
- rename:
field: message
tag: rename_message_to_event_original
Expand Down
8 changes: 7 additions & 1 deletion packages/ti_google_threat_intelligence/docs/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,12 @@ Data collection is available for all nine feed types: `cryptominer`, `first_stag

## Requirements

### Agentless-enabled integration
Agentless integrations allow you to collect data without having to manage Elastic Agent in your cloud. They make manual agent deployment unnecessary, so you can focus on your data instead of the agent that collects it. For more information, refer to [Agentless integrations](https://www.elastic.co/guide/en/serverless/current/security-agentless-integrations.html) and the [Agentless integrations FAQ](https://www.elastic.co/guide/en/serverless/current/agentless-integration-troubleshooting.html).

Agentless deployments are only supported in Elastic Serverless and Elastic Cloud environments. This functionality is in beta and is subject to change. Beta features are not subject to the support SLA of official GA features.

### Agent-based installation
Elastic Agent must be installed. For more details, check the Elastic Agent [installation instructions](docs-content://reference/fleet/install-elastic-agents.md).

## Setup
Expand Down Expand Up @@ -145,7 +151,7 @@ The following transform and its associated pipelines are used to filter relevant
- Prefix the pipeline name with the integration version.
For example:
```
0.2.0-ti_google_threat_intelligence-latest_ip_ioc-transform-pipeline
{package_version}-ti_google_threat_intelligence-latest_ip_ioc-transform-pipeline
```
- Click **Update** to save the changes.
5. Click the **three dots** again next to the transform and select **Start** to activate it.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ _meta:
managed: false
# Bump this version to delete, reinstall, and restart the transform during
# package installation.
fleet_transform_version: 0.3.0
fleet_transform_version: 0.4.0
# We are currently using multiple source indices in this transform because system tests do not support
# executing queries defined within the transform. This causes test failures, so we've raised the issue here:
# https://github.com/elastic/elastic-package/issues/2676
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ _meta:
managed: false
# Bump this version to delete, reinstall, and restart the transform during
# package installation.
fleet_transform_version: 0.3.0
fleet_transform_version: 0.4.0
# We are currently using multiple source indices in this transform because system tests do not support
# executing queries defined within the transform. This causes test failures, so we've raised the issue here:
# https://github.com/elastic/elastic-package/issues/2676
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ _meta:
managed: false
# Bump this version to delete, reinstall, and restart the transform during
# package installation.
fleet_transform_version: 0.3.0
fleet_transform_version: 0.4.0
# We are currently using multiple source indices in this transform because system tests do not support
# executing queries defined within the transform. This causes test failures, so we've raised the issue here:
# https://github.com/elastic/elastic-package/issues/2676
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,5 +42,5 @@ _meta:
managed: false
# Bump this version to delete, reinstall, and restart the transform during
# package installation.
fleet_transform_version: 0.3.0
fleet_transform_version: 0.4.0
run_as_kibana_system: false
Original file line number Diff line number Diff line change
Expand Up @@ -54,7 +54,7 @@ _meta:
managed: false
# Bump this version to delete, reinstall, and restart the transform during
# package installation.
fleet_transform_version: 0.3.0
fleet_transform_version: 0.4.0
# We are currently using multiple source indices in this transform because system tests do not support
# executing queries defined within the transform. This causes test failures, so we've raised the issue here:
# https://github.com/elastic/elastic-package/issues/2676
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -826,9 +826,8 @@
"version": 2
},
"coreMigrationVersion": "8.8.0",
"created_at": "2025-06-03T08:45:20.592Z",
"created_at": "2025-07-11T07:54:47.115Z",
"id": "ti_google_threat_intelligence-0b0fb6b4-d250-4e31-a56a-bb872e4c7c4a",
"managed": false,
"references": [
{
"id": "logs-*",
Expand Down Expand Up @@ -922,6 +921,5 @@
}
],
"type": "dashboard",
"typeMigrationVersion": "10.2.0",
"updated_by": "u_mGBROF_q5bmFCATbLXAcCwKa0k8JvONAwSruelyKA5E_0"
"typeMigrationVersion": "10.2.0"
}
Loading