gcp.apigee.SecurityAction
Explore with Pulumi AI
A SecurityAction is rule that can be enforced at an environment level. The result is one of: - A denied API call - An explicitly allowed API call
- A flagged API call (HTTP headers added before the target receives it) At least one condition is required to create a SecurityAction.
To get more information about SecurityAction, see:
- API documentation
- How-to Guides
Example Usage
Apigee Security Action Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const current = gcp.organizations.getClientConfig({});
const apigeeNetwork = new gcp.compute.Network("apigee_network", {name: "my-network"});
const apigeeRange = new gcp.compute.GlobalAddress("apigee_range", {
name: "my-address",
purpose: "VPC_PEERING",
addressType: "INTERNAL",
prefixLength: 16,
network: apigeeNetwork.id,
});
const apigeeVpcConnection = new gcp.servicenetworking.Connection("apigee_vpc_connection", {
network: apigeeNetwork.id,
service: "servicenetworking.googleapis.com",
reservedPeeringRanges: [apigeeRange.name],
});
const apigeeOrg = new gcp.apigee.Organization("apigee_org", {
analyticsRegion: "us-central1",
projectId: current.then(current => current.project),
authorizedNetwork: apigeeNetwork.id,
}, {
dependsOn: [apigeeVpcConnection],
});
const env = new gcp.apigee.Environment("env", {
name: "my-environment",
description: "Apigee Environment",
displayName: "environment-1",
orgId: apigeeOrg.id,
});
const apigeeOrgSecurityAddonsConfig = new gcp.apigee.AddonsConfig("apigee_org_security_addons_config", {
org: apigeeOrg.name,
addonsConfig: {
apiSecurityConfig: {
enabled: true,
},
},
});
const apigeeSecurityAction = new gcp.apigee.SecurityAction("apigee_security_action", {
securityActionId: "my-security-action",
orgId: apigeeOrg.name,
envId: env.name,
description: "Apigee Security Action",
state: "ENABLED",
conditionConfig: {
ipAddressRanges: [
"100.0.220.1",
"200.0.0.1",
],
botReasons: [
"Flooder",
"Public Cloud Azure",
"Public Cloud AWS",
],
},
allow: {},
expireTime: "2025-12-31T23:59:59Z",
}, {
dependsOn: [apigeeOrgSecurityAddonsConfig],
});
import pulumi
import pulumi_gcp as gcp
current = gcp.organizations.get_client_config()
apigee_network = gcp.compute.Network("apigee_network", name="my-network")
apigee_range = gcp.compute.GlobalAddress("apigee_range",
name="my-address",
purpose="VPC_PEERING",
address_type="INTERNAL",
prefix_length=16,
network=apigee_network.id)
apigee_vpc_connection = gcp.servicenetworking.Connection("apigee_vpc_connection",
network=apigee_network.id,
service="servicenetworking.googleapis.com",
reserved_peering_ranges=[apigee_range.name])
apigee_org = gcp.apigee.Organization("apigee_org",
analytics_region="us-central1",
project_id=current.project,
authorized_network=apigee_network.id,
opts = pulumi.ResourceOptions(depends_on=[apigee_vpc_connection]))
env = gcp.apigee.Environment("env",
name="my-environment",
description="Apigee Environment",
display_name="environment-1",
org_id=apigee_org.id)
apigee_org_security_addons_config = gcp.apigee.AddonsConfig("apigee_org_security_addons_config",
org=apigee_org.name,
addons_config={
"api_security_config": {
"enabled": True,
},
})
apigee_security_action = gcp.apigee.SecurityAction("apigee_security_action",
security_action_id="my-security-action",
org_id=apigee_org.name,
env_id=env.name,
description="Apigee Security Action",
state="ENABLED",
condition_config={
"ip_address_ranges": [
"100.0.220.1",
"200.0.0.1",
],
"bot_reasons": [
"Flooder",
"Public Cloud Azure",
"Public Cloud AWS",
],
},
allow={},
expire_time="2025-12-31T23:59:59Z",
opts = pulumi.ResourceOptions(depends_on=[apigee_org_security_addons_config]))
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/apigee"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/servicenetworking"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
current, err := organizations.GetClientConfig(ctx, map[string]interface{}{}, nil)
if err != nil {
return err
}
apigeeNetwork, err := compute.NewNetwork(ctx, "apigee_network", &compute.NetworkArgs{
Name: pulumi.String("my-network"),
})
if err != nil {
return err
}
apigeeRange, err := compute.NewGlobalAddress(ctx, "apigee_range", &compute.GlobalAddressArgs{
Name: pulumi.String("my-address"),
Purpose: pulumi.String("VPC_PEERING"),
AddressType: pulumi.String("INTERNAL"),
PrefixLength: pulumi.Int(16),
Network: apigeeNetwork.ID(),
})
if err != nil {
return err
}
apigeeVpcConnection, err := servicenetworking.NewConnection(ctx, "apigee_vpc_connection", &servicenetworking.ConnectionArgs{
Network: apigeeNetwork.ID(),
Service: pulumi.String("servicenetworking.googleapis.com"),
ReservedPeeringRanges: pulumi.StringArray{
apigeeRange.Name,
},
})
if err != nil {
return err
}
apigeeOrg, err := apigee.NewOrganization(ctx, "apigee_org", &apigee.OrganizationArgs{
AnalyticsRegion: pulumi.String("us-central1"),
ProjectId: pulumi.String(current.Project),
AuthorizedNetwork: apigeeNetwork.ID(),
}, pulumi.DependsOn([]pulumi.Resource{
apigeeVpcConnection,
}))
if err != nil {
return err
}
env, err := apigee.NewEnvironment(ctx, "env", &apigee.EnvironmentArgs{
Name: pulumi.String("my-environment"),
Description: pulumi.String("Apigee Environment"),
DisplayName: pulumi.String("environment-1"),
OrgId: apigeeOrg.ID(),
})
if err != nil {
return err
}
apigeeOrgSecurityAddonsConfig, err := apigee.NewAddonsConfig(ctx, "apigee_org_security_addons_config", &apigee.AddonsConfigArgs{
Org: apigeeOrg.Name,
AddonsConfig: &apigee.AddonsConfigAddonsConfigArgs{
ApiSecurityConfig: &apigee.AddonsConfigAddonsConfigApiSecurityConfigArgs{
Enabled: pulumi.Bool(true),
},
},
})
if err != nil {
return err
}
_, err = apigee.NewSecurityAction(ctx, "apigee_security_action", &apigee.SecurityActionArgs{
SecurityActionId: pulumi.String("my-security-action"),
OrgId: apigeeOrg.Name,
EnvId: env.Name,
Description: pulumi.String("Apigee Security Action"),
State: pulumi.String("ENABLED"),
ConditionConfig: &apigee.SecurityActionConditionConfigArgs{
IpAddressRanges: pulumi.StringArray{
pulumi.String("100.0.220.1"),
pulumi.String("200.0.0.1"),
},
BotReasons: pulumi.StringArray{
pulumi.String("Flooder"),
pulumi.String("Public Cloud Azure"),
pulumi.String("Public Cloud AWS"),
},
},
Allow: &apigee.SecurityActionAllowArgs{},
ExpireTime: pulumi.String("2025-12-31T23:59:59Z"),
}, pulumi.DependsOn([]pulumi.Resource{
apigeeOrgSecurityAddonsConfig,
}))
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var current = Gcp.Organizations.GetClientConfig.Invoke();
var apigeeNetwork = new Gcp.Compute.Network("apigee_network", new()
{
Name = "my-network",
});
var apigeeRange = new Gcp.Compute.GlobalAddress("apigee_range", new()
{
Name = "my-address",
Purpose = "VPC_PEERING",
AddressType = "INTERNAL",
PrefixLength = 16,
Network = apigeeNetwork.Id,
});
var apigeeVpcConnection = new Gcp.ServiceNetworking.Connection("apigee_vpc_connection", new()
{
Network = apigeeNetwork.Id,
Service = "servicenetworking.googleapis.com",
ReservedPeeringRanges = new[]
{
apigeeRange.Name,
},
});
var apigeeOrg = new Gcp.Apigee.Organization("apigee_org", new()
{
AnalyticsRegion = "us-central1",
ProjectId = current.Apply(getClientConfigResult => getClientConfigResult.Project),
AuthorizedNetwork = apigeeNetwork.Id,
}, new CustomResourceOptions
{
DependsOn =
{
apigeeVpcConnection,
},
});
var env = new Gcp.Apigee.Environment("env", new()
{
Name = "my-environment",
Description = "Apigee Environment",
DisplayName = "environment-1",
OrgId = apigeeOrg.Id,
});
var apigeeOrgSecurityAddonsConfig = new Gcp.Apigee.AddonsConfig("apigee_org_security_addons_config", new()
{
Org = apigeeOrg.Name,
AddonsConfigDetails = new Gcp.Apigee.Inputs.AddonsConfigAddonsConfigArgs
{
ApiSecurityConfig = new Gcp.Apigee.Inputs.AddonsConfigAddonsConfigApiSecurityConfigArgs
{
Enabled = true,
},
},
});
var apigeeSecurityAction = new Gcp.Apigee.SecurityAction("apigee_security_action", new()
{
SecurityActionId = "my-security-action",
OrgId = apigeeOrg.Name,
EnvId = env.Name,
Description = "Apigee Security Action",
State = "ENABLED",
ConditionConfig = new Gcp.Apigee.Inputs.SecurityActionConditionConfigArgs
{
IpAddressRanges = new[]
{
"100.0.220.1",
"200.0.0.1",
},
BotReasons = new[]
{
"Flooder",
"Public Cloud Azure",
"Public Cloud AWS",
},
},
Allow = null,
ExpireTime = "2025-12-31T23:59:59Z",
}, new CustomResourceOptions
{
DependsOn =
{
apigeeOrgSecurityAddonsConfig,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.GlobalAddress;
import com.pulumi.gcp.compute.GlobalAddressArgs;
import com.pulumi.gcp.servicenetworking.Connection;
import com.pulumi.gcp.servicenetworking.ConnectionArgs;
import com.pulumi.gcp.apigee.Organization;
import com.pulumi.gcp.apigee.OrganizationArgs;
import com.pulumi.gcp.apigee.Environment;
import com.pulumi.gcp.apigee.EnvironmentArgs;
import com.pulumi.gcp.apigee.AddonsConfig;
import com.pulumi.gcp.apigee.AddonsConfigArgs;
import com.pulumi.gcp.apigee.inputs.AddonsConfigAddonsConfigArgs;
import com.pulumi.gcp.apigee.inputs.AddonsConfigAddonsConfigApiSecurityConfigArgs;
import com.pulumi.gcp.apigee.SecurityAction;
import com.pulumi.gcp.apigee.SecurityActionArgs;
import com.pulumi.gcp.apigee.inputs.SecurityActionConditionConfigArgs;
import com.pulumi.gcp.apigee.inputs.SecurityActionAllowArgs;
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) {
final var current = OrganizationsFunctions.getClientConfig(%!v(PANIC=Format method: runtime error: invalid memory address or nil pointer dereference);
var apigeeNetwork = new Network("apigeeNetwork", NetworkArgs.builder()
.name("my-network")
.build());
var apigeeRange = new GlobalAddress("apigeeRange", GlobalAddressArgs.builder()
.name("my-address")
.purpose("VPC_PEERING")
.addressType("INTERNAL")
.prefixLength(16)
.network(apigeeNetwork.id())
.build());
var apigeeVpcConnection = new Connection("apigeeVpcConnection", ConnectionArgs.builder()
.network(apigeeNetwork.id())
.service("servicenetworking.googleapis.com")
.reservedPeeringRanges(apigeeRange.name())
.build());
var apigeeOrg = new Organization("apigeeOrg", OrganizationArgs.builder()
.analyticsRegion("us-central1")
.projectId(current.project())
.authorizedNetwork(apigeeNetwork.id())
.build(), CustomResourceOptions.builder()
.dependsOn(apigeeVpcConnection)
.build());
var env = new Environment("env", EnvironmentArgs.builder()
.name("my-environment")
.description("Apigee Environment")
.displayName("environment-1")
.orgId(apigeeOrg.id())
.build());
var apigeeOrgSecurityAddonsConfig = new AddonsConfig("apigeeOrgSecurityAddonsConfig", AddonsConfigArgs.builder()
.org(apigeeOrg.name())
.addonsConfig(AddonsConfigAddonsConfigArgs.builder()
.apiSecurityConfig(AddonsConfigAddonsConfigApiSecurityConfigArgs.builder()
.enabled(true)
.build())
.build())
.build());
var apigeeSecurityAction = new SecurityAction("apigeeSecurityAction", SecurityActionArgs.builder()
.securityActionId("my-security-action")
.orgId(apigeeOrg.name())
.envId(env.name())
.description("Apigee Security Action")
.state("ENABLED")
.conditionConfig(SecurityActionConditionConfigArgs.builder()
.ipAddressRanges(
"100.0.220.1",
"200.0.0.1")
.botReasons(
"Flooder",
"Public Cloud Azure",
"Public Cloud AWS")
.build())
.allow(SecurityActionAllowArgs.builder()
.build())
.expireTime("2025-12-31T23:59:59Z")
.build(), CustomResourceOptions.builder()
.dependsOn(apigeeOrgSecurityAddonsConfig)
.build());
}
}
resources:
apigeeNetwork:
type: gcp:compute:Network
name: apigee_network
properties:
name: my-network
apigeeRange:
type: gcp:compute:GlobalAddress
name: apigee_range
properties:
name: my-address
purpose: VPC_PEERING
addressType: INTERNAL
prefixLength: 16
network: ${apigeeNetwork.id}
apigeeVpcConnection:
type: gcp:servicenetworking:Connection
name: apigee_vpc_connection
properties:
network: ${apigeeNetwork.id}
service: servicenetworking.googleapis.com
reservedPeeringRanges:
- ${apigeeRange.name}
apigeeOrg:
type: gcp:apigee:Organization
name: apigee_org
properties:
analyticsRegion: us-central1
projectId: ${current.project}
authorizedNetwork: ${apigeeNetwork.id}
options:
dependsOn:
- ${apigeeVpcConnection}
env:
type: gcp:apigee:Environment
properties:
name: my-environment
description: Apigee Environment
displayName: environment-1
orgId: ${apigeeOrg.id}
apigeeOrgSecurityAddonsConfig:
type: gcp:apigee:AddonsConfig
name: apigee_org_security_addons_config
properties:
org: ${apigeeOrg.name}
addonsConfig:
apiSecurityConfig:
enabled: true
apigeeSecurityAction:
type: gcp:apigee:SecurityAction
name: apigee_security_action
properties:
securityActionId: my-security-action
orgId: ${apigeeOrg.name}
envId: ${env.name}
description: Apigee Security Action
state: ENABLED
conditionConfig:
ipAddressRanges:
- 100.0.220.1
- 200.0.0.1
botReasons:
- Flooder
- Public Cloud Azure
- Public Cloud AWS
allow: {}
expireTime: 2025-12-31T23:59:59Z
options:
dependsOn:
- ${apigeeOrgSecurityAddonsConfig}
variables:
current:
fn::invoke:
function: gcp:organizations:getClientConfig
arguments: {}
Create SecurityAction Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new SecurityAction(name: string, args: SecurityActionArgs, opts?: CustomResourceOptions);
@overload
def SecurityAction(resource_name: str,
args: SecurityActionArgs,
opts: Optional[ResourceOptions] = None)
@overload
def SecurityAction(resource_name: str,
opts: Optional[ResourceOptions] = None,
condition_config: Optional[SecurityActionConditionConfigArgs] = None,
env_id: Optional[str] = None,
org_id: Optional[str] = None,
security_action_id: Optional[str] = None,
state: Optional[str] = None,
allow: Optional[SecurityActionAllowArgs] = None,
api_proxies: Optional[Sequence[str]] = None,
deny: Optional[SecurityActionDenyArgs] = None,
description: Optional[str] = None,
expire_time: Optional[str] = None,
flag: Optional[SecurityActionFlagArgs] = None,
ttl: Optional[str] = None)
func NewSecurityAction(ctx *Context, name string, args SecurityActionArgs, opts ...ResourceOption) (*SecurityAction, error)
public SecurityAction(string name, SecurityActionArgs args, CustomResourceOptions? opts = null)
public SecurityAction(String name, SecurityActionArgs args)
public SecurityAction(String name, SecurityActionArgs args, CustomResourceOptions options)
type: gcp:apigee:SecurityAction
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args SecurityActionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args SecurityActionArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args SecurityActionArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args SecurityActionArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args SecurityActionArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var securityActionResource = new Gcp.Apigee.SecurityAction("securityActionResource", new()
{
ConditionConfig = new Gcp.Apigee.Inputs.SecurityActionConditionConfigArgs
{
AccessTokens = new[]
{
"string",
},
ApiKeys = new[]
{
"string",
},
ApiProducts = new[]
{
"string",
},
Asns = new[]
{
"string",
},
BotReasons = new[]
{
"string",
},
DeveloperApps = new[]
{
"string",
},
Developers = new[]
{
"string",
},
HttpMethods = new[]
{
"string",
},
IpAddressRanges = new[]
{
"string",
},
RegionCodes = new[]
{
"string",
},
UserAgents = new[]
{
"string",
},
},
EnvId = "string",
OrgId = "string",
SecurityActionId = "string",
State = "string",
Allow = null,
ApiProxies = new[]
{
"string",
},
Deny = new Gcp.Apigee.Inputs.SecurityActionDenyArgs
{
ResponseCode = 0,
},
Description = "string",
ExpireTime = "string",
Flag = new Gcp.Apigee.Inputs.SecurityActionFlagArgs
{
Headers = new[]
{
new Gcp.Apigee.Inputs.SecurityActionFlagHeaderArgs
{
Name = "string",
Value = "string",
},
},
},
Ttl = "string",
});
example, err := apigee.NewSecurityAction(ctx, "securityActionResource", &apigee.SecurityActionArgs{
ConditionConfig: &apigee.SecurityActionConditionConfigArgs{
AccessTokens: pulumi.StringArray{
pulumi.String("string"),
},
ApiKeys: pulumi.StringArray{
pulumi.String("string"),
},
ApiProducts: pulumi.StringArray{
pulumi.String("string"),
},
Asns: pulumi.StringArray{
pulumi.String("string"),
},
BotReasons: pulumi.StringArray{
pulumi.String("string"),
},
DeveloperApps: pulumi.StringArray{
pulumi.String("string"),
},
Developers: pulumi.StringArray{
pulumi.String("string"),
},
HttpMethods: pulumi.StringArray{
pulumi.String("string"),
},
IpAddressRanges: pulumi.StringArray{
pulumi.String("string"),
},
RegionCodes: pulumi.StringArray{
pulumi.String("string"),
},
UserAgents: pulumi.StringArray{
pulumi.String("string"),
},
},
EnvId: pulumi.String("string"),
OrgId: pulumi.String("string"),
SecurityActionId: pulumi.String("string"),
State: pulumi.String("string"),
Allow: &apigee.SecurityActionAllowArgs{},
ApiProxies: pulumi.StringArray{
pulumi.String("string"),
},
Deny: &apigee.SecurityActionDenyArgs{
ResponseCode: pulumi.Int(0),
},
Description: pulumi.String("string"),
ExpireTime: pulumi.String("string"),
Flag: &apigee.SecurityActionFlagArgs{
Headers: apigee.SecurityActionFlagHeaderArray{
&apigee.SecurityActionFlagHeaderArgs{
Name: pulumi.String("string"),
Value: pulumi.String("string"),
},
},
},
Ttl: pulumi.String("string"),
})
var securityActionResource = new SecurityAction("securityActionResource", SecurityActionArgs.builder()
.conditionConfig(SecurityActionConditionConfigArgs.builder()
.accessTokens("string")
.apiKeys("string")
.apiProducts("string")
.asns("string")
.botReasons("string")
.developerApps("string")
.developers("string")
.httpMethods("string")
.ipAddressRanges("string")
.regionCodes("string")
.userAgents("string")
.build())
.envId("string")
.orgId("string")
.securityActionId("string")
.state("string")
.allow(SecurityActionAllowArgs.builder()
.build())
.apiProxies("string")
.deny(SecurityActionDenyArgs.builder()
.responseCode(0)
.build())
.description("string")
.expireTime("string")
.flag(SecurityActionFlagArgs.builder()
.headers(SecurityActionFlagHeaderArgs.builder()
.name("string")
.value("string")
.build())
.build())
.ttl("string")
.build());
security_action_resource = gcp.apigee.SecurityAction("securityActionResource",
condition_config={
"access_tokens": ["string"],
"api_keys": ["string"],
"api_products": ["string"],
"asns": ["string"],
"bot_reasons": ["string"],
"developer_apps": ["string"],
"developers": ["string"],
"http_methods": ["string"],
"ip_address_ranges": ["string"],
"region_codes": ["string"],
"user_agents": ["string"],
},
env_id="string",
org_id="string",
security_action_id="string",
state="string",
allow={},
api_proxies=["string"],
deny={
"response_code": 0,
},
description="string",
expire_time="string",
flag={
"headers": [{
"name": "string",
"value": "string",
}],
},
ttl="string")
const securityActionResource = new gcp.apigee.SecurityAction("securityActionResource", {
conditionConfig: {
accessTokens: ["string"],
apiKeys: ["string"],
apiProducts: ["string"],
asns: ["string"],
botReasons: ["string"],
developerApps: ["string"],
developers: ["string"],
httpMethods: ["string"],
ipAddressRanges: ["string"],
regionCodes: ["string"],
userAgents: ["string"],
},
envId: "string",
orgId: "string",
securityActionId: "string",
state: "string",
allow: {},
apiProxies: ["string"],
deny: {
responseCode: 0,
},
description: "string",
expireTime: "string",
flag: {
headers: [{
name: "string",
value: "string",
}],
},
ttl: "string",
});
type: gcp:apigee:SecurityAction
properties:
allow: {}
apiProxies:
- string
conditionConfig:
accessTokens:
- string
apiKeys:
- string
apiProducts:
- string
asns:
- string
botReasons:
- string
developerApps:
- string
developers:
- string
httpMethods:
- string
ipAddressRanges:
- string
regionCodes:
- string
userAgents:
- string
deny:
responseCode: 0
description: string
envId: string
expireTime: string
flag:
headers:
- name: string
value: string
orgId: string
securityActionId: string
state: string
ttl: string
SecurityAction Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The SecurityAction resource accepts the following input properties:
- Condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- Env
Id string - The Apigee environment that this security action applies to.
- Org
Id string - The organization that this security action applies to.
- Security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- State string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - Allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- Api
Proxies List<string> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- Deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- Description string
- An optional user provided description of the SecurityAction.
- Expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- Ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- Condition
Config SecurityAction Condition Config Args - A valid SecurityAction must contain at least one condition. Structure is documented below.
- Env
Id string - The Apigee environment that this security action applies to.
- Org
Id string - The organization that this security action applies to.
- Security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- State string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - Allow
Security
Action Allow Args - Allow a request through if it matches this SecurityAction.
- Api
Proxies []string - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- Deny
Security
Action Deny Args - Deny a request through if it matches this SecurityAction. Structure is documented below.
- Description string
- An optional user provided description of the SecurityAction.
- Expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Flag
Security
Action Flag Args - Flag a request through if it matches this SecurityAction. Structure is documented below.
- Ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- env
Id String - The Apigee environment that this security action applies to.
- org
Id String - The organization that this security action applies to.
- security
Action StringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state String
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- api
Proxies List<String> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description String
- An optional user provided description of the SecurityAction.
- expire
Time String - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- ttl String
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- env
Id string - The Apigee environment that this security action applies to.
- org
Id string - The organization that this security action applies to.
- security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- api
Proxies string[] - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description string
- An optional user provided description of the SecurityAction.
- expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- condition_
config SecurityAction Condition Config Args - A valid SecurityAction must contain at least one condition. Structure is documented below.
- env_
id str - The Apigee environment that this security action applies to.
- org_
id str - The organization that this security action applies to.
- security_
action_ strid - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state str
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - allow
Security
Action Allow Args - Allow a request through if it matches this SecurityAction.
- api_
proxies Sequence[str] - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- deny
Security
Action Deny Args - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description str
- An optional user provided description of the SecurityAction.
- expire_
time str - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag Args - Flag a request through if it matches this SecurityAction. Structure is documented below.
- ttl str
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- condition
Config Property Map - A valid SecurityAction must contain at least one condition. Structure is documented below.
- env
Id String - The Apigee environment that this security action applies to.
- org
Id String - The organization that this security action applies to.
- security
Action StringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state String
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - allow Property Map
- Allow a request through if it matches this SecurityAction.
- api
Proxies List<String> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- deny Property Map
- Deny a request through if it matches this SecurityAction. Structure is documented below.
- description String
- An optional user provided description of the SecurityAction.
- expire
Time String - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag Property Map
- Flag a request through if it matches this SecurityAction. Structure is documented below.
- ttl String
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
Outputs
All input properties are implicitly available as output properties. Additionally, the SecurityAction resource produces the following output properties:
- Create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Id string
- The provider-assigned unique ID for this managed resource.
- Update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Id string
- The provider-assigned unique ID for this managed resource.
- Update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id String
- The provider-assigned unique ID for this managed resource.
- update
Time String - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id string
- The provider-assigned unique ID for this managed resource.
- update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create_
time str - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id str
- The provider-assigned unique ID for this managed resource.
- update_
time str - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- create
Time String - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- id String
- The provider-assigned unique ID for this managed resource.
- update
Time String - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
Look up Existing SecurityAction Resource
Get an existing SecurityAction resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: SecurityActionState, opts?: CustomResourceOptions): SecurityAction
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
allow: Optional[SecurityActionAllowArgs] = None,
api_proxies: Optional[Sequence[str]] = None,
condition_config: Optional[SecurityActionConditionConfigArgs] = None,
create_time: Optional[str] = None,
deny: Optional[SecurityActionDenyArgs] = None,
description: Optional[str] = None,
env_id: Optional[str] = None,
expire_time: Optional[str] = None,
flag: Optional[SecurityActionFlagArgs] = None,
org_id: Optional[str] = None,
security_action_id: Optional[str] = None,
state: Optional[str] = None,
ttl: Optional[str] = None,
update_time: Optional[str] = None) -> SecurityAction
func GetSecurityAction(ctx *Context, name string, id IDInput, state *SecurityActionState, opts ...ResourceOption) (*SecurityAction, error)
public static SecurityAction Get(string name, Input<string> id, SecurityActionState? state, CustomResourceOptions? opts = null)
public static SecurityAction get(String name, Output<String> id, SecurityActionState state, CustomResourceOptions options)
resources: _: type: gcp:apigee:SecurityAction get: id: ${id}
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- Api
Proxies List<string> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- Condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- Create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- Description string
- An optional user provided description of the SecurityAction.
- Env
Id string - The Apigee environment that this security action applies to.
- Expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- Org
Id string - The organization that this security action applies to.
- Security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- State string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - Ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- Update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Allow
Security
Action Allow Args - Allow a request through if it matches this SecurityAction.
- Api
Proxies []string - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- Condition
Config SecurityAction Condition Config Args - A valid SecurityAction must contain at least one condition. Structure is documented below.
- Create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Deny
Security
Action Deny Args - Deny a request through if it matches this SecurityAction. Structure is documented below.
- Description string
- An optional user provided description of the SecurityAction.
- Env
Id string - The Apigee environment that this security action applies to.
- Expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- Flag
Security
Action Flag Args - Flag a request through if it matches this SecurityAction. Structure is documented below.
- Org
Id string - The organization that this security action applies to.
- Security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- State string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - Ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- Update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- api
Proxies List<String> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- create
Time String - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description String
- An optional user provided description of the SecurityAction.
- env
Id String - The Apigee environment that this security action applies to.
- expire
Time String - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- org
Id String - The organization that this security action applies to.
- security
Action StringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state String
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - ttl String
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- update
Time String - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- allow
Security
Action Allow - Allow a request through if it matches this SecurityAction.
- api
Proxies string[] - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- condition
Config SecurityAction Condition Config - A valid SecurityAction must contain at least one condition. Structure is documented below.
- create
Time string - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- deny
Security
Action Deny - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description string
- An optional user provided description of the SecurityAction.
- env
Id string - The Apigee environment that this security action applies to.
- expire
Time string - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag - Flag a request through if it matches this SecurityAction. Structure is documented below.
- org
Id string - The organization that this security action applies to.
- security
Action stringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state string
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - ttl string
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- update
Time string - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- allow
Security
Action Allow Args - Allow a request through if it matches this SecurityAction.
- api_
proxies Sequence[str] - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- condition_
config SecurityAction Condition Config Args - A valid SecurityAction must contain at least one condition. Structure is documented below.
- create_
time str - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- deny
Security
Action Deny Args - Deny a request through if it matches this SecurityAction. Structure is documented below.
- description str
- An optional user provided description of the SecurityAction.
- env_
id str - The Apigee environment that this security action applies to.
- expire_
time str - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag
Security
Action Flag Args - Flag a request through if it matches this SecurityAction. Structure is documented below.
- org_
id str - The organization that this security action applies to.
- security_
action_ strid - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state str
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - ttl str
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- update_
time str - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- allow Property Map
- Allow a request through if it matches this SecurityAction.
- api
Proxies List<String> - If unset, this would apply to all proxies in the environment. If set, this action is enforced only if at least one proxy in the repeated list is deployed at the time of enforcement. If set, several restrictions are enforced on SecurityActions. There can be at most 100 enabled actions with proxies set in an env. Several other restrictions apply on conditions and are detailed later.
- condition
Config Property Map - A valid SecurityAction must contain at least one condition. Structure is documented below.
- create
Time String - The create time for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- deny Property Map
- Deny a request through if it matches this SecurityAction. Structure is documented below.
- description String
- An optional user provided description of the SecurityAction.
- env
Id String - The Apigee environment that this security action applies to.
- expire
Time String - The expiration for this SecurityAction. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
- flag Property Map
- Flag a request through if it matches this SecurityAction. Structure is documented below.
- org
Id String - The organization that this security action applies to.
- security
Action StringId - The ID to use for the SecurityAction, which will become the final component of the action's resource name. This value should be 0-61 characters, and valid format is (^a-z?$).
- state String
- Only an ENABLED SecurityAction is enforced. An ENABLED SecurityAction past its expiration time will not be enforced.
Possible values are:
ENABLED
,DISABLED
. - ttl String
- The TTL for this SecurityAction. A duration in seconds with up to nine fractional digits, ending with 's'. Example: "3.5s".
- update
Time String - The update time for this SecurityAction. This reflects when this SecurityAction changed states. Uses RFC 3339, where generated output will always be Z-normalized and uses 0, 3, 6 or 9 fractional digits. Offsets other than "Z" are also accepted. Examples: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" or "2014-10-02T15:01:23+05:30".
Supporting Types
SecurityActionConditionConfig, SecurityActionConditionConfigArgs
- Access
Tokens List<string> - A list of accessTokens. Limit 1000 per action.
- Api
Keys List<string> - A list of API keys. Limit 1000 per action.
- Api
Products List<string> - A list of API Products. Limit 1000 per action.
- Asns List<string>
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- Bot
Reasons List<string> - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- Developer
Apps List<string> - A list of developer apps. Limit 1000 per action.
- Developers List<string>
- A list of developers. Limit 1000 per action.
- Http
Methods List<string> - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- Ip
Address List<string>Ranges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- Region
Codes List<string> - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- User
Agents List<string> - A list of user agents to deny. We look for exact matches. Limit 50 per action.
- Access
Tokens []string - A list of accessTokens. Limit 1000 per action.
- Api
Keys []string - A list of API keys. Limit 1000 per action.
- Api
Products []string - A list of API Products. Limit 1000 per action.
- Asns []string
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- Bot
Reasons []string - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- Developer
Apps []string - A list of developer apps. Limit 1000 per action.
- Developers []string
- A list of developers. Limit 1000 per action.
- Http
Methods []string - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- Ip
Address []stringRanges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- Region
Codes []string - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- User
Agents []string - A list of user agents to deny. We look for exact matches. Limit 50 per action.
- access
Tokens List<String> - A list of accessTokens. Limit 1000 per action.
- api
Keys List<String> - A list of API keys. Limit 1000 per action.
- api
Products List<String> - A list of API Products. Limit 1000 per action.
- asns List<String>
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- bot
Reasons List<String> - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- developer
Apps List<String> - A list of developer apps. Limit 1000 per action.
- developers List<String>
- A list of developers. Limit 1000 per action.
- http
Methods List<String> - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- ip
Address List<String>Ranges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- region
Codes List<String> - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- user
Agents List<String> - A list of user agents to deny. We look for exact matches. Limit 50 per action.
- access
Tokens string[] - A list of accessTokens. Limit 1000 per action.
- api
Keys string[] - A list of API keys. Limit 1000 per action.
- api
Products string[] - A list of API Products. Limit 1000 per action.
- asns string[]
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- bot
Reasons string[] - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- developer
Apps string[] - A list of developer apps. Limit 1000 per action.
- developers string[]
- A list of developers. Limit 1000 per action.
- http
Methods string[] - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- ip
Address string[]Ranges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- region
Codes string[] - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- user
Agents string[] - A list of user agents to deny. We look for exact matches. Limit 50 per action.
- access_
tokens Sequence[str] - A list of accessTokens. Limit 1000 per action.
- api_
keys Sequence[str] - A list of API keys. Limit 1000 per action.
- api_
products Sequence[str] - A list of API Products. Limit 1000 per action.
- asns Sequence[str]
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- bot_
reasons Sequence[str] - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- developer_
apps Sequence[str] - A list of developer apps. Limit 1000 per action.
- developers Sequence[str]
- A list of developers. Limit 1000 per action.
- http_
methods Sequence[str] - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- ip_
address_ Sequence[str]ranges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- region_
codes Sequence[str] - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- user_
agents Sequence[str] - A list of user agents to deny. We look for exact matches. Limit 50 per action.
- access
Tokens List<String> - A list of accessTokens. Limit 1000 per action.
- api
Keys List<String> - A list of API keys. Limit 1000 per action.
- api
Products List<String> - A list of API Products. Limit 1000 per action.
- asns List<String>
- A list of ASN numbers to act on, e.g. 23. https://en.wikipedia.org/wiki/Autonomous_system_(Internet) This uses int64 instead of uint32 because of https://linter.aip.dev/141/forbidden-types.
- bot
Reasons List<String> - A list of Bot Reasons. Current options: Flooder, Brute Guessor, Static Content Scraper, OAuth Abuser, Robot Abuser, TorListRule, Advanced Anomaly Detection, Advanced API Scraper, Search Engine Crawlers, Public Clouds, Public Cloud AWS, Public Cloud Azure, and Public Cloud Google.
- developer
Apps List<String> - A list of developer apps. Limit 1000 per action.
- developers List<String>
- A list of developers. Limit 1000 per action.
- http
Methods List<String> - Act only on particular HTTP methods. E.g. A read-only API can block POST/PUT/DELETE methods. Accepted values are: GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE and PATCH.
- ip
Address List<String>Ranges - A list of IP addresses. This could be either IPv4 or IPv6. Limited to 100 per action.
- region
Codes List<String> - A list of countries/region codes to act on, e.g. US. This follows https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2.
- user
Agents List<String> - A list of user agents to deny. We look for exact matches. Limit 50 per action.
SecurityActionDeny, SecurityActionDenyArgs
- Response
Code int - The HTTP response code if the Action = DENY.
- Response
Code int - The HTTP response code if the Action = DENY.
- response
Code Integer - The HTTP response code if the Action = DENY.
- response
Code number - The HTTP response code if the Action = DENY.
- response_
code int - The HTTP response code if the Action = DENY.
- response
Code Number - The HTTP response code if the Action = DENY.
SecurityActionFlag, SecurityActionFlagArgs
- Headers
List<Security
Action Flag Header> - A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
- Headers
[]Security
Action Flag Header - A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
- headers
List<Security
Action Flag Header> - A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
- headers
Security
Action Flag Header[] - A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
- headers
Sequence[Security
Action Flag Header] - A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
- headers List<Property Map>
- A list of HTTP headers to be sent to the target in case of a FLAG SecurityAction. Limit 5 headers per SecurityAction. At least one is mandatory. Structure is documented below.
SecurityActionFlagHeader, SecurityActionFlagHeaderArgs
Import
SecurityAction can be imported using any of these accepted formats:
organizations/{{org_id}}/environments/{{env_id}}/securityActions/{{security_action_id}}
{{org_id}}/{{env_id}}/{{security_action_id}}
When using the pulumi import
command, SecurityAction can be imported using one of the formats above. For example:
$ pulumi import gcp:apigee/securityAction:SecurityAction default organizations/{{org_id}}/environments/{{env_id}}/securityActions/{{security_action_id}}
$ pulumi import gcp:apigee/securityAction:SecurityAction default {{org_id}}/{{env_id}}/{{security_action_id}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.