You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
AccessApplication is a cluster-scoped resource that represents a Cloudflare Access Application. It protects web applications, SSH endpoints, VNC, and other resources with Zero Trust authentication.
Overview
AccessApplication supports two modes for defining access policies:
Mode
Description
Use Case
Group Reference Mode
Reference existing AccessGroup resources
Simple setups, reusable groups
Inline Rules Mode
Define include/exclude/require rules directly
Quick setup, application-specific rules
Spec
Field
Type
Required
Default
Description
name
string
No
K8s resource name
Application name in Cloudflare
domain
string
Yes
-
Primary domain/URL for the application
type
string
Yes
self_hosted
Application type (see below)
sessionDuration
string
No
24h
Session duration before re-authentication
policies
[]AccessPolicyRef
No
-
Access policies (see Policy Modes)
reusablePolicyRefs
[]ReusablePolicyRef
No
-
References to reusable Access Policies
cloudflare
CloudflareDetails
Yes
-
Cloudflare API credentials
Application Types
Type
Description
self_hosted
Self-hosted web application
saas
SaaS application (SAML/OIDC)
ssh
SSH endpoint
vnc
VNC endpoint
app_launcher
App Launcher
warp
WARP client
biso
Browser Isolation
bookmark
Bookmark
dash_sso
Dashboard SSO
infrastructure
Infrastructure application
Additional Spec Fields
Field
Type
Description
selfHostedDomains
[]string
Additional domains for the application
destinations
[]AccessDestination
Public/private destination configurations
allowedIdps
[]string
Allowed identity provider IDs
allowedIdpRefs
[]AccessIdentityProviderRef
References to AccessIdentityProvider resources
autoRedirectToIdentity
bool
Auto-redirect to identity provider
appLauncherVisible
bool
Show in App Launcher
skipInterstitial
bool
Skip the interstitial page
logoUrl
string
Application logo URL
customDenyMessage
string
Custom access denied message
customDenyUrl
string
Custom access denied URL
corsHeaders
AccessApplicationCorsHeaders
CORS configuration
saasApp
SaasApplicationConfig
SaaS app config (for type=saas)
tags
[]string
Custom tags
Policy Modes
Mode 1: Group Reference Mode (Simple)
Reference existing AccessGroup resources or Cloudflare Access Groups:
spec:
policies:
# Option 1: Reference K8s AccessGroup by name
- name: accessgroup-employeesdecision: allowprecedence: 1# Option 2: Reference Cloudflare Access Group by UUID
- groupId: "12345678-1234-1234-1234-123456789abc"decision: allowprecedence: 2# Option 3: Reference Cloudflare Access Group by display name
- cloudflareGroupName: "Infrastructure Users"decision: allowprecedence: 3
Mode 2: Inline Rules Mode (Advanced)
Define include/exclude/require rules directly in the policy:
spec:
policies:
- policyName: "Allow Company Employees"decision: allowprecedence: 1# Include: Users matching ANY rule will be granted access (OR logic)include:
- email:
email: "admin@example.com"
- emailDomain:
domain: "example.com"# Exclude: Users matching ANY rule will be denied (NOT logic)exclude:
- email:
email: "contractor@example.com"# Require: Users must match ALL rules (AND logic)require:
- geo:
country: ["US", "CA"]
AccessPolicyRef Fields
Field
Type
Description
name
string
K8s AccessGroup resource name (Group Reference Mode)
groupId
string
Cloudflare Access Group UUID (Group Reference Mode)
cloudflareGroupName
string
Cloudflare Access Group display name (Group Reference Mode)