Skip to content

Akamai CPC doc creation #5352

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

Open
wants to merge 7 commits into
base: main
Choose a base branch
from
Open
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
12 changes: 12 additions & 0 deletions blog-service/2025-05-09-collection.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
title: Akamai CPC Source (Collection)
image: https://help.sumologic.com/img/sumo-square.png
keywords:
- c2c
- akamai-cpc-source
hide_table_of_contents: true
---

import useBaseUrl from '@docusaurus/useBaseUrl';

We're excited to announce the release of our new cloud-to-cloud source for Akamai CPC. This source aims to collect CPC-Configs, CPC-Alerts, and CPC-Alert Details data from the Akamai platform and send them to Sumo Logic for streamlined analysis. [Learn more](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-cpc-source).
1 change: 1 addition & 0 deletions cid-redirects.json
Original file line number Diff line number Diff line change
Expand Up @@ -1658,6 +1658,7 @@
"/cid/10126": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/trust-login-source",
"/cid/10128": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/vmware-workspace-one-source",
"/cid/10129": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/dragos-source",
"/cid/10731": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-cpc-source",
"/cid/10135": "/docs/manage/manage-subscription/create-and-manage-orgs/manage-org-settings",
"/cid/10136": "/docs/send-data/hosted-collectors/amazon-aws/aws-kinesis-firehose-logs-source",
"/cid/10234": "/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/trellix-mvisio-epo-source",
Expand Down
2 changes: 1 addition & 1 deletion docs/integrations/product-list/product-list-a-l.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ For descriptions of the different types of integrations Sumo Logic offers, see [
| <img src={useBaseUrl('img/integrations/containers-orchestration/activemq.png')} alt="Thumbnail icon" width="50"/> | [ActiveMQ](https://activemq.apache.org/) | Apps: <br/> - [ActiveMQ](/docs/integrations/containers-orchestration/activemq/)<br/> - [ActiveMQ - OpenTelemetry](/docs/integrations/containers-orchestration/opentelemetry/activemq-opentelemetry/) |
| <img src={useBaseUrl('img/integrations/misc/adaxes-logo.png')} alt="Thumbnail icon" width="100"/> | [Adaxes](https://www.adaxes.com/) | Cloud SIEM integration: [Adaxes](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/87fd53e1-0bfd-4e53-9979-4fb6ec196cc2.md) |
| <img src={useBaseUrl('img/send-data/airtable-icon.png')} alt="Thumbnail icon" width="50"/> | [Airtable](https://www.airtable.com/) | App: [Airtable](/docs/integrations/saas-cloud/airtable/) <br/>Automation integration: [Airtable](/docs/platform-services/automation-service/app-central/integrations/airtable/) <br/>Cloud SIEM integration: [Airtable](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/38db1e35-cb46-4a49-ae8c-b6f766ff5378.md) <br/>Collector: [Airtable Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/airtable-source/) |
| <img src={useBaseUrl('img/integrations/saas-cloud/akamai.svg')} alt="Thumbnail icon" width="75"/> | [Akamai](https://www.akamai.com/) | Apps: <br/> - [Akamai Cloud Monitor](/docs/integrations/saas-cloud/akamai-cloud-monitor/) <br/>- [Akamai DataStream](/docs/integrations/saas-cloud/akamai-datastream/) <br/> - [Akamai Security Events](/docs/integrations/security-threat-detection/akamai-security-events/) <br/>Cloud SIEM integration: [Akamai](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/47292522-c7f4-4c0e-9ab5-4426c0215be3.md) <br/>Collector: [Akamai SIEM API Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-siem-api-source/) |
| <img src={useBaseUrl('img/integrations/saas-cloud/akamai.svg')} alt="Thumbnail icon" width="75"/> | [Akamai](https://www.akamai.com/) | Apps: <br/> - [Akamai Cloud Monitor](/docs/integrations/saas-cloud/akamai-cloud-monitor/) <br/>- [Akamai DataStream](/docs/integrations/saas-cloud/akamai-datastream/) <br/> - [Akamai Security Events](/docs/integrations/security-threat-detection/akamai-security-events/) <br/>Cloud SIEM integration: [Akamai](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/47292522-c7f4-4c0e-9ab5-4426c0215be3.md) <br/>Collector: [Akamai CPC](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-cpc-source) <br/> [Akamai SIEM API Source](/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-siem-api-source/) |
| <img src={useBaseUrl('img/platform-services/automation-service/app-central/logos/akenza.png')} alt="Thumbnail icon" width="75"/> | [Akenza](https://akenza.io/) | Automation integration: [Akenza](/docs/platform-services/automation-service/app-central/integrations/akenza/) |
| <img src={useBaseUrl('img/integrations/security-threat-detection/alert-logic-logo.jpg')} alt="Thumbnail icon" width="100"/> | [Alert Logic](https://www.alertlogic.com/) | App: [Alert Logic](/docs/integrations/security-threat-detection/alert-logic/) |
| <img src={useBaseUrl('img/integrations/misc/alibaba-cloud-logo.png')} alt="Thumbnail icon" width="100"/> | [Alibaba Cloud](https://www.alibabacloud.com/) | Cloud SIEM integration: [Alibaba](https://github.com/SumoLogic/cloud-siem-content-catalog/blob/master/vendors/d7de27e2-7680-48a0-96aa-1c26cf8d1ca4.md) |
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
---
id: akamai-cpc-source
title: Akamai CPC Source
sidebar_label: Akamai CPC
tags:
- cloud-to-cloud
- akamai-cpc
description: Learn how to fetch CPC-Configs, CPC-Alerts, and CPC-Alert Details from the Akamai platform and send it to Sumo Logic.
---

import CodeBlock from '@theme/CodeBlock';
import ExampleJSON from '/files/c2c/akamai-cpc/example.json';
import MyComponentSource from '!!raw-loader!/files/c2c/akamai-cpc/example.json';
import TerraformExample from '!!raw-loader!/files/c2c/akamai-cpc/example.tf';
import useBaseUrl from '@docusaurus/useBaseUrl';

<img src={useBaseUrl('img/integrations/saas-cloud/akamai.svg')} alt="Thumbnail icon" width="90"/>

Akamai Client-Side Protection and Compliance (CPC) is a security solution designed to monitor and protect against client-side threats such as JavaScript-based data skimming and formjacking. It provides visibility into third-party script behavior and enforces security policies to ensure compliance with data protection standards.

## Data collected

| Polling Interval | Data |
| :--- | :--- |
| 12 hours | CPC-Configs |
| 5 minutes | CPC-Alerts |

## Setup

### Vendor configuration

You'll need a **Host Name**, **Client Token**, **Client Secret**, and **Access Token**. To generate these, follow these steps:

- **Host Name**. The Akamai API base URL used to sending authenticated requests.
- Refer to the [Akamai Documentation](https://techdocs.akamai.com/developer/docs/set-up-authentication-credentials) to generate **Client Token**, **Client Secret**, and **Access Token**.

### Source configuration

When you create an Akamai CPC 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](/docs/send-data/hosted-collectors/configure-hosted-collector).

To configure an Akamai CPC 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 Collection page, click **Add Source** next to a Hosted Collector.
1. Search for and select **Akamai CPC**.
1. Enter a **Name** for the Source. 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.
* ![green check circle.png](/img/reuse/green-check-circle.png) A green circle with a checkmark is shown when the field exists in the Fields table schema.
* ![orange exclamation point.png](/img/reuse/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 (that is, dropped).
1. **Client Token**. Enter the Client token value collected from the Akamai platform.
1. **Client Secret**. Enter the Client secret value collected from the Akamai platform.
1. **Access Token**. Enter the Access token value collected from the Akamai platform.
1. **API Host Name**. Enter the API Host Name value collected from the Akamai platform.
1. (Optional) **Collect Alert Logs**. Select this checkbox to collect the alert logs from the Akamai platform.
1. (Optional) **Supported Severity Level**. Select the severity of the alert logs from the dropdown.
1. (Optional) **Supported Alert Type**. Select the type of alerts from the dropdown.
1. (Optional) **Supported Alert Status**. Select the status of the alerts from the dropdown.
1. (Optional) **Collect Alert Details**. Select this checkbox to collect the alert details from the Akamai platform.
1. The **CPC Configs Polling Interval** is set to 12 hours by default, you can adjust it based on your needs.
1. (Optional) **Processing Rules for Logs**. Configure any desired filters, such as allowlist, denylist, 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 configuration

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":"Akamai CPC"}` | 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"}` |
| clientToken | String | Yes | `null` | A unique identifier used to authenticate API requests. | |
| clientSecret | String | Yes | `null` | User account secret which will be used in authentication. | |
| accessToken | String | Yes | `null` | Token granting access to the Akamai CPC API on behalf of a client. | |
| akamaiHostName | String | Yes | `null` | The base URL of the Akamai API endpoint used to interact with CPC services. | |
| collectAlertsLogs | Boolean | No | `null` | Specify if we need to collect the alert logs. | |
| severityLevel | String Array | No | `null` | Specify the alert logs severity | |
| alertType | String Array | No | `null` | Specify the type of alerts. | |
| alertStatus | String Array | No | `null` | Specify the status of the alerts. | |
| pollingIntervalAlertsMin | Integer | No | `5 minutes` | Time interval (in minutes) after which the source will check for new data.<br/>**Minimum**: 5 minutes<br/>**Maximum**: 60 minutes | |
| collectAlertDetails | Boolean | No | `false` | Specify if we need to collect the alert details. | |
| pollingIntervalCPCConfigsHrs | Integer | Yes | `12 hours` | Time interval (in minutes) after which the source will check for new data.<br/>**Minimum**: 1 hour<br/>**Maximum**: 24 hours | |


### JSON example

<CodeBlock language="json">{MyComponentSource}</CodeBlock>

<a href="/files/c2c/akamai-cpc/example.json" target="_blank">Download example</a>

### Terraform example

<CodeBlock language="json">{TerraformExample}</CodeBlock>

<a href="/files/c2c/akamai-cpc/example.tf" target="_blank">Download example</a>

## FAQ

:::info
Click [here](/docs/c2c/info) for more information about Cloud-to-Cloud sources.
:::
Original file line number Diff line number Diff line change
Expand Up @@ -78,6 +78,12 @@ In this section, we'll introduce the following concepts:
<p>Airtable Source helps to retrieve Airtable audit logs into the Sumo Logic environment.</p>
</div>
</div>
<div className="box smallbox card">
<div className="container">
<a href="/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-cpc-source"><img src={useBaseUrl('img/integrations/saas-cloud/akamai.svg')} alt="icon" width="120"/><h4>Akamai CPC Source</h4></a>
<p>Learn to fetch CPC-Configs, CPC-Alerts, and CPC-Alert Details from the Akamai platform.</p>
</div>
</div>
<div className="box smallbox card">
<div className="container">
<a href="/docs/send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-siem-api-source"><img src={useBaseUrl('img/integrations/saas-cloud/akamai.svg')} alt="Thumbnail icon" width="120"/><h4>Akamai SIEM API</h4></a>
Expand Down
1 change: 1 addition & 0 deletions sidebars.ts
Original file line number Diff line number Diff line change
Expand Up @@ -429,6 +429,7 @@ module.exports = {
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/1password-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/abnormal-security-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/airtable-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-cpc-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/akamai-siem-api-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/armis-api-source',
'send-data/hosted-collectors/cloud-to-cloud-integration-framework/asana-source',
Expand Down
30 changes: 30 additions & 0 deletions static/files/c2c/akamai-cpc/example.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
"api.version": "v1",
"source": {
"config": {
"name": "c2c-Akamai CPC",
"clientToken":"akab-ctfkqxxxxxxa3quph-xxxxxx",
"clientSecret":"IyVVIdYgBfxxxxxbToZMGGaxxxxxxxxxxM",
"accessToken":"akabxxxxxx4ke52-xxxxxxxx5efol",
"hostName":"abcde-efgx-xxxxxx.net",
"collectAlertsLogs": true,
"pollingIntervalAlertsMin": 5,
"collectAlertDetails": true,
"severityLevel": [
"HIGH",
"MEDIUM"
],
"alertType": [
"SUSPICIOUS_SCRIPT_ACTIVITY_EG_CPC_ALERT"
],
"alertStatus": [
"OPEN"
],
"pollingIntervalCPCConfigsHrs":12
},
"schemaRef": {
"type": "Akamai CPC"
},
"sourceType": "Universal"
}
}
31 changes: 31 additions & 0 deletions static/files/c2c/akamai-cpc/example.tf
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
resource "sumologic_cloud_to_cloud_source" "akamai-cpc-source" {
collector_id = sumologic_collector.collector.id
schema_ref = {
type = "Akamai CPC"
}
config = jsonencode({
"name": "c2c-Akamai CPC",
"clientToken":"akab-ctfkqxxxxxxa3quph-xxxxxx",
"clientSecret":"IyVVIdYgBfxxxxxbToZMGGaxxxxxxxxxxM",
"accessToken":"akabxxxxxx4ke52-xxxxxxxx5efol",
"hostName":"abcde-efgx-xxxxxx.net",
"collectAlertsLogs": true,
"pollingIntervalAlertsMin": 5,
"collectAlertDetails": true,
"severityLevel": [
"HIGH",
"MEDIUM"
],
"alertType": [
"SUSPICIOUS_SCRIPT_ACTIVITY_EG_CPC_ALERT"
],
"alertStatus": [
"OPEN"
],
"pollingIntervalCPCConfigsHrs":12
})
}
resource "sumologic_collector" "collector" {
name = "my-collector"
description = "Just testing this"
}