Skip to main content

access_policies

Creates, updates, deletes, gets or lists an access_policies resource.

Overview

Nameaccess_policies
TypeResource
Idcloudflare.zero_trust.access_policies

Fields

The following fields are returned by SELECT queries:

Get an Access reusable policy response.

NameDatatypeDescription
idstringThe UUID of the policy (example: f174e90a-fafe-4643-bbbc-4a0ed4fc8415)
namestringThe name of the Access policy. (example: Allow devs)
app_countintegerNumber of access applications currently using this policy.
approval_groupsarrayAdministrators who can approve a temporary authentication request. (x-stainless-collection-type: set)
approval_requiredbooleanRequires the user to request access from an administrator at the start of each session.
connection_rulesobjectThe rules that define how users may connect to targets secured by your application. (title: Connection Rules)
created_atstring (date-time) (example: 2014-01-01T05:20:00.12345Z)
decisionstringThe action Access will take if a user matches this policy. Infrastructure application policies can only use the Allow action. (allow, deny, non_identity, bypass) (example: allow)
excludearrayRules evaluated with a NOT logical operator. To match the policy, a user cannot meet any of the Exclude rules. (x-stainless-collection-type: set)
includearrayRules evaluated with an OR logical operator. A user needs to meet only one of the Include rules. (x-stainless-collection-type: set)
isolation_requiredbooleanRequire this application to be served in an isolated browser for users matching this policy. 'Client Web Isolation' must be on for the account in order to use this feature.
mfa_configobjectConfigures multi-factor authentication (MFA) settings.
purpose_justification_promptstringA custom message that will appear on the purpose justification screen. (example: Please enter a justification for entering this protected domain.)
purpose_justification_requiredbooleanRequire users to enter a justification when they log in to the application.
requirearrayRules evaluated with an AND logical operator. To match the policy, a user must meet all of the Require rules. (x-stainless-collection-type: set)
reusableboolean (true)
session_durationstringThe amount of time that tokens issued for the application will be valid. Must be in the format 300ms or 2h45m. Valid time units are: ns, us (or µs), ms, s, m, h. (default: 24h, example: 24h)
updated_atstring (date-time) (example: 2014-01-01T05:20:00.12345Z)

Methods

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
get_by_accountselectaccount_id, policy_idFetches a single Access reusable policy.
list_by_accountselectaccount_idpage, per_pageLists Access reusable policies.
create_by_accountinsertaccount_id, include, decision, nameCreates a new Access reusable policy.
update_by_accountreplaceaccount_id, policy_id, include, decision, nameUpdates a Access reusable policy.
delete_by_accountdeleteaccount_id, policy_idDeletes an Access reusable policy.

Parameters

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
account_idstringThe Cloudflare account ID.
policy_idstringThe Access policy ID.
pageinteger
per_pageinteger

SELECT examples

Fetches a single Access reusable policy.

SELECT
id,
name,
app_count,
approval_groups,
approval_required,
connection_rules,
created_at,
decision,
exclude,
include,
isolation_required,
mfa_config,
purpose_justification_prompt,
purpose_justification_required,
require,
reusable,
session_duration,
updated_at
FROM cloudflare.zero_trust.access_policies
WHERE account_id = '{{ account_id }}' -- required
AND policy_id = '{{ policy_id }}' -- required
;

INSERT examples

Creates a new Access reusable policy.

INSERT INTO cloudflare.zero_trust.access_policies (
approval_groups,
approval_required,
connection_rules,
isolation_required,
mfa_config,
purpose_justification_prompt,
purpose_justification_required,
session_duration,
decision,
exclude,
include,
name,
require,
account_id
)
SELECT
'{{ approval_groups }}',
{{ approval_required }},
'{{ connection_rules }}',
{{ isolation_required }},
'{{ mfa_config }}',
'{{ purpose_justification_prompt }}',
{{ purpose_justification_required }},
'{{ session_duration }}',
'{{ decision }}' /* required */,
'{{ exclude }}',
'{{ include }}' /* required */,
'{{ name }}' /* required */,
'{{ require }}',
'{{ account_id }}'
RETURNING
errors,
messages,
result,
success
;

REPLACE examples

Updates a Access reusable policy.

REPLACE cloudflare.zero_trust.access_policies
SET
approval_groups = '{{ approval_groups }}',
approval_required = {{ approval_required }},
connection_rules = '{{ connection_rules }}',
isolation_required = {{ isolation_required }},
mfa_config = '{{ mfa_config }}',
purpose_justification_prompt = '{{ purpose_justification_prompt }}',
purpose_justification_required = {{ purpose_justification_required }},
session_duration = '{{ session_duration }}',
decision = '{{ decision }}',
exclude = '{{ exclude }}',
include = '{{ include }}',
name = '{{ name }}',
require = '{{ require }}'
WHERE
account_id = '{{ account_id }}' --required
AND policy_id = '{{ policy_id }}' --required
AND include = '{{ include }}' --required
AND decision = '{{ decision }}' --required
AND name = '{{ name }}' --required
RETURNING
errors,
messages,
result,
success;

DELETE examples

Deletes an Access reusable policy.

DELETE FROM cloudflare.zero_trust.access_policies
WHERE account_id = '{{ account_id }}' --required
AND policy_id = '{{ policy_id }}' --required
;