-
Notifications
You must be signed in to change notification settings - Fork 228
Kandji C2C source doc #4633
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
Kandji C2C source doc #4633
Changes from 9 commits
Commits
Show all changes
10 commits
Select commit
Hold shift + click to select a range
91e432d
Kandji C2C source doc
JV0812 58dc74e
Update blog-service/2024-10-11-collection.md
JV0812 18de20d
Update static/files/c2c/kandji/example.json
JV0812 c0b98c6
Update docs/send-data/hosted-collectors/cloud-to-cloud-integration-fr…
JV0812 b45df2c
Update docs/send-data/hosted-collectors/cloud-to-cloud-integration-fr…
JV0812 f19d53c
Update kandji-source.md
JV0812 2535e31
Update kandji-source.md
JV0812 c9cb922
Merge branch 'main' into kandji-edr-source
jpipkin1 9e0c608
Merge branch 'main' into kandji-edr-source
jpipkin1 02ed6f3
Change release note date
jpipkin1 File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,14 @@ | ||
| --- | ||
| title: Kandji C2C Source (Collection) | ||
| image: https://help.sumologic.com/img/sumo-square.png | ||
| keywords: | ||
| - collection | ||
| - kandji | ||
| hide_table_of_contents: true | ||
| --- | ||
|
|
||
| import useBaseUrl from '@docusaurus/useBaseUrl'; | ||
|
|
||
| <a href="https://help.sumologic.com/release-notes-service/rss.xml"><img src={useBaseUrl('img/release-notes/rss-orange2.png')} alt="icon" width="50"/></a> | ||
|
|
||
| We're excited to announce the release of our new cloud-to-cloud source for Kandji. This source helps you to collect threat details, device lists, activity logs, and device information from the Kandji platform, and ingest them into Sumo Logic for streamlined analysis. [Learn more](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/kandji-source). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
112 changes: 112 additions & 0 deletions
112
...nd-data/hosted-collectors/cloud-to-cloud-integration-framework/kandji-source.md
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,112 @@ | ||
| --- | ||
| id: kandji-source | ||
| title: Kandji Source | ||
| sidebar_label: Kandji | ||
| tags: | ||
| - cloud-to-cloud | ||
| - kandji-edr | ||
| description: The Kandji Source provides a secure endpoint to receive threat details, devices list, device activities, and device details from the Kandji platform. | ||
| --- | ||
| import CodeBlock from '@theme/CodeBlock'; | ||
| import ExampleJSON from '/files/c2c/kandji/example.json'; | ||
| import MyComponentSource from '!!raw-loader!/files/c2c/kandji/example.json'; | ||
| import TerraformExample from '!!raw-loader!/files/c2c/kandji/example.tf'; | ||
| import ForwardToSiem from '/docs/reuse/forward-to-siem.md'; | ||
| import useBaseUrl from '@docusaurus/useBaseUrl'; | ||
|
|
||
| <img src={useBaseUrl('img/send-data/kandji-logo.png')} alt="icon" width="50"/> | ||
|
|
||
| Kandji is the Apple device management and security platform that empowers secure and productive global work. With Kandji, Apple devices transform themselves into enterprise-ready endpoints, with all the right apps, settings, and security systems in place. Through advanced automation and thoughtful experiences, Kandji brings much-needed harmony to the way IT, InfoSec, and Apple device users work. | ||
|
|
||
| ## Data collected | ||
|
|
||
| | Polling Interval | Data | | ||
| | :--- | :--- | | ||
| | 5 min | [Threat Details](https://api-docs.kandji.io/#d041043a-ea47-47d5-b6f1-234ef422494d) | | ||
| | 12 hours | [List Devices](https://api-docs.kandji.io/#78209960-31a7-4e3b-a2c0-95c7e65bb5f9) | | ||
| | 12 hours | [Device Activities](https://api-docs.kandji.io/#80710108-fbdb-4dfd-af84-50adf15c5a23) | | ||
| | 12 hours | [Device Details](https://api-docs.kandji.io/#efa2170d-e5f7-4b97-8f4c-da6f84ba58b5) | | ||
|
|
||
| ## Setup | ||
|
|
||
| ### Vendor configuration | ||
|
|
||
| The Kandji source requires you to provide the Endpoint URL and Bearer Token. Follow the below steps to generate the required values: | ||
|
|
||
| - To generate the **Endpoint URL**, follow the instructions mentioned in the [Kandji documentation](https://api-docs.kandji.io/#intro). | ||
| - To generate the **Bearer Token**, follow the instructions mentioned in the [Kandji documentation](https://support.kandji.io/support/solutions/articles/72000560412-kandji-api). | ||
|
|
||
| ### Source configuration | ||
|
|
||
| :::note | ||
| Threat Details endpoint is only available for EDR customers. | ||
| ::: | ||
|
|
||
| :::info | ||
| While retrieving threats, the source can face data loss due to API limitations and improper pagination support. If you face any such discrepancies, contact [Sumo Logic Support](https://support.sumologic.com/support/s/). | ||
| ::: | ||
|
|
||
| When you create a Kandji Source, you add it to a Hosted Collector. Before creating the Source, identify the Hosted Collector you want to use or create a new Hosted Collector. For instructions, see [Configure a Hosted Collector and Source](/docs/send-data/hosted-collectors/configure-hosted-collector). | ||
|
|
||
| To configure Kandji Source: | ||
| 1. [**Classic UI**](/docs/get-started/sumo-logic-ui-classic). In the main Sumo Logic menu, select **Manage Data > Collection > Collection**. <br/>[**New UI**](/docs/get-started/sumo-logic-ui). In the Sumo Logic top menu select **Configuration**, and then under **Data Collection** select **Collection**. You can also click the **Go To...** menu at the top of the screen and select **Collection**. | ||
| 1. On the Collectors page, click **Add Source** next to a Hosted Collector. | ||
| 1. Search for and select the **Kandji** icon. | ||
| 1. Enter a **Name** to display for the Source in Sumo Logic. The description is optional. | ||
| 1. (Optional) For **Source Category**, enter any string to tag the output collected from the Source. Category metadata is stored in a searchable field called `_sourceCategory`. | ||
| 1. (Optional) **Fields**. Click the **+Add Field** link to define the fields you want to associate. Each field needs a name (key) and value. | ||
| *  A green circle with a check mark is shown when the field exists in the Fields table schema. | ||
| *  An orange triangle with an exclamation point is shown when the field doesn't exist in the Fields table schema. In this case, an option to automatically add the nonexistent fields to the Fields table schema is provided. If a field is sent to Sumo Logic that does not exist in the Fields schema it is ignored, known as dropped. | ||
| 1. In **Endpoint URL**, enter the endpoint URL collected from the Kandji platform. | ||
| 1. In **Bearer Token**, enter the bearer token collected from the Kandji platform. | ||
| 1. Select the **Collect Threat Details** checkbox to collect threat data. By default, **Collect Threat Details** checkbox will be selected. | ||
| 1. The **Threat Details Interval** is set for 5 minutes by default. You can adjust it based on your needs. | ||
| 1. In the Devices section, select the type of devices data: **Collect Devices**, **Collect Device Activities**, and/or **Collect Device Details**. | ||
| 1. The **Devices Interval** is set for 12 hours hours by default. You can adjust it based on your needs. | ||
| 1. **Processing Rules**. Configure any desired filters, such as allowlist, deny list, hash, or mask, as described in [Create a Processing Rule](/docs/send-data/collection/processing-rules/create-processing-rule). | ||
| 1. When you are finished configuring the Source, click **Save**. | ||
|
|
||
| ## JSON schema | ||
|
|
||
| Sources can be configured using UTF-8 encoded JSON files with the Collector Management API. See [Use JSON to Configure Sources](/docs/send-data/use-json-configure-sources) for details. | ||
|
|
||
| | Parameter | Type | Value | Required | Description | | ||
| |:--|:--|:--|:--|:--| | ||
| | schemaRef | JSON Object | `{"type":"Kandji"}` | Yes | Define the specific schema type. | | ||
| | sourceType | String | `"Universal"` | Yes | Type of source. | | ||
| | config | JSON Object | [Configuration object](#configuration-object) | Yes | Source type specific values. | | ||
|
|
||
| ### Configuration Object | ||
|
|
||
| | Parameter | Type | Required | Default | Description | Example | | ||
| |:--|:--|:--|:--|:--|:--| | ||
| | name | String | Yes | `null` | Type a desired name of the source. The name must be unique per Collector. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_source`. | `"mySource"` | | ||
| | description | String | No | `null` | Type a description of the source. | `"Testing source"` | ||
| | category | String | No | `null` | Type a category of the source. This value is assigned to the [metadata](/docs/search/get-started-with-search/search-basics/built-in-metadata) field `_sourceCategory`. See [best practices](/docs/send-data/best-practices) for details. | `"mySource/test"` | ||
| | fields | JSON Object | No | `null` | JSON map of key-value fields (metadata) to apply to the Collector or Source. Use the boolean field `_siemForward` to enable forwarding to SIEM.|`{"_siemForward": false, "fieldA": "valueA"}` | | ||
| | requestEndpoint | String | Yes | `null` | The API URL to fetch the data from the Kandji EDR log source. | `https://SubDomain.api.kandji.io` | | ||
| | bearerToken | String | Yes | `null` | API Token created for the user account in the Kandji portal. | | | ||
| | pollingIntervalMin | Integer | Yes | 5 mins | Time interval (in minutes) after which the source will check for new data for API: Threat Details. | | | ||
| | pollingIntervalHour | Integer | Yes | 12 hours | Time interval (in hours) after which the source will check for new data for API: List Devices, Collect Activities, and Collect Details. | | | ||
| | collectThreatDetails | Boolean | No | `null` | Specify if we need to collect the tenant's threat details. | | | ||
| | collectDevices | Boolean | No | `null` | Specify if we need to collect the tenant's devices. | | | ||
| | collectDeviceActivities | Boolean | No | `null` | Specify if we need to collect the Device activity of the tenant. | | | ||
| | collectDeviceDetails | Boolean | No | `null` | Specify if we need to collect the Device details of the tenant. | | | ||
|
|
||
| ### JSON example | ||
|
|
||
| <CodeBlock language="json">{MyComponentSource}</CodeBlock> | ||
|
|
||
| <a href="/files/c2c/kandji/example.json" target="_blank">Download example</a> | ||
|
|
||
| ### Terraform example | ||
|
|
||
| <CodeBlock language="json">{TerraformExample}</CodeBlock> | ||
|
|
||
| <a href="/files/c2c/kandji/example.tf" target="_blank">Download example</a> | ||
|
|
||
| ## FAQ | ||
|
|
||
| :::info | ||
| Click [here](/docs/c2c/info) for more information about Cloud-to-Cloud sources. | ||
| ::: | ||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,20 @@ | ||
| { | ||
| "api.version": "v1", | ||
| "source": { | ||
| "config": { | ||
| "name": "Kandji", | ||
| "requestEndpoint": "https://sumo.api.kandji.io", | ||
| "bearerToken": "xxxxxxxxxxxxxxxxxxxxxxxx", | ||
| "collectThreatDetails": true, | ||
| "collectDevices": true, | ||
| "pollingIntervalMin": 5, | ||
| "pollingIntervalHour": 12, | ||
| "collectDeviceActivities": true, | ||
| "collectDeviceDetails": true | ||
| }, | ||
| "schemaRef": { | ||
| "type": "Kandji" | ||
| }, | ||
| "sourceType": "Universal" | ||
| } | ||
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,21 @@ | ||
| resource "sumologic_cloud_to_cloud_source" "kandji" { | ||
| collector_id = sumologic_collector.collector.id | ||
| schema_ref = { | ||
| type = "Kandji" | ||
| } | ||
| config = jsonencode({ | ||
| "name": "Kandji", | ||
| "requestEndpoint": "https://sumo.api.kandji.io", | ||
| "bearerToken": "xxxxxxxxxxxxxxxxxxxxxxxx", | ||
| "collectThreatDetails": true, | ||
| "collectDevices": true, | ||
| "pollingIntervalMin": 5, | ||
| "pollingIntervalHour": 12, | ||
| "collectDeviceActivities": true, | ||
| "collectDeviceDetails": true | ||
| }) | ||
| } | ||
| resource "sumologic_collector" "collector" { | ||
| name = "my-collector" | ||
| description = "Just testing this" | ||
| } |
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.