Skip to content

Conversation

@janvi-elastic
Copy link
Contributor

Proposed commit message

The release includes compromised credential data stream, associated dashboards 
and visualizations.

Island Browser fields are mapped to their corresponding ECS fields where possible.

Test samples were derived from documentation.

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.

How to test this PR locally

  • Clone integrations repo.
  • Install elastic package locally.
  • Start elastic stack using elastic-package.
  • Move to integrations/packages/island_browser directory.
  • Run the following command to run tests.

elastic-package test

Run asset tests for the package
--- Test results for package: island_browser - START ---
╭────────────────┬────────────────────────┬───────────┬────────────────────────────────────────────────────────────────────────────┬────────┬──────────────╮
│ PACKAGE        │ DATA STREAM            │ TEST TYPE │ TEST NAME                                                                  │ RESULT │ TIME ELAPSED │
├────────────────┼────────────────────────┼───────────┼────────────────────────────────────────────────────────────────────────────┼────────┼──────────────┤
│ island_browser │                        │ asset     │ dashboard island_browser-1bcda810-8ace-46ea-9a41-f9179ac63f36 is loaded    │ PASS   │      1.483µs │
│ island_browser │                        │ asset     │ dashboard island_browser-86a8fe6b-5da7-4584-a376-ac52a9d4d7a2 is loaded    │ PASS   │        402ns │
│ island_browser │                        │ asset     │ dashboard island_browser-8a93ddf1-8cd3-4316-bf78-eaaa15af9e8c is loaded    │ PASS   │        359ns │
│ island_browser │                        │ asset     │ search island_browser-84eb0548-660b-42af-9af1-a762aaa6bb84 is loaded       │ PASS   │        360ns │
│ island_browser │                        │ asset     │ search island_browser-dc4eff97-2d93-4db7-b1c6-2e6e38699949 is loaded       │ PASS   │        382ns │
│ island_browser │ compromised_credential │ asset     │ index_template logs-island_browser.compromised_credential is loaded        │ PASS   │        394ns │
│ island_browser │ compromised_credential │ asset     │ ingest_pipeline logs-island_browser.compromised_credential-0.3.0 is loaded │ PASS   │        161ns │
│ island_browser │ device                 │ asset     │ index_template logs-island_browser.device is loaded                        │ PASS   │        476ns │
│ island_browser │ device                 │ asset     │ ingest_pipeline logs-island_browser.device-0.3.0 is loaded                 │ PASS   │        200ns │
│ island_browser │ user                   │ asset     │ index_template logs-island_browser.user is loaded                          │ PASS   │        348ns │
│ island_browser │ user                   │ asset     │ ingest_pipeline logs-island_browser.user-0.3.0 is loaded                   │ PASS   │        182ns │
╰────────────────┴────────────────────────┴───────────┴────────────────────────────────────────────────────────────────────────────┴────────┴──────────────╯
--- Test results for package: island_browser - END   ---
Done
Run pipeline tests for the package
--- Test results for package: island_browser - START ---
╭────────────────┬────────────────────────┬───────────┬────────────────────────────────────────────────────────────┬────────┬──────────────╮
│ PACKAGE        │ DATA STREAM            │ TEST TYPE │ TEST NAME                                                  │ RESULT │ TIME ELAPSED │
├────────────────┼────────────────────────┼───────────┼────────────────────────────────────────────────────────────┼────────┼──────────────┤
│ island_browser │ compromised_credential │ pipeline  │ (ingest pipeline warnings test-compromised-credential.log) │ PASS   │ 363.221533ms │
│ island_browser │ compromised_credential │ pipeline  │ test-compromised-credential.log                            │ PASS   │ 179.514301ms │
│ island_browser │ device                 │ pipeline  │ (ingest pipeline warnings test-device.log)                 │ PASS   │ 383.625087ms │
│ island_browser │ device                 │ pipeline  │ test-device.log                                            │ PASS   │ 340.670461ms │
│ island_browser │ user                   │ pipeline  │ (ingest pipeline warnings test-user.log)                   │ PASS   │ 369.605326ms │
│ island_browser │ user                   │ pipeline  │ test-user.log                                              │ PASS   │ 195.183394ms │
╰────────────────┴────────────────────────┴───────────┴────────────────────────────────────────────────────────────┴────────┴──────────────╯
--- Test results for package: island_browser - END   ---
Done
Run policy tests for the package
--- Test results for package: island_browser - START ---
No test results
--- Test results for package: island_browser - END   ---
Done
Run static tests for the package
--- Test results for package: island_browser - START ---
╭────────────────┬────────────────────────┬───────────┬──────────────────────────┬────────┬──────────────╮
│ PACKAGE        │ DATA STREAM            │ TEST TYPE │ TEST NAME                │ RESULT │ TIME ELAPSED │
├────────────────┼────────────────────────┼───────────┼──────────────────────────┼────────┼──────────────┤
│ island_browser │ compromised_credential │ static    │ Verify sample_event.json │ PASS   │ 112.850519ms │
│ island_browser │ device                 │ static    │ Verify sample_event.json │ PASS   │ 136.543042ms │
│ island_browser │ user                   │ static    │ Verify sample_event.json │ PASS   │ 121.099786ms │
╰────────────────┴────────────────────────┴───────────┴──────────────────────────┴────────┴──────────────╯
--- Test results for package: island_browser - END   ---
Done
Run system tests for the package
2025/09/17 18:42:50  INFO Installing package...
2025/09/17 18:43:03  INFO Running test for data_stream "compromised_credential" with configuration 'default'
2025/09/17 18:43:12  INFO Setting up independent Elastic Agent...
2025/09/17 18:43:20  INFO Setting up service...
2025/09/17 18:43:44  INFO Tearing down service...
2025/09/17 18:43:45  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/island_browser-1758114825020732482.log
2025/09/17 18:43:46  INFO Tearing down agent...
2025/09/17 18:43:47  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/elastic-agent-1758114827252767988.log
2025/09/17 18:43:55  INFO Running test for data_stream "device" with configuration 'default'
2025/09/17 18:44:03  INFO Setting up independent Elastic Agent...
2025/09/17 18:44:11  INFO Setting up service...
2025/09/17 18:44:32  INFO Tearing down service...
2025/09/17 18:44:33  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/island_browser-1758114873257071346.log
2025/09/17 18:44:35  INFO Tearing down agent...
2025/09/17 18:44:35  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/elastic-agent-1758114875284533047.log
2025/09/17 18:44:43  INFO Running test for data_stream "user" with configuration 'default'
2025/09/17 18:44:51  INFO Setting up independent Elastic Agent...
2025/09/17 18:45:00  INFO Setting up service...
2025/09/17 18:45:21  INFO Tearing down service...
2025/09/17 18:45:22  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/island_browser-1758114922089027257.log
2025/09/17 18:45:24  INFO Tearing down agent...
2025/09/17 18:45:24  INFO Write container logs to file: /home/devuser/bitbucket/integrations/build/container-logs/elastic-agent-1758114924288254984.log
2025/09/17 18:45:32  INFO Uninstalling package...
--- Test results for package: island_browser - START ---
╭────────────────┬────────────────────────┬───────────┬───────────┬────────┬───────────────╮
│ PACKAGE        │ DATA STREAM            │ TEST TYPE │ TEST NAME │ RESULT │  TIME ELAPSED │
├────────────────┼────────────────────────┼───────────┼───────────┼────────┼───────────────┤
│ island_browser │ compromised_credential │ system    │ default   │ PASS   │ 40.367502635s │
│ island_browser │ device                 │ system    │ default   │ PASS   │ 36.852663444s │
│ island_browser │ user                   │ system    │ default   │ PASS   │ 37.664424353s │
╰────────────────┴────────────────────────┴───────────┴───────────┴────────┴───────────────╯
--- Test results for package: island_browser - END   ---
Done

Related issues

Screenshot

image image

@janvi-elastic janvi-elastic requested a review from a team as a code owner September 17, 2025 13:16
@elastic-vault-github-plugin-prod
Copy link

elastic-vault-github-plugin-prod bot commented Sep 17, 2025

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

@andrewkroh andrewkroh added Integration:island_browser Island Browser Crest Contributions from Crest developement team. dashboard Relates to a Kibana dashboard bug, enhancement, or modification. documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations] labels Sep 17, 2025
@elasticmachine
Copy link

Pinging @elastic/security-service-integrations (Team:Security-Service Integrations)

### How it works

This integration periodically queries the Island Browser API to retrieve details for devices and users, and audit events.
This integration periodically queries the Island Browser API to retrieve details for devices, users and compromised credentials, and audit events.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
This integration periodically queries the Island Browser API to retrieve details for devices, users and compromised credentials, and audit events.
This integration periodically queries the Island Browser API to retrieve details for devices, users and compromised credentials, and to log audit events.

We're stretching the possible cognitive suspension here (as noted in the previous review, it was already tenuous), adding the second infinitive here relaxes that so that it doesn't seem wrong now. It's still correct either way, but this reads better IMO.

@janvi-elastic janvi-elastic requested a review from efd6 September 22, 2025 08:25
@janvi-elastic janvi-elastic marked this pull request as draft September 24, 2025 07:24
@elastic-sonarqube
Copy link

@elasticmachine
Copy link

💚 Build Succeeded

History

@janvi-elastic janvi-elastic marked this pull request as ready for review October 8, 2025 07:24
@efd6 efd6 merged commit 51fe49d into elastic:main Oct 8, 2025
8 checks passed
@elastic-vault-github-plugin-prod

Package island_browser - 0.4.0 containing this change is available at https://epr.elastic.co/package/island_browser/0.4.0/

agithomas pushed a commit to agithomas/integrations that referenced this pull request Oct 30, 2025
…ed credential datastream (elastic#15372)

The release includes compromised credential data stream, associated dashboards 
and visualizations.

Island Browser fields are mapped to their corresponding ECS fields where possible.

Test samples were derived from documentation.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Crest Contributions from Crest developement team. dashboard Relates to a Kibana dashboard bug, enhancement, or modification. documentation Improvements or additions to documentation. Applied to PRs that modify *.md files. Integration:island_browser Island Browser Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants