Description
Elastic's existing openai integration covers the OpenAI API Platform plane (Usage, Rate Limits, org Audit Logs on api.openai.com, via an Admin key). It does not cover the ChatGPT Enterprise workspace plane — end-user, app, agent, and admin activity inside a ChatGPT Enterprise/Edu workspace — which is where the security value for SOC teams sits.
This epic delivers that as a new, standalone package (see "Package decision" below), collecting the ChatGPT Enterprise Compliance Logs Platform feed, ECS-aligned, with detection rules and a security dashboard.
SOC use cases
- AI account takeover — login anomalies, impossible travel, anomalous geo/JA3-JA4 on accounts holding corporate data.
- Control tampering — SCIM disabled, IP allowlist removed, audit logging off, role escalation, rogue keys/service accounts.
- Agentic & Codex risk — custom agent runtime (connector-OAuth grants, skills, triggers), Codex security findings, risky GitHub/Codex connections, MCP usage.
- Shadow AI & insider risk — app/connector sprawl, over-permissive sharing, abnormal conversation/file activity.
Package
Ship as a new package, not as data streams on the existing openai package. The two are different OpenAI products: different host (api.chatgpt.com vs api.openai.com), different credential (Compliance-scoped key vs Admin key), different tier (Enterprise/Edu only), and different audience. This mirrors the existing azure + azure_openai split.
name: openai_chatgpt_enterprise
title: OpenAI ChatGPT Enterprise
- The existing
openai package is unchanged (no rename — package names are immutable post-publish). Optionally sharpen its description to "OpenAI API Platform" for catalog clarity (title/description edits are safe; a name change is not).
Scope — data streams (Compliance Logs Platform)
Input type cel. One data stream per event_type:
| Data stream |
event_type |
Notes |
auth |
AUTH_LOG |
Login/logout success & failure; IP, geo, user agent, JA3/JA4 |
app_auth |
APP_AUTH_LOG |
App/connector credential link/unlink (OAuth) |
audit |
AUDIT_LOG |
Admin/RBAC actions (~150): role/SCIM/IP-allowlist/key/service-account/org config |
codex_security |
CODEX_SECURITY_LOG |
Whitespace — scan config, scan findings, proposed-patch PRs |
agents |
CUSTOM_AGENTS_LOG |
Whitespace — agent runtime: connector-OAuth resolved, connector calls, skills, triggers, memory R/W |
app |
APP_LOG |
App/connector tool invocations incl. app_type: MCP |
codex |
CODEX_LOG |
Codex client activity, APP_MCP_CALL, plugin lifecycle |
conversation |
CONVERSATION_MESSAGE |
Per-message content + citations/annotations. Highest volume, PII/secrets, ~24h lag |
User control: each data stream must be independently enable/disable-able in Fleet, so customers can collect only the categories they want (e.g. conversation only, or the security-focused streams only). This is why the design is one data stream per event_type and must not be collapsed into a single multi-type stream. The Compliance key + WorkspaceID are configured once at the package level and shared across all enabled streams.
Description
Elastic's existing
openaiintegration covers the OpenAI API Platform plane (Usage, Rate Limits, org Audit Logs onapi.openai.com, via an Admin key). It does not cover the ChatGPT Enterprise workspace plane — end-user, app, agent, and admin activity inside a ChatGPT Enterprise/Edu workspace — which is where the security value for SOC teams sits.This epic delivers that as a new, standalone package (see "Package decision" below), collecting the ChatGPT Enterprise Compliance Logs Platform feed, ECS-aligned, with detection rules and a security dashboard.
SOC use cases
Package
Ship as a new package, not as data streams on the existing
openaipackage. The two are different OpenAI products: different host (api.chatgpt.comvsapi.openai.com), different credential (Compliance-scoped key vs Admin key), different tier (Enterprise/Edu only), and different audience. This mirrors the existingazure+azure_openaisplit.name:openai_chatgpt_enterprisetitle:OpenAI ChatGPT Enterpriseopenaipackage is unchanged (no rename — package names are immutable post-publish). Optionally sharpen its description to "OpenAI API Platform" for catalog clarity (title/description edits are safe; anamechange is not).Scope — data streams (Compliance Logs Platform)
Input type
cel. One data stream perevent_type:event_typeauthAUTH_LOGapp_authAPP_AUTH_LOGauditAUDIT_LOGcodex_securityCODEX_SECURITY_LOGagentsCUSTOM_AGENTS_LOGappAPP_LOGapp_type: MCPcodexCODEX_LOGAPP_MCP_CALL, plugin lifecycleconversationCONVERSATION_MESSAGE