Control supported uploads and downloads by app, file type, size and user. Route legitimate exceptions for review.
CASB rules can combine any number of filters. Block all uploads to any AI tool, or carve out a precise exception — finance team, Excel files only, under 5 MB — in the same console.
cat_chatgpt), a whole category (AI Tools), or any domain via exact or glob match.
application/*).
| Rule | Direction | Target | Action | Hits |
|---|---|---|---|---|
| Block large PDF uploads | Upload | AI Tools | Block | 84 |
| Block source code uploads | Upload | All AI | Block | 31 |
| Warn on DOCX uploads | Upload | AI Tools | Warn | 122 |
| Allow approved apps — any file | Both | chatgpt, claude | Allow | 2,841 |
| Block high-risk app uploads | Upload | Risk ≥ 8.0 | Block | 9 |
CASB evaluation has two phases — a lightweight headers check before the request body arrives, and a streaming byte-counter that enforces size limits in real time without buffering the full file.
Before the request body arrives, CASB reads Content-Type and Content-Length headers. If the declared file type or size already violates a rule, the connection is cut immediately — zero body bytes are transmitted to the AI app.
When the size is not declared in headers (chunked uploads, streaming multipart), the byte-counter accumulates bytes as they stream through. The instant the counter crosses the configured threshold, the connection is terminated mid-stream — no buffering, no memory pressure.
| User | App | File | Size | Result |
|---|---|---|---|---|
| j.sharma | ChatGPT | Q4_Forecast.xlsx | 2.1 MB | Blocked |
| l.chen | Claude | contract_draft.pdf | 840 KB | Cut @ 500KB |
| r.müller | Gemini | architecture.py | 28 KB | Blocked |
| p.anand | Copilot | meeting_notes.docx | 112 KB | Warned |
| s.liu | ChatGPT | logo_final.png | 64 KB | Allowed |
When a user attaches a file or pastes content in an AI app, the browser extension intercepts the request. It identifies the app, the transfer direction, and the file metadata (type and size from headers if available).
CASB checks Content-Type and Content-Length against matching rules before the body is transmitted. If a rule matches on file type or declared size alone, the connection is terminated immediately. Zero bytes of the file body reach the AI app.
For uploads where the size isn't declared in advance (chunked, multipart), the byte-counter accumulates data as it streams. When the running total crosses the configured threshold, the connection is cut — protecting against oversized uploads that arrive in pieces.
Every file activity — blocked, warned, or allowed — is logged as a discovery event with app, user, direction, file type, size, and the rule that matched (if any). This builds a complete inventory of AI file transfer activity over time.
| Capability | AIGuard CASB | Traditional CASB | Browser DLP | Network DLP |
|---|---|---|---|---|
| AI-specific app catalog (20+ apps) | ✓ | Limited | — | — |
| Directional control (upload/download) | ✓ | ✓ | Upload only | ✓ |
| Streaming byte-counter enforcement | ✓ Real-time | — | — | Buffered |
| Headers-only fast path | ✓ | — | — | — |
| Risk-score-based enforcement | ✓ | — | — | — |
| Discovery events (always logged) | ✓ | Limited | — | Network only |
| File type + size combined filters | ✓ | ✓ | Type only | ✓ |
| User + group scoping | ✓ | ✓ | Limited | ✓ |
application/* to match all binary files. The MIME type is read from the Content-Type header; extension matching is a fallback for uploads with generic content types.See AIGuard CASB in a live demo. We'll walk through streaming enforcement on a real upload scenario.