Documentation ¶
Index ¶
- func NetworkServicesAuthzExtension_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, ...) cdktf.ImportableResource
- func NetworkServicesAuthzExtension_IsConstruct(x interface{}) *bool
- func NetworkServicesAuthzExtension_IsTerraformElement(x interface{}) *bool
- func NetworkServicesAuthzExtension_IsTerraformResource(x interface{}) *bool
- func NetworkServicesAuthzExtension_TfResourceType() *string
- func NewNetworkServicesAuthzExtensionTimeoutsOutputReference_Override(n NetworkServicesAuthzExtensionTimeoutsOutputReference, ...)
- func NewNetworkServicesAuthzExtension_Override(n NetworkServicesAuthzExtension, scope constructs.Construct, id *string, ...)
- type NetworkServicesAuthzExtension
- type NetworkServicesAuthzExtensionConfig
- type NetworkServicesAuthzExtensionTimeouts
- type NetworkServicesAuthzExtensionTimeoutsOutputReference
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NetworkServicesAuthzExtension_GenerateConfigForImport ¶
func NetworkServicesAuthzExtension_GenerateConfigForImport(scope constructs.Construct, importToId *string, importFromId *string, provider cdktf.TerraformProvider) cdktf.ImportableResource
Generates CDKTF code for importing a NetworkServicesAuthzExtension resource upon running "cdktf plan <stack-name>".
func NetworkServicesAuthzExtension_IsConstruct ¶
func NetworkServicesAuthzExtension_IsConstruct(x interface{}) *bool
Checks if `x` is a construct.
Use this method instead of `instanceof` to properly detect `Construct` instances, even when the construct library is symlinked.
Explanation: in JavaScript, multiple copies of the `constructs` library on disk are seen as independent, completely different libraries. As a consequence, the class `Construct` in each copy of the `constructs` library is seen as a different class, and an instance of one class will not test as `instanceof` the other class. `npm install` will not create installations like this, but users may manually symlink construct libraries together or use a monorepo tool: in those cases, multiple copies of the `constructs` library can be accidentally installed, and `instanceof` will behave unpredictably. It is safest to avoid using `instanceof`, and using this type-testing method instead.
Returns: true if `x` is an object created from a class which extends `Construct`.
func NetworkServicesAuthzExtension_IsTerraformElement ¶
func NetworkServicesAuthzExtension_IsTerraformElement(x interface{}) *bool
Experimental.
func NetworkServicesAuthzExtension_IsTerraformResource ¶
func NetworkServicesAuthzExtension_IsTerraformResource(x interface{}) *bool
Experimental.
func NetworkServicesAuthzExtension_TfResourceType ¶
func NetworkServicesAuthzExtension_TfResourceType() *string
func NewNetworkServicesAuthzExtensionTimeoutsOutputReference_Override ¶
func NewNetworkServicesAuthzExtensionTimeoutsOutputReference_Override(n NetworkServicesAuthzExtensionTimeoutsOutputReference, terraformResource cdktf.IInterpolatingParent, terraformAttribute *string)
func NewNetworkServicesAuthzExtension_Override ¶
func NewNetworkServicesAuthzExtension_Override(n NetworkServicesAuthzExtension, scope constructs.Construct, id *string, config *NetworkServicesAuthzExtensionConfig)
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension google_network_services_authz_extension} Resource.
Types ¶
type NetworkServicesAuthzExtension ¶
type NetworkServicesAuthzExtension interface { cdktf.TerraformResource Authority() *string SetAuthority(val *string) AuthorityInput() *string // Experimental. CdktfStack() cdktf.TerraformStack // Experimental. Connection() interface{} // Experimental. SetConnection(val interface{}) // Experimental. ConstructNodeMetadata() *map[string]interface{} // Experimental. Count() interface{} // Experimental. SetCount(val interface{}) CreateTime() *string // Experimental. DependsOn() *[]*string // Experimental. SetDependsOn(val *[]*string) Description() *string SetDescription(val *string) DescriptionInput() *string EffectiveLabels() cdktf.StringMap FailOpen() interface{} SetFailOpen(val interface{}) FailOpenInput() interface{} // Experimental. ForEach() cdktf.ITerraformIterator // Experimental. SetForEach(val cdktf.ITerraformIterator) ForwardHeaders() *[]*string SetForwardHeaders(val *[]*string) ForwardHeadersInput() *[]*string // Experimental. Fqn() *string // Experimental. FriendlyUniqueId() *string Id() *string SetId(val *string) IdInput() *string Labels() *map[string]*string SetLabels(val *map[string]*string) LabelsInput() *map[string]*string // Experimental. Lifecycle() *cdktf.TerraformResourceLifecycle // Experimental. SetLifecycle(val *cdktf.TerraformResourceLifecycle) LoadBalancingScheme() *string SetLoadBalancingScheme(val *string) LoadBalancingSchemeInput() *string Location() *string SetLocation(val *string) LocationInput() *string Metadata() *map[string]*string SetMetadata(val *map[string]*string) MetadataInput() *map[string]*string Name() *string SetName(val *string) NameInput() *string // The tree node. Node() constructs.Node Project() *string SetProject(val *string) ProjectInput() *string // Experimental. Provider() cdktf.TerraformProvider // Experimental. SetProvider(val cdktf.TerraformProvider) // Experimental. Provisioners() *[]interface{} // Experimental. SetProvisioners(val *[]interface{}) // Experimental. RawOverrides() interface{} Service() *string SetService(val *string) ServiceInput() *string // Experimental. TerraformGeneratorMetadata() *cdktf.TerraformProviderGeneratorMetadata TerraformLabels() cdktf.StringMap // Experimental. TerraformMetaArguments() *map[string]interface{} // Experimental. TerraformResourceType() *string Timeout() *string SetTimeout(val *string) TimeoutInput() *string Timeouts() NetworkServicesAuthzExtensionTimeoutsOutputReference TimeoutsInput() interface{} UpdateTime() *string WireFormat() *string SetWireFormat(val *string) WireFormatInput() *string // Adds a user defined moveTarget string to this resource to be later used in .moveTo(moveTarget) to resolve the location of the move. // Experimental. AddMoveTarget(moveTarget *string) // Experimental. AddOverride(path *string, value interface{}) // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. HasResourceMove() interface{} // Experimental. ImportFrom(id *string, provider cdktf.TerraformProvider) // Experimental. InterpolationForAttribute(terraformAttribute *string) cdktf.IResolvable // Move the resource corresponding to "id" to this resource. // // Note that the resource being moved from must be marked as moved using it's instance function. // Experimental. MoveFromId(id *string) // Moves this resource to the target resource given by moveTarget. // Experimental. MoveTo(moveTarget *string, index interface{}) // Moves this resource to the resource corresponding to "id". // Experimental. MoveToId(id *string) // Overrides the auto-generated logical ID with a specific ID. // Experimental. OverrideLogicalId(newLogicalId *string) PutTimeouts(value *NetworkServicesAuthzExtensionTimeouts) ResetDescription() ResetFailOpen() ResetForwardHeaders() ResetId() ResetLabels() ResetMetadata() // Resets a previously passed logical Id to use the auto-generated logical id again. // Experimental. ResetOverrideLogicalId() ResetProject() ResetTimeouts() ResetWireFormat() SynthesizeAttributes() *map[string]interface{} SynthesizeHclAttributes() *map[string]interface{} // Experimental. ToHclTerraform() interface{} // Experimental. ToMetadata() interface{} // Returns a string representation of this construct. ToString() *string // Adds this resource to the terraform JSON output. // Experimental. ToTerraform() interface{} }
Represents a {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension google_network_services_authz_extension}.
func NewNetworkServicesAuthzExtension ¶
func NewNetworkServicesAuthzExtension(scope constructs.Construct, id *string, config *NetworkServicesAuthzExtensionConfig) NetworkServicesAuthzExtension
Create a new {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension google_network_services_authz_extension} Resource.
type NetworkServicesAuthzExtensionConfig ¶
type NetworkServicesAuthzExtensionConfig struct { // Experimental. Connection interface{} `field:"optional" json:"connection" yaml:"connection"` // Experimental. Count interface{} `field:"optional" json:"count" yaml:"count"` // Experimental. DependsOn *[]cdktf.ITerraformDependable `field:"optional" json:"dependsOn" yaml:"dependsOn"` // Experimental. ForEach cdktf.ITerraformIterator `field:"optional" json:"forEach" yaml:"forEach"` // Experimental. Lifecycle *cdktf.TerraformResourceLifecycle `field:"optional" json:"lifecycle" yaml:"lifecycle"` // Experimental. Provider cdktf.TerraformProvider `field:"optional" json:"provider" yaml:"provider"` // Experimental. Provisioners *[]interface{} `field:"optional" json:"provisioners" yaml:"provisioners"` // The :authority header in the gRPC request sent from Envoy to the extension service. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#authority NetworkServicesAuthzExtension#authority} Authority *string `field:"required" json:"authority" yaml:"authority"` // All backend services and forwarding rules referenced by this extension must share the same load balancing scheme. // // For more information, refer to [Backend services overview](https://cloud.google.com/load-balancing/docs/backend-service). Possible values: ["INTERNAL_MANAGED", "EXTERNAL_MANAGED"] // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#load_balancing_scheme NetworkServicesAuthzExtension#load_balancing_scheme} LoadBalancingScheme *string `field:"required" json:"loadBalancingScheme" yaml:"loadBalancingScheme"` // The location of the resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#location NetworkServicesAuthzExtension#location} Location *string `field:"required" json:"location" yaml:"location"` // Identifier. Name of the AuthzExtension resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#name NetworkServicesAuthzExtension#name} Name *string `field:"required" json:"name" yaml:"name"` // The reference to the service that runs the extension. // // To configure a callout extension, service must be a fully-qualified reference to a [backend service](https://cloud.google.com/compute/docs/reference/rest/v1/backendServices) in the format: // https://www.googleapis.com/compute/v1/projects/{project}/regions/{region}/backendServices/{backendService} or https://www.googleapis.com/compute/v1/projects/{project}/global/backendServices/{backendService}. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#service NetworkServicesAuthzExtension#service} Service *string `field:"required" json:"service" yaml:"service"` // Specifies the timeout for each individual message on the stream. The timeout must be between 10-10000 milliseconds. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#timeout NetworkServicesAuthzExtension#timeout} Timeout *string `field:"required" json:"timeout" yaml:"timeout"` // A human-readable description of the resource. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#description NetworkServicesAuthzExtension#description} Description *string `field:"optional" json:"description" yaml:"description"` // Determines how the proxy behaves if the call to the extension fails or times out. // // When set to TRUE, request or response processing continues without error. Any subsequent extensions in the extension chain are also executed. When set to FALSE or the default setting of FALSE is used, one of the following happens: // * If response headers have not been delivered to the downstream client, a generic 500 error is returned to the client. The error response can be tailored by configuring a custom error response in the load balancer. // * If response headers have been delivered, then the HTTP stream to the downstream client is reset. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#fail_open NetworkServicesAuthzExtension#fail_open} FailOpen interface{} `field:"optional" json:"failOpen" yaml:"failOpen"` // List of the HTTP headers to forward to the extension (from the client). // // If omitted, all headers are sent. Each element is a string indicating the header name. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#forward_headers NetworkServicesAuthzExtension#forward_headers} ForwardHeaders *[]*string `field:"optional" json:"forwardHeaders" yaml:"forwardHeaders"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#id NetworkServicesAuthzExtension#id}. // // Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. // If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. Id *string `field:"optional" json:"id" yaml:"id"` // Set of labels associated with the AuthzExtension 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. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#labels NetworkServicesAuthzExtension#labels} Labels *map[string]*string `field:"optional" json:"labels" yaml:"labels"` // The metadata provided here is included as part of the metadata_context (of type google.protobuf.Struct) in the ProcessingRequest message sent to the extension server. The metadata is available under the namespace com.google.authz_extension.<resourceName>. The following variables are supported in the metadata Struct:. // // {forwarding_rule_id} - substituted with the forwarding rule's fully qualified resource name. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#metadata NetworkServicesAuthzExtension#metadata} Metadata *map[string]*string `field:"optional" json:"metadata" yaml:"metadata"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#project NetworkServicesAuthzExtension#project}. Project *string `field:"optional" json:"project" yaml:"project"` // timeouts block. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#timeouts NetworkServicesAuthzExtension#timeouts} Timeouts *NetworkServicesAuthzExtensionTimeouts `field:"optional" json:"timeouts" yaml:"timeouts"` // The format of communication supported by the callout extension. Default value: "EXT_PROC_GRPC" Possible values: ["WIRE_FORMAT_UNSPECIFIED", "EXT_PROC_GRPC"]. // // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#wire_format NetworkServicesAuthzExtension#wire_format} WireFormat *string `field:"optional" json:"wireFormat" yaml:"wireFormat"` }
type NetworkServicesAuthzExtensionTimeouts ¶
type NetworkServicesAuthzExtensionTimeouts struct { // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#create NetworkServicesAuthzExtension#create}. Create *string `field:"optional" json:"create" yaml:"create"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#delete NetworkServicesAuthzExtension#delete}. Delete *string `field:"optional" json:"delete" yaml:"delete"` // Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/google/6.14.1/docs/resources/network_services_authz_extension#update NetworkServicesAuthzExtension#update}. Update *string `field:"optional" json:"update" yaml:"update"` }
type NetworkServicesAuthzExtensionTimeoutsOutputReference ¶
type NetworkServicesAuthzExtensionTimeoutsOutputReference interface { cdktf.ComplexObject // the index of the complex object in a list. // Experimental. ComplexObjectIndex() interface{} // Experimental. SetComplexObjectIndex(val interface{}) // set to true if this item is from inside a set and needs tolist() for accessing it set to "0" for single list items. // Experimental. ComplexObjectIsFromSet() *bool // Experimental. SetComplexObjectIsFromSet(val *bool) Create() *string SetCreate(val *string) CreateInput() *string // The creation stack of this resolvable which will be appended to errors thrown during resolution. // // If this returns an empty array the stack will not be attached. // Experimental. CreationStack() *[]*string Delete() *string SetDelete(val *string) DeleteInput() *string // Experimental. Fqn() *string InternalValue() interface{} SetInternalValue(val interface{}) // Experimental. TerraformAttribute() *string // Experimental. SetTerraformAttribute(val *string) // Experimental. TerraformResource() cdktf.IInterpolatingParent // Experimental. SetTerraformResource(val cdktf.IInterpolatingParent) Update() *string SetUpdate(val *string) UpdateInput() *string // Experimental. ComputeFqn() *string // Experimental. GetAnyMapAttribute(terraformAttribute *string) *map[string]interface{} // Experimental. GetBooleanAttribute(terraformAttribute *string) cdktf.IResolvable // Experimental. GetBooleanMapAttribute(terraformAttribute *string) *map[string]*bool // Experimental. GetListAttribute(terraformAttribute *string) *[]*string // Experimental. GetNumberAttribute(terraformAttribute *string) *float64 // Experimental. GetNumberListAttribute(terraformAttribute *string) *[]*float64 // Experimental. GetNumberMapAttribute(terraformAttribute *string) *map[string]*float64 // Experimental. GetStringAttribute(terraformAttribute *string) *string // Experimental. GetStringMapAttribute(terraformAttribute *string) *map[string]*string // Experimental. InterpolationAsList() cdktf.IResolvable // Experimental. InterpolationForAttribute(property *string) cdktf.IResolvable ResetCreate() ResetDelete() ResetUpdate() // Produce the Token's value at resolution time. // Experimental. Resolve(_context cdktf.IResolveContext) interface{} // Return a string representation of this resolvable object. // // Returns a reversible string representation. // Experimental. ToString() *string }
func NewNetworkServicesAuthzExtensionTimeoutsOutputReference ¶
func NewNetworkServicesAuthzExtensionTimeoutsOutputReference(terraformResource cdktf.IInterpolatingParent, terraformAttribute *string) NetworkServicesAuthzExtensionTimeoutsOutputReference