- Elastic integrations
- Integrations quick reference
- 1Password
- Abnormal Security
- ActiveMQ
- Active Directory Entity Analytics
- Airflow
- Akamai
- Apache
- API (custom)
- Arbor Peakflow SP Logs
- Arista NG Firewall
- Atlassian
- Auditd
- Auth0
- authentik
- AWS
- Amazon CloudFront
- Amazon DynamoDB
- Amazon EBS
- Amazon EC2
- Amazon ECS
- Amazon EMR
- AWS API Gateway
- Amazon GuardDuty
- AWS Health
- Amazon Kinesis Data Firehose
- Amazon Kinesis Data Stream
- Amazon Managed Streaming for Apache Kafka (MSK)
- Amazon NAT Gateway
- Amazon RDS
- Amazon Redshift
- Amazon S3
- Amazon S3 Storage Lens
- Amazon Security Lake
- Amazon SNS
- Amazon SQS
- Amazon VPC
- Amazon VPN
- AWS Bedrock
- AWS Billing
- AWS CloudTrail
- AWS CloudWatch
- AWS ELB
- AWS Fargate
- AWS Inspector
- AWS Lambda
- AWS Logs (custom)
- AWS Network Firewall
- AWS Route 53
- AWS Security Hub
- AWS Transit Gateway
- AWS Usage
- AWS WAF
- Azure
- Activity logs
- App Service
- Application Gateway
- Application Insights metrics
- Application Insights metrics overview
- Application State Insights metrics
- Azure logs (v2 preview)
- Azure OpenAI
- Billing metrics
- Container instance metrics
- Container registry metrics
- Container service metrics
- Custom Azure Logs
- Custom Blob Storage Input
- Database Account metrics
- Event Hub input
- Firewall logs
- Frontdoor
- Functions
- Microsoft Entra ID
- Monitor metrics
- Network Watcher VNet
- Network Watcher NSG
- Platform logs
- Resource metrics
- Spring Cloud logs
- Storage Account metrics
- Virtual machines metrics
- Virtual machines scaleset metrics
- Barracuda
- BitDefender
- Bitwarden
- blacklens.io
- Blue Coat Director Logs
- BBOT (Bighuge BLS OSINT Tool)
- Box Events
- Bravura Monitor
- Broadcom ProxySG
- Canva
- Cassandra
- CEL Custom API
- Ceph
- Check Point
- Cilium Tetragon
- CISA Known Exploited Vulnerabilities
- Cisco
- Cisco Meraki Metrics
- Citrix
- Claroty CTD
- Cloudflare
- Cloud Asset Inventory
- CockroachDB Metrics
- Common Event Format (CEF)
- Containerd
- CoreDNS
- Corelight
- Couchbase
- CouchDB
- Cribl
- CrowdStrike
- Cyberark
- Cybereason
- CylanceProtect Logs
- Custom Websocket logs
- Darktrace
- Data Exfiltration Detection
- DGA
- Digital Guardian
- Docker
- Elastic APM
- Elastic Fleet Server
- Elastic Security
- Elastic Stack monitoring
- Elasticsearch Service Billing
- Envoy Proxy
- ESET PROTECT
- ESET Threat Intelligence
- etcd
- Falco
- F5
- File Integrity Monitoring
- FireEye Network Security
- First EPSS
- Forcepoint Web Security
- ForgeRock
- Fortinet
- Gigamon
- GitHub
- GitLab
- Golang
- Google Cloud
- Custom GCS Input
- GCP
- GCP Audit logs
- GCP Billing metrics
- GCP Cloud Run metrics
- GCP CloudSQL metrics
- GCP Compute metrics
- GCP Dataproc metrics
- GCP DNS logs
- GCP Firestore metrics
- GCP Firewall logs
- GCP GKE metrics
- GCP Load Balancing metrics
- GCP Metrics Input
- GCP PubSub logs (custom)
- GCP PubSub metrics
- GCP Redis metrics
- GCP Security Command Center
- GCP Storage metrics
- GCP VPC Flow logs
- GCP Vertex AI
- GoFlow2 logs
- Hadoop
- HAProxy
- Hashicorp Vault
- HTTP Endpoint logs (custom)
- IBM MQ
- IIS
- Imperva
- InfluxDb
- Infoblox
- Iptables
- Istio
- Jamf Compliance Reporter
- Jamf Pro
- Jamf Protect
- Jolokia Input
- Journald logs (custom)
- JumpCloud
- Kafka
- Keycloak
- Kubernetes
- LastPass
- Lateral Movement Detection
- Linux Metrics
- Living off the Land Attack Detection
- Logs (custom)
- Lumos
- Lyve Cloud
- Mattermost
- Memcached
- Menlo Security
- Microsoft
- Microsoft 365
- Microsoft Defender for Cloud
- Microsoft Defender for Endpoint
- Microsoft DHCP
- Microsoft DNS Server
- Microsoft Entra ID Entity Analytics
- Microsoft Exchange Online Message Trace
- Microsoft Exchange Server
- Microsoft Graph Activity Logs
- Microsoft M365 Defender
- Microsoft Office 365 Metrics Integration
- Microsoft Sentinel
- Microsoft SQL Server
- Mimecast
- ModSecurity Audit
- MongoDB
- MongoDB Atlas
- MySQL
- Nagios XI
- NATS
- NetFlow Records
- Netskope
- Network Beaconing Identification
- Network Packet Capture
- Nginx
- Okta
- Oracle
- OpenCanary
- Osquery
- Palo Alto
- pfSense
- PHP-FPM
- PingOne
- PingFederate
- Pleasant Password Server
- PostgreSQL
- Prometheus
- Proofpoint TAP
- Proofpoint On Demand
- Pulse Connect Secure
- Qualys VMDR
- QNAP NAS
- RabbitMQ Logs
- Radware DefensePro Logs
- Rapid7
- Redis
- Rubrik RSC Metrics Integration
- Salesforce
- SentinelOne
- ServiceNow
- Slack Logs
- Snort
- Snyk
- SonicWall Firewall
- Sophos
- Spring Boot
- SpyCloud Enterprise Protection
- SQL Input
- Squid Logs
- SRX
- STAN
- Statsd Input
- Sublime Security
- Suricata
- StormShield SNS
- Symantec
- Symantec Endpoint Security
- Sysmon for Linux
- Sysdig
- Syslog Router Integration
- System
- System Audit
- Tanium
- TCP Logs (custom)
- Teleport
- Tenable
- Threat intelligence
- ThreatConnect
- Threat Map
- Thycotic Secret Server
- Tines
- Traefik
- Trellix
- Trend Micro
- TYCHON Agentless
- UDP Logs (custom)
- Universal Profiling
- Vectra Detect
- VMware
- WatchGuard Firebox
- WebSphere Application Server
- Windows
- Wiz
- Zeek
- ZeroFox
- Zero Networks
- ZooKeeper Metrics
- Zoom
- Zscaler
Slack Integration
editSlack Integration
editVersion |
1.24.0 (View all) |
Compatible Kibana version(s) |
8.13.0 or higher |
Supported Serverless project types |
Security |
Subscription level |
Basic |
Level of support |
Community |
Slack is used by numerous orgazations as their primary chat and collaboration tool.
The Slack integration uses Slack’s API to retrieve audit events and ingest them into Elasticsearch. This allows you to search, observe, and visualize the Slack log events through Elasticsearch.
The Elastic agent running this integration interacts with Slack’s infrastructure using their APIs to retrieve audit logs for a workspace or enterprise.
Please note the Audit Logs API is only available to Slack workspaces on an Enterprise Grid plan. These API methods will not work for workspaces on a Free, Standard, or Business+ plan.
Configuration
editEnabling the integration in Elastic
edit- In Kibana go to Management > Integrations
- In the "Search for integrations" search bar type Slack.
- Click on "Slack" integration from the search results.
- Click on Add Slack button to add Slack integration.
Configure Slack audit logs data stream
editEnter values "OAuth API Token".
- OAuth API Token will be generated when a Slack App is created.
Configure using API Token
editFor the Slack integration to be able to successfully get logs the following "User Token Scopes"" must be granted to the Slack App:
-
auditlogs:read
Logs
editAudit
editAudit logs summarize the history of changes made within the Slack Enterprise.
Exported fields
Field | Description | Type |
---|---|---|
@timestamp |
Event timestamp. |
date |
cloud.image.id |
Image ID for the cloud instance. |
keyword |
data_stream.dataset |
Data stream dataset name. |
constant_keyword |
data_stream.namespace |
Data stream namespace. |
constant_keyword |
data_stream.type |
Data stream type. |
constant_keyword |
event.dataset |
Event dataset |
constant_keyword |
event.module |
Event module |
constant_keyword |
host.containerized |
If the host is a container. |
boolean |
host.os.build |
OS build information. |
keyword |
host.os.codename |
OS codename, if any. |
keyword |
input.type |
Type of Filebeat input. |
keyword |
log.flags |
Flags for the log file. |
keyword |
log.offset |
Offset of the entry in the log file. |
long |
slack.audit.actor.type |
The type of entity performing the action. |
keyword |
slack.audit.actor.user.team |
The the team of the actor if they are a user. |
keyword |
slack.audit.context.domain |
The domain of the Workspace or Enterprise |
keyword |
slack.audit.context.id |
The ID of the workspace or enterprise |
keyword |
slack.audit.context.name |
The name of the workspace or enterprise |
keyword |
slack.audit.context.session_id |
The identifier that is unique to each authenticated session. |
keyword |
slack.audit.context.type |
The type of account. Either |
keyword |
slack.audit.details.location |
The location the activity occured in when event.action is anomaly |
keyword |
slack.audit.details.md5 |
The md5 hash of a file associated with a |
keyword |
slack.audit.details.previous_ip_address |
The IP address previously observed for the entity in the event when event.action is anomaly |
ip |
slack.audit.details.previous_user_agent |
The User-Agent string previously observed for the entity in the event when event.action is anomaly |
keyword |
slack.audit.details.reason |
The anomaly rule triggered to generate the event when event.action is anomaly: asn, excessive_downloads, ip_address, session_fingerprint, tor, user_agent |
keyword |
slack.audit.details.url_private |
URL associated with the action. |
keyword |
slack.audit.entity.barriered_from_usergroup |
The user group barrier when entity_type is barrier |
keyword |
slack.audit.entity.channel |
The channel the entity is within when entity_type is message |
keyword |
slack.audit.entity.domain |
Domain of the entity when entity_type is Workspace or Enterprise |
keyword |
slack.audit.entity.email |
Email address of the entity when entity_type is user |
keyword |
slack.audit.entity.entity_type |
Type of the entity: workspace, enterprise, user, file, channel, app, workflow, user, usergroup, barrier, message, role, account_type_role. |
keyword |
slack.audit.entity.filetype |
Filetype of the entity when entity_type is file |
keyword |
slack.audit.entity.id |
ID of the entity |
keyword |
slack.audit.entity.is_directory_approved |
If App is approved when entity_type is app |
boolean |
slack.audit.entity.is_distributed |
If App is distributed when entity_type is app |
boolean |
slack.audit.entity.is_org_shared |
If channel is shared when entity_type is channel |
boolean |
slack.audit.entity.is_shared |
If channel is shared when entity_type is channel |
boolean |
slack.audit.entity.is_workflow_app |
If App is a workflow when entity_type is app |
boolean |
slack.audit.entity.name |
Name of the entity |
keyword |
slack.audit.entity.primary_usergroup |
The primary user group when entity_type is barrier |
keyword |
slack.audit.entity.privacy |
Privacy status of entity when entity_type is channel |
keyword |
slack.audit.entity.scopes |
The OAuth scopes when entity_type is app |
keyword |
slack.audit.entity.team |
Team that the entity exists within when entity_type is user or message |
keyword |
slack.audit.entity.teams_shared_with |
List of orgs channel is shared with when entity_type is channel |
keyword |
slack.audit.entity.timestamp |
The timestamp of the entity when entity_type is message |
keyword |
slack.audit.entity.title |
Title of the entity when entity_type is file |
keyword |
slack.audit.entity.type |
The type of the entity when entity_type is role |
keyword |
Example
An example event for audit
looks as following:
{ "@timestamp": "2023-01-13T17:40:21.862Z", "agent": { "ephemeral_id": "b9bee162-6839-48bf-a046-8e4a02f2fb67", "id": "a92f13a9-12c9-43a1-9997-166906490b28", "name": "elastic-agent-31844", "type": "filebeat", "version": "8.13.0" }, "data_stream": { "dataset": "slack.audit", "namespace": "55128", "type": "logs" }, "ecs": { "version": "8.11.0" }, "elastic_agent": { "id": "a92f13a9-12c9-43a1-9997-166906490b28", "snapshot": false, "version": "8.13.0" }, "event": { "action": "anomaly", "agent_id_status": "verified", "created": "2024-10-17T03:44:21.387Z", "dataset": "slack.audit", "id": "2125fb41-c67c-4cf5-a5c4-d90cb58dd5f9", "ingested": "2024-10-17T03:44:22Z", "kind": "event", "original": "{\"action\":\"anomaly\",\"actor\":{\"type\":\"user\",\"user\":{\"email\":\"aaron@demo.com\",\"id\":\"e65b0f5c\",\"name\":\"roy\"}},\"context\":{\"ip_address\":\"81.2.69.143\",\"location\":{\"domain\":\"Docker\",\"id\":\"e65b11aa\",\"name\":\"Docker\",\"type\":\"workspace\"},\"ua\":\"Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:23.0) Gecko/20131011 Firefox/23.0\"},\"date_create\":1683836273,\"details\":{\"action_timestamp\":1673631621862,\"location\":\"England, GB\",\"previous_ip_address\":\"175.16.199.64\",\"previous_ua\":\"\",\"reason\":[\"asn\",\"ip_address\"]},\"entity\":{\"type\":\"user\",\"user\":{\"email\":\"jbob@example.com\",\"id\":\"asdfasdf\",\"name\":\"Joe Bob\",\"team\":\"T234SAH2\"}},\"id\":\"2125fb41-c67c-4cf5-a5c4-d90cb58dd5f9\"}", "type": [ "info" ] }, "input": { "type": "httpjson" }, "related": { "ip": [ "81.2.69.143" ], "user": [ "e65b0f5c", "aaron@demo.com" ] }, "slack": { "audit": { "actor": { "type": "user" }, "context": { "domain": "Docker", "id": "e65b11aa", "name": "Docker", "type": "workspace" }, "details": { "location": "England, GB", "previous_ip_address": "175.16.199.64", "reason": [ "asn", "ip_address" ] }, "entity": { "email": "jbob@example.com", "entity_type": "user", "id": "asdfasdf", "name": "Joe Bob", "team": "T234SAH2" } } }, "source": { "address": "81.2.69.143", "geo": { "city_name": "London", "continent_name": "Europe", "country_iso_code": "GB", "country_name": "United Kingdom", "location": { "lat": 51.5142, "lon": -0.0931 }, "region_iso_code": "GB-ENG", "region_name": "England" }, "ip": "81.2.69.143" }, "tags": [ "forwarded", "slack-audit", "preserve_original_event" ], "user": { "email": "aaron@demo.com", "full_name": "roy", "id": "e65b0f5c" }, "user_agent": { "device": { "name": "Other" }, "name": "Firefox", "original": "Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:23.0) Gecko/20131011 Firefox/23.0", "os": { "full": "Windows 7", "name": "Windows", "version": "7" }, "version": "23.0." } }
Changelog
editChangelog
Version | Details | Kibana version(s) |
---|---|---|
1.24.0 |
Enhancement (View pull request) |
8.13.0 or higher |
1.23.0 |
Enhancement (View pull request) |
8.13.0 or higher |
1.22.0 |
Enhancement (View pull request) Enhancement (View pull request) |
8.13.0 or higher |
1.21.2 |
Bug fix (View pull request) |
8.13.0 or higher |
1.21.1 |
Bug fix (View pull request) |
8.13.0 or higher |
1.21.0 |
Enhancement (View pull request) |
8.13.0 or higher |
1.20.0 |
Enhancement (View pull request) |
8.12.0 or higher |
1.19.0 |
Enhancement (View pull request) |
8.12.0 or higher |
1.18.0 |
Enhancement (View pull request) |
8.12.0 or higher |
1.17.1 |
Enhancement (View pull request) |
8.10.1 or higher |
1.17.0 |
Enhancement (View pull request) |
8.10.1 or higher |
1.16.0 |
Enhancement (View pull request) |
8.10.1 or higher |
1.15.1 |
Bug fix (View pull request) |
8.10.1 or higher |
1.15.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.14.1 |
Bug fix (View pull request) |
8.7.1 or higher |
1.14.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.13.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.12.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.11.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.10.1 |
Bug fix (View pull request) |
8.7.1 or higher |
1.10.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.9.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.8.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.7.1 |
Bug fix (View pull request) |
8.7.1 or higher |
1.7.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.6.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.5.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.4.0 |
Enhancement (View pull request) Bug fix (View pull request) |
8.7.1 or higher |
1.3.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.2.0 |
Enhancement (View pull request) |
8.7.1 or higher |
1.1.0 |
Enhancement (View pull request) |
8.1.0 or higher |
1.0.0 |
Enhancement (View pull request) |
8.1.0 or higher |
0.3.0 |
Enhancement (View pull request) |
— |
0.2.1 |
Bug fix (View pull request) |
— |
0.2.0 |
Enhancement (View pull request) |
— |
0.1.2 |
Bug fix (View pull request) |
— |
0.1.1 |
Enhancement (View pull request) |
— |
0.1.0 |
Enhancement (View pull request) |
— |
On this page