Skip to main content

Kandji Source

icon

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 IntervalData
5 minThreat Details
12 hoursList Devices
12 hoursDevice Activities
12 hoursDevice Details

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:

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.

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.

To configure Kandji Source:

  1. Classic UI. In the main Sumo Logic menu, select Manage Data > Collection > Collection.
    New 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.
  2. On the Collectors page, click Add Source next to a Hosted Collector.
  3. Search for and select the Kandji icon.
  4. Enter a Name to display for the Source in Sumo Logic. The description is optional.
  5. (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.
  6. (Optional) Fields. Click the +Add Field link to define the fields you want to associate. Each field needs a name (key) and value.
    • green check circle.png A green circle with a check mark is shown when the field exists in the Fields table schema.
    • orange exclamation point.png 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.
  7. In Endpoint URL, enter the endpoint URL collected from the Kandji platform.
  8. In Bearer Token, enter the bearer token collected from the Kandji platform.
  9. Select the Collect Threat Details checkbox to collect threat data. By default, Collect Threat Details checkbox will be selected.
  10. The Threat Details Interval is set for 5 minutes by default. You can adjust it based on your needs.
  11. In the Devices section, select the type of devices data: Collect Devices, Collect Device Activities, and/or Collect Device Details.
  12. The Devices Interval is set for 12 hours hours by default. You can adjust it based on your needs.
  13. Processing Rules. Configure any desired filters, such as allowlist, deny list, hash, or mask, as described in Create a Processing Rule.
  14. 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 for details.

ParameterTypeValueRequiredDescription
schemaRefJSON Object{"type":"Kandji"}YesDefine the specific schema type.
sourceTypeString"Universal"YesType of source.
configJSON ObjectConfiguration objectYesSource type specific values.

Configuration Object​

ParameterTypeRequiredDefaultDescriptionExample
nameStringYesnullType a desired name of the source. The name must be unique per Collector. This value is assigned to the metadata field _source."mySource"
descriptionStringNonullType a description of the source."Testing source"
categoryStringNonullType a category of the source. This value is assigned to the metadata field _sourceCategory. See best practices for details."mySource/test"
fieldsJSON ObjectNonullJSON 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"}
requestEndpointStringYesnullThe API URL to fetch the data from the Kandji EDR log source.https://SubDomain.api.kandji.io
bearerTokenStringYesnullAPI Token created for the user account in the Kandji portal.
pollingIntervalMinIntegerYes5 minsTime interval (in minutes) after which the source will check for new data for API: Threat Details.
pollingIntervalHourIntegerYes12 hoursTime interval (in hours) after which the source will check for new data for API: List Devices, Collect Activities, and Collect Details.
collectThreatDetailsBooleanNonullSpecify if we need to collect the tenant's threat details.
collectDevicesBooleanNonullSpecify if we need to collect the tenant's devices.
collectDeviceActivitiesBooleanNonullSpecify if we need to collect the Device activity of the tenant.
collectDeviceDetailsBooleanNonullSpecify if we need to collect the Device details of the tenant.

JSON example​

{
"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"
}
}
Download example

Terraform example​

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"
}
Download example

FAQ​

info

Click here for more information about Cloud-to-Cloud sources.

Status
Legal
Privacy Statement
Terms of Use

Copyright © 2024 by Sumo Logic, Inc.