Class AuthorizationPolicy


  • public class AuthorizationPolicy
    extends com.pulumi.resources.CustomResource
    ## Example Usage ### Network Security Authorization Policy Basic ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.gcp.networksecurity.AuthorizationPolicy; import com.pulumi.gcp.networksecurity.AuthorizationPolicyArgs; import com.pulumi.gcp.networksecurity.inputs.AuthorizationPolicyRuleArgs; import com.pulumi.resources.CustomResourceOptions; 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 default_ = new AuthorizationPolicy("default", AuthorizationPolicyArgs.builder() .labels(Map.of("foo", "bar")) .description("my description") .action("ALLOW") .rules(AuthorizationPolicyRuleArgs.builder() .sources(AuthorizationPolicyRuleSourceArgs.builder() .principals("namespace/*") .ipBlocks("1.2.3.0/24") .build()) .build()) .build(), CustomResourceOptions.builder() .provider(google_beta) .build()); } } ``` ### Network Security Authorization Policy Destinations ```java package generated_program; import com.pulumi.Context; import com.pulumi.Pulumi; import com.pulumi.core.Output; import com.pulumi.gcp.networksecurity.AuthorizationPolicy; import com.pulumi.gcp.networksecurity.AuthorizationPolicyArgs; import com.pulumi.gcp.networksecurity.inputs.AuthorizationPolicyRuleArgs; import com.pulumi.resources.CustomResourceOptions; 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 default_ = new AuthorizationPolicy("default", AuthorizationPolicyArgs.builder() .labels(Map.of("foo", "bar")) .description("my description") .action("ALLOW") .rules(AuthorizationPolicyRuleArgs.builder() .sources(AuthorizationPolicyRuleSourceArgs.builder() .principals("namespace/*") .ipBlocks("1.2.3.0/24") .build()) .destinations(AuthorizationPolicyRuleDestinationArgs.builder() .hosts("mydomain.*") .ports(8080) .methods("GET") .httpHeaderMatch(AuthorizationPolicyRuleDestinationHttpHeaderMatchArgs.builder() .headerName(":method") .regexMatch("GET") .build()) .build()) .build()) .build(), CustomResourceOptions.builder() .provider(google_beta) .build()); } } ``` ## Import AuthorizationPolicy can be imported using any of these accepted formats* `projects/{{project}}/locations/{{location}}/authorizationPolicies/{{name}}` * `{{project}}/{{location}}/{{name}}` * `{{location}}/{{name}}` In Terraform v1.5.0 and later, use an [`import` block](https://developer.hashicorp.com/terraform/language/import) to import AuthorizationPolicy using one of the formats above. For exampletf import { id = "projects/{{project}}/locations/{{location}}/authorizationPolicies/{{name}}" to = google_network_security_authorization_policy.default } ```sh $ pulumi import gcp:networksecurity/authorizationPolicy:AuthorizationPolicy When using the [`terraform import` command](https://developer.hashicorp.com/terraform/cli/commands/import), AuthorizationPolicy can be imported using one of the formats above. For example ``` ```sh $ pulumi import gcp:networksecurity/authorizationPolicy:AuthorizationPolicy default projects/{{project}}/locations/{{location}}/authorizationPolicies/{{name}} ``` ```sh $ pulumi import gcp:networksecurity/authorizationPolicy:AuthorizationPolicy default {{project}}/{{location}}/{{name}} ``` ```sh $ pulumi import gcp:networksecurity/authorizationPolicy:AuthorizationPolicy default {{location}}/{{name}} ```
    • Nested Class Summary

      • Nested classes/interfaces inherited from class com.pulumi.resources.CustomResource

        com.pulumi.resources.CustomResource.CustomResourceInternal
      • Nested classes/interfaces inherited from class com.pulumi.resources.Resource

        com.pulumi.resources.Resource.LazyField<T extends java.lang.Object>, com.pulumi.resources.Resource.LazyFields, com.pulumi.resources.Resource.ResourceInternal
    • Field Summary

      • Fields inherited from class com.pulumi.resources.Resource

        childResources, remote
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      com.pulumi.core.Output<java.lang.String> action()  
      com.pulumi.core.Output<java.lang.String> createTime()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> effectiveLabels()  
      static AuthorizationPolicy get​(java.lang.String name, com.pulumi.core.Output<java.lang.String> id, AuthorizationPolicyState 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.Optional<java.util.Map<java.lang.String,​java.lang.String>>> labels()  
      com.pulumi.core.Output<java.util.Optional<java.lang.String>> location()  
      com.pulumi.core.Output<java.lang.String> name()  
      com.pulumi.core.Output<java.lang.String> project()  
      com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> pulumiLabels()  
      com.pulumi.core.Output<java.util.Optional<java.util.List<AuthorizationPolicyRule>>> rules()  
      com.pulumi.core.Output<java.lang.String> updateTime()  
      • Methods inherited from class com.pulumi.resources.CustomResource

        getId, id, idFuture
      • Methods inherited from class com.pulumi.resources.Resource

        getChildResources, getResourceName, getResourceType, getUrn, pulumiChildResources, pulumiResourceName, pulumiResourceType, urn
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Constructor Detail

      • AuthorizationPolicy

        public AuthorizationPolicy​(java.lang.String name)
        Parameters:
        name - The _unique_ name of the resulting resource.
      • AuthorizationPolicy

        public AuthorizationPolicy​(java.lang.String name,
                                   AuthorizationPolicyArgs args)
        Parameters:
        name - The _unique_ name of the resulting resource.
        args - The arguments to use to populate this resource's properties.
      • AuthorizationPolicy

        public AuthorizationPolicy​(java.lang.String name,
                                   AuthorizationPolicyArgs 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

      • action

        public com.pulumi.core.Output<java.lang.String> action()
        Returns:
        The action to take when a rule match is found. Possible values are "ALLOW" or "DENY". Possible values are: `ALLOW`, `DENY`.
      • createTime

        public com.pulumi.core.Output<java.lang.String> createTime()
        Returns:
        Time the AuthorizationPolicy was created in UTC.
      • description

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> description()
        Returns:
        A free-text description of the resource. Max length 1024 characters.
      • effectiveLabels

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> effectiveLabels()
        Returns:
        All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
      • labels

        public com.pulumi.core.Output<java.util.Optional<java.util.Map<java.lang.String,​java.lang.String>>> labels()
        Returns:
        Set of label tags associated with the AuthorizationPolicy resource. **Note**: This field is non-authoritative, and will only manage the labels present in your configuration. Please refer to the field `effective_labels` for all of the labels present on the resource.
      • location

        public com.pulumi.core.Output<java.util.Optional<java.lang.String>> location()
        Returns:
        The location of the authorization policy. The default value is `global`.
      • name

        public com.pulumi.core.Output<java.lang.String> name()
        Returns:
        Name of the AuthorizationPolicy resource. ***
      • project

        public com.pulumi.core.Output<java.lang.String> project()
        Returns:
        The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
      • pulumiLabels

        public com.pulumi.core.Output<java.util.Map<java.lang.String,​java.lang.String>> pulumiLabels()
        Returns:
        The combination of labels configured directly on the resource and default labels configured on the provider.
      • rules

        public com.pulumi.core.Output<java.util.Optional<java.util.List<AuthorizationPolicyRule>>> rules()
        Returns:
        List of rules to match. Note that at least one of the rules must match in order for the action specified in the 'action' field to be taken. A rule is a match if there is a matching source and destination. If left blank, the action specified in the action field will be applied on every request. Structure is documented below.
      • updateTime

        public com.pulumi.core.Output<java.lang.String> updateTime()
        Returns:
        Time the AuthorizationPolicy was updated in UTC.
      • get

        public static AuthorizationPolicy get​(java.lang.String name,
                                              com.pulumi.core.Output<java.lang.String> id,
                                              @Nullable
                                              AuthorizationPolicyState 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.