Package com.pulumi.cloudflare
Class AccessPolicy
- java.lang.Object
-
- com.pulumi.resources.Resource
-
- com.pulumi.resources.CustomResource
-
- com.pulumi.cloudflare.AccessPolicy
-
public class AccessPolicy extends com.pulumi.resources.CustomResource
Provides a Cloudflare Access Policy resource. Access Policies are used in conjunction with Access Applications to restrict access to a particular resource. > It's required that an `account_id` or `zone_id` is provided and in most cases using either is fine. However, if you're using a scoped access token, you must provide the argument that matches the token's scope. For example, an access token that is scoped to the "example.com" zone needs to use the `zone_id` argument. ## Example Usage ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.cloudflare.AccessPolicy; import com.pulumi.cloudflare.AccessPolicyArgs; import com.pulumi.cloudflare.inputs.AccessPolicyIncludeArgs; import com.pulumi.cloudflare.inputs.AccessPolicyRequireArgs; import java.util.List; import java.util.ArrayList; import java.util.Map; import java.io.File; import java.nio.file.Files; import java.nio.file.Paths; public class App { public static void main(String[] args) { Pulumi.run(App::stack); } public static void stack(Context ctx) { var testPolicyAccessPolicy = new AccessPolicy("testPolicyAccessPolicy", AccessPolicyArgs.builder() .applicationId("cb029e245cfdd66dc8d2e570d5dd3322") .zoneId("0da42c8d2132a9ddaf714f9e7c920711") .name("staging policy") .precedence("1") .decision("allow") .includes(AccessPolicyIncludeArgs.builder() .emails("[email protected]") .build()) .requires(AccessPolicyRequireArgs.builder() .emails("[email protected]") .build()) .build()); var testPolicyIndex_accessPolicyAccessPolicy = new AccessPolicy("testPolicyIndex/accessPolicyAccessPolicy", AccessPolicyArgs.builder() .applicationId("cb029e245cfdd66dc8d2e570d5dd3322") .zoneId("0da42c8d2132a9ddaf714f9e7c920711") .name("staging policy") .precedence("1") .decision("allow") .includes(AccessPolicyIncludeArgs.builder() .emails("[email protected]") .build()) .requires(AccessPolicyRequireArgs.builder() .ips(var_.office_ip()) .build()) .build()); } } ``` ## Import Account level import. ```sh $ pulumi import cloudflare:index/accessPolicy:AccessPolicy example account/<account_id>/<application_id>/<policy_id> ``` Zone level import. ```sh $ pulumi import cloudflare:index/accessPolicy:AccessPolicy example zone/<zone_id>/<application_id>/<policy_id> ```
-
-
Constructor Summary
Constructors Constructor Description AccessPolicy(java.lang.String name)
AccessPolicy(java.lang.String name, AccessPolicyArgs args)
AccessPolicy(java.lang.String name, AccessPolicyArgs args, com.pulumi.resources.CustomResourceOptions options)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description com.pulumi.core.Output<java.lang.String>
accountId()
com.pulumi.core.Output<java.lang.String>
applicationId()
com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyApprovalGroup>>>
approvalGroups()
com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>>
approvalRequired()
com.pulumi.core.Output<java.lang.String>
decision()
com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyExclude>>>
excludes()
static AccessPolicy
get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, AccessPolicyState state, com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.com.pulumi.core.Output<java.util.List<AccessPolicyInclude>>
includes()
com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>>
isolationRequired()
com.pulumi.core.Output<java.lang.String>
name()
com.pulumi.core.Output<java.lang.Integer>
precedence()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
purposeJustificationPrompt()
com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>>
purposeJustificationRequired()
com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyRequire>>>
requires()
com.pulumi.core.Output<java.util.Optional<java.lang.String>>
sessionDuration()
com.pulumi.core.Output<java.lang.String>
zoneId()
-
-
-
Constructor Detail
-
AccessPolicy
public AccessPolicy(java.lang.String name)
- Parameters:
name
- The _unique_ name of the resulting resource.
-
AccessPolicy
public AccessPolicy(java.lang.String name, AccessPolicyArgs args)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.
-
AccessPolicy
public AccessPolicy(java.lang.String name, AccessPolicyArgs args, @Nullable com.pulumi.resources.CustomResourceOptions options)
- Parameters:
name
- The _unique_ name of the resulting resource.args
- The arguments to use to populate this resource's properties.options
- A bag of options that control this resource's behavior.
-
-
Method Detail
-
accountId
public com.pulumi.core.Output<java.lang.String> accountId()
- Returns:
- The account identifier to target for the resource. Conflicts with `zone_id`.
-
applicationId
public com.pulumi.core.Output<java.lang.String> applicationId()
- Returns:
- The ID of the application the policy is associated with.
-
approvalGroups
public com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyApprovalGroup>>> approvalGroups()
-
approvalRequired
public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> approvalRequired()
-
decision
public com.pulumi.core.Output<java.lang.String> decision()
- Returns:
- Defines the action Access will take if the policy matches the user. Available values: `allow`, `deny`, `non_identity`, `bypass`.
-
excludes
public com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyExclude>>> excludes()
- Returns:
- A series of access conditions, see Access Groups.
-
includes
public com.pulumi.core.Output<java.util.List<AccessPolicyInclude>> includes()
- Returns:
- A series of access conditions, see Access Groups.
-
isolationRequired
public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> isolationRequired()
- Returns:
- Require this application to be served in an isolated browser for users matching this policy.
-
name
public com.pulumi.core.Output<java.lang.String> name()
- Returns:
- Friendly name of the Access Policy.
-
precedence
public com.pulumi.core.Output<java.lang.Integer> precedence()
- Returns:
- The unique precedence for policies on a single application.
-
purposeJustificationPrompt
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> purposeJustificationPrompt()
- Returns:
- The prompt to display to the user for a justification for accessing the resource. Required when using `purpose_justification_required`.
-
purposeJustificationRequired
public com.pulumi.core.Output<java.util.Optional<java.lang.Boolean>> purposeJustificationRequired()
- Returns:
- Whether to prompt the user for a justification for accessing the resource.
-
requires
public com.pulumi.core.Output<java.util.Optional<java.util.List<AccessPolicyRequire>>> requires()
- Returns:
- A series of access conditions, see Access Groups.
-
sessionDuration
public com.pulumi.core.Output<java.util.Optional<java.lang.String>> sessionDuration()
- Returns:
- How often a user will be forced to re-authorise. Must be in the format `48h` or `2h45m`.
-
zoneId
public com.pulumi.core.Output<java.lang.String> zoneId()
- Returns:
- The zone identifier to target for the resource. Conflicts with `account_id`.
-
get
public static AccessPolicy get(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, @Nullable AccessPolicyState state, @Nullable com.pulumi.resources.CustomResourceOptions options)
Get an existing Host resource's state with the given name, ID, and optional extra properties used to qualify the lookup.- Parameters:
name
- The _unique_ name of the resulting resource.id
- The _unique_ provider ID of the resource to lookup.state
-options
- Optional settings to control the behavior of the CustomResource.
-
-