ServicePerimeterEgressPolicy class
Manage a single EgressPolicy in the status (enforced) configuration for a service perimeter. EgressPolicies match requests based on egressFrom and egressTo stanzas. For an EgressPolicy to match, both egressFrom and egressTo stanzas must be matched. If an EgressPolicy matches a request, the request is allowed to span the ServicePerimeter boundary. For example, an EgressPolicy can be used to allow VMs on networks within the ServicePerimeter to access a defined set of projects outside the perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket or query against a BigQuery dataset).
> Note: If this resource is used alongside a gcp.accesscontextmanager.ServicePerimeter resource,
the service perimeter resource must have a lifecycle block with ignoreChanges = [status[0].egress_policies] so
they don't fight over which egress rules should be in the policy.
To get more information about ServicePerimeterEgressPolicy, see:
- API documentation
- How-to Guides
- Guide to Ingress and Egress Rules
Constructors
- ServicePerimeterEgressPolicy(String name, {ServicePerimeterEgressPolicyArgs? args, CustomResourceOptions? options})
-
Creates a new ServicePerimeterEgressPolicy.
nameThe Pulumi resource name.argsArguments used to configure this ServicePerimeterEgressPolicy. The set of arguments for ServicePerimeterEgressPolicy.optionsResource options controlling this resource's behavior. - ServicePerimeterEgressPolicy.reference(String urn)
- Creates a typed reference to an existing ServicePerimeterEgressPolicy resource.
Properties
-
accessPolicyId
↔ Output<
String> -
The name of the Access Policy this resource belongs to.
latefinal
-
childResources
→ Set<
Resource> -
finalinherited
-
completionSources
↔ Map<
String, IOutputCompletionSource> -
latefinalinherited
-
deletionPolicy
↔ Output<
String> -
Whether Terraform will be prevented from destroying the resource. Defaults to DELETE.
When a 'terraform destroy' or 'pulumi up' would delete the resource,
the command will fail if this field is set to "PREVENT" in Terraform state.
When set to "ABANDON", the command will remove the resource from Terraform
management without updating or deleting the resource in the API.
When set to "DELETE", deleting the resource is allowed.
latefinal
-
egressFrom
↔ Output<
ServicePerimeterEgressPolicyEgressFrom?> -
Defines conditions on the source of a request causing this
EgressPolicyto apply. Structure is documented below.latefinal -
egressTo
↔ Output<
ServicePerimeterEgressPolicyEgressTo?> -
Defines the conditions on the
ApiOperationand destination resources that cause thisEgressPolicyto apply. Structure is documented below.latefinal -
etag
↔ Output<
String> -
The perimeter etag is internally used to prevent overwriting the list of policies on PATCH calls. It is retrieved from the same GET perimeter API call that's used to get the current list of policies. The policy defined in this resource is added or removed from that list, and then this etag is sent with the PATCH call along with the updated policies.
latefinal
- hashCode → int
-
The hash code for this object.
no setterinherited
-
id
↔ Output<
String> -
getter/setter pairinherited
- isCustom → bool
-
Returns whether this resource is provider-managed.
no setterinherited
- isProtected → bool
-
Returns whether this resource is protected from deletion.
no setterinherited
- isRemote → bool
-
Whether this resource is registered as remote.
no setterinherited
- isResourceReference → bool
-
Whether this instance represents a resource value returned over RPC.
finalinherited
-
perimeter
↔ Output<
String> -
The name of the Service Perimeter to add this resource to.
latefinal
-
resourceTransforms
→ List<
ResourceTransform> -
Inherited/explicit async transforms.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
-
title
↔ Output<
String?> -
Human readable title. Must be unique within the perimeter. Does not affect behavior.
latefinal
-
transformations
→ List<
ResourceTransformation> -
Inherited/explicit legacy transformations.
no setterinherited
-
urn
↔ Output<
String> -
latefinalinherited
Methods
-
failId(
Object error) → void -
Completes this resource ID with an error when registration fails.
inherited
-
failOutputs(
Object error) → void -
Completes all output properties with
error.inherited -
failUrn(
Object error) → void -
Completes this resource URN with an error when registration fails.
inherited
-
getProvider(
String moduleMember) → ProviderResource? -
Returns provider for
moduleMember's package, if configured.inherited -
getResourceName(
) → String -
Returns this resource's logical name.
inherited
-
getResourceType(
) → String -
Returns this resource's Pulumi type token.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
registerOutput<
T> (String propertyName, {Object? decoder(Object?)?, bool isSecret = false}) → Output< T> -
Registers a dynamic output property for this resource.
inherited
-
resolveId(
String? value, {required bool isKnown}) → void -
Resolves the provider-assigned ID for this resource.
inherited
-
resolveOutputs(
Struct outputs) → void -
Resolves all output properties from a monitor response payload.
inherited
-
resolveUrn(
String value) → void -
Resolves this resource's URN once assigned by the engine.
inherited
-
serializeProperties(
Map< String, dynamic> properties) → Future<Struct> -
Serializes resource properties for RPC transmission.
inherited
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
get(
String name, Input< String> id, {ServicePerimeterEgressPolicyState? state, CustomResourceOptions? options}) → ServicePerimeterEgressPolicy -
Gets an existing ServicePerimeterEgressPolicy resource's state with the given
nameandid.