1. Packages
  2. Flexibleengine Provider
  3. API Docs
  4. IdentityAcl
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

flexibleengine.IdentityAcl

Explore with Pulumi AI

flexibleengine logo
flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud

    Manages an ACL resource within FlexibleEngine IAM service. The ACL allowing user access only from specified IP address ranges and IPv4 CIDR blocks. The ACL take effect for IAM users under the Domain account rather than the account itself.

    Note: You must have admin privileges in your FlexibleEngine cloud to use this resource.

    Example Usage

    import * as pulumi from "@pulumi/pulumi";
    import * as flexibleengine from "@pulumi/flexibleengine";
    
    const acl = new flexibleengine.IdentityAcl("acl", {
        ipCidrs: [{
            cidr: "159.138.39.192/32",
            description: "This is a test ip address",
        }],
        ipRanges: [{
            description: "This is a test ip range",
            range: "0.0.0.0-255.255.255.0",
        }],
        type: "console",
    });
    
    import pulumi
    import pulumi_flexibleengine as flexibleengine
    
    acl = flexibleengine.IdentityAcl("acl",
        ip_cidrs=[{
            "cidr": "159.138.39.192/32",
            "description": "This is a test ip address",
        }],
        ip_ranges=[{
            "description": "This is a test ip range",
            "range": "0.0.0.0-255.255.255.0",
        }],
        type="console")
    
    package main
    
    import (
    	"github.com/pulumi/pulumi-terraform-provider/sdks/go/flexibleengine/flexibleengine"
    	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    )
    
    func main() {
    	pulumi.Run(func(ctx *pulumi.Context) error {
    		_, err := flexibleengine.NewIdentityAcl(ctx, "acl", &flexibleengine.IdentityAclArgs{
    			IpCidrs: flexibleengine.IdentityAclIpCidrArray{
    				&flexibleengine.IdentityAclIpCidrArgs{
    					Cidr:        pulumi.String("159.138.39.192/32"),
    					Description: pulumi.String("This is a test ip address"),
    				},
    			},
    			IpRanges: flexibleengine.IdentityAclIpRangeArray{
    				&flexibleengine.IdentityAclIpRangeArgs{
    					Description: pulumi.String("This is a test ip range"),
    					Range:       pulumi.String("0.0.0.0-255.255.255.0"),
    				},
    			},
    			Type: pulumi.String("console"),
    		})
    		if err != nil {
    			return err
    		}
    		return nil
    	})
    }
    
    using System.Collections.Generic;
    using System.Linq;
    using Pulumi;
    using Flexibleengine = Pulumi.Flexibleengine;
    
    return await Deployment.RunAsync(() => 
    {
        var acl = new Flexibleengine.IdentityAcl("acl", new()
        {
            IpCidrs = new[]
            {
                new Flexibleengine.Inputs.IdentityAclIpCidrArgs
                {
                    Cidr = "159.138.39.192/32",
                    Description = "This is a test ip address",
                },
            },
            IpRanges = new[]
            {
                new Flexibleengine.Inputs.IdentityAclIpRangeArgs
                {
                    Description = "This is a test ip range",
                    Range = "0.0.0.0-255.255.255.0",
                },
            },
            Type = "console",
        });
    
    });
    
    package generated_program;
    
    import com.pulumi.Context;
    import com.pulumi.Pulumi;
    import com.pulumi.core.Output;
    import com.pulumi.flexibleengine.IdentityAcl;
    import com.pulumi.flexibleengine.IdentityAclArgs;
    import com.pulumi.flexibleengine.inputs.IdentityAclIpCidrArgs;
    import com.pulumi.flexibleengine.inputs.IdentityAclIpRangeArgs;
    import java.util.List;
    import java.util.ArrayList;
    import java.util.Map;
    import java.io.File;
    import java.nio.file.Files;
    import java.nio.file.Paths;
    
    public class App {
        public static void main(String[] args) {
            Pulumi.run(App::stack);
        }
    
        public static void stack(Context ctx) {
            var acl = new IdentityAcl("acl", IdentityAclArgs.builder()
                .ipCidrs(IdentityAclIpCidrArgs.builder()
                    .cidr("159.138.39.192/32")
                    .description("This is a test ip address")
                    .build())
                .ipRanges(IdentityAclIpRangeArgs.builder()
                    .description("This is a test ip range")
                    .range("0.0.0.0-255.255.255.0")
                    .build())
                .type("console")
                .build());
    
        }
    }
    
    resources:
      acl:
        type: flexibleengine:IdentityAcl
        properties:
          ipCidrs:
            - cidr: 159.138.39.192/32
              description: This is a test ip address
          ipRanges:
            - description: This is a test ip range
              range: 0.0.0.0-255.255.255.0
          type: console
    

    Create IdentityAcl Resource

    Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.

    Constructor syntax

    new IdentityAcl(name: string, args: IdentityAclArgs, opts?: CustomResourceOptions);
    @overload
    def IdentityAcl(resource_name: str,
                    args: IdentityAclArgs,
                    opts: Optional[ResourceOptions] = None)
    
    @overload
    def IdentityAcl(resource_name: str,
                    opts: Optional[ResourceOptions] = None,
                    type: Optional[str] = None,
                    identity_acl_id: Optional[str] = None,
                    ip_cidrs: Optional[Sequence[IdentityAclIpCidrArgs]] = None,
                    ip_ranges: Optional[Sequence[IdentityAclIpRangeArgs]] = None)
    func NewIdentityAcl(ctx *Context, name string, args IdentityAclArgs, opts ...ResourceOption) (*IdentityAcl, error)
    public IdentityAcl(string name, IdentityAclArgs args, CustomResourceOptions? opts = null)
    public IdentityAcl(String name, IdentityAclArgs args)
    public IdentityAcl(String name, IdentityAclArgs args, CustomResourceOptions options)
    
    type: flexibleengine:IdentityAcl
    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 IdentityAclArgs
    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 IdentityAclArgs
    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 IdentityAclArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args IdentityAclArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args IdentityAclArgs
    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 identityAclResource = new Flexibleengine.IdentityAcl("identityAclResource", new()
    {
        Type = "string",
        IdentityAclId = "string",
        IpCidrs = new[]
        {
            new Flexibleengine.Inputs.IdentityAclIpCidrArgs
            {
                Cidr = "string",
                Description = "string",
            },
        },
        IpRanges = new[]
        {
            new Flexibleengine.Inputs.IdentityAclIpRangeArgs
            {
                Range = "string",
                Description = "string",
            },
        },
    });
    
    example, err := flexibleengine.NewIdentityAcl(ctx, "identityAclResource", &flexibleengine.IdentityAclArgs{
    	Type:          pulumi.String("string"),
    	IdentityAclId: pulumi.String("string"),
    	IpCidrs: flexibleengine.IdentityAclIpCidrArray{
    		&flexibleengine.IdentityAclIpCidrArgs{
    			Cidr:        pulumi.String("string"),
    			Description: pulumi.String("string"),
    		},
    	},
    	IpRanges: flexibleengine.IdentityAclIpRangeArray{
    		&flexibleengine.IdentityAclIpRangeArgs{
    			Range:       pulumi.String("string"),
    			Description: pulumi.String("string"),
    		},
    	},
    })
    
    var identityAclResource = new IdentityAcl("identityAclResource", IdentityAclArgs.builder()
        .type("string")
        .identityAclId("string")
        .ipCidrs(IdentityAclIpCidrArgs.builder()
            .cidr("string")
            .description("string")
            .build())
        .ipRanges(IdentityAclIpRangeArgs.builder()
            .range("string")
            .description("string")
            .build())
        .build());
    
    identity_acl_resource = flexibleengine.IdentityAcl("identityAclResource",
        type="string",
        identity_acl_id="string",
        ip_cidrs=[{
            "cidr": "string",
            "description": "string",
        }],
        ip_ranges=[{
            "range": "string",
            "description": "string",
        }])
    
    const identityAclResource = new flexibleengine.IdentityAcl("identityAclResource", {
        type: "string",
        identityAclId: "string",
        ipCidrs: [{
            cidr: "string",
            description: "string",
        }],
        ipRanges: [{
            range: "string",
            description: "string",
        }],
    });
    
    type: flexibleengine:IdentityAcl
    properties:
        identityAclId: string
        ipCidrs:
            - cidr: string
              description: string
        ipRanges:
            - description: string
              range: string
        type: string
    

    IdentityAcl 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 IdentityAcl resource accepts the following input properties:

    Type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    IdentityAclId string
    The ID of identity acl.
    IpCidrs List<IdentityAclIpCidr>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    IpRanges List<IdentityAclIpRange>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    Type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    IdentityAclId string
    The ID of identity acl.
    IpCidrs []IdentityAclIpCidrArgs
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    IpRanges []IdentityAclIpRangeArgs
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type String
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId String
    The ID of identity acl.
    ipCidrs List<IdentityAclIpCidr>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges List<IdentityAclIpRange>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId string
    The ID of identity acl.
    ipCidrs IdentityAclIpCidr[]
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges IdentityAclIpRange[]
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type str
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identity_acl_id str
    The ID of identity acl.
    ip_cidrs Sequence[IdentityAclIpCidrArgs]
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ip_ranges Sequence[IdentityAclIpRangeArgs]
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type String
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId String
    The ID of identity acl.
    ipCidrs List<Property Map>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges List<Property Map>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.

    Outputs

    All input properties are implicitly available as output properties. Additionally, the IdentityAcl resource produces the following output properties:

    Id string
    The provider-assigned unique ID for this managed resource.
    Id string
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.
    id string
    The provider-assigned unique ID for this managed resource.
    id str
    The provider-assigned unique ID for this managed resource.
    id String
    The provider-assigned unique ID for this managed resource.

    Look up Existing IdentityAcl Resource

    Get an existing IdentityAcl 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?: IdentityAclState, opts?: CustomResourceOptions): IdentityAcl
    @staticmethod
    def get(resource_name: str,
            id: str,
            opts: Optional[ResourceOptions] = None,
            identity_acl_id: Optional[str] = None,
            ip_cidrs: Optional[Sequence[IdentityAclIpCidrArgs]] = None,
            ip_ranges: Optional[Sequence[IdentityAclIpRangeArgs]] = None,
            type: Optional[str] = None) -> IdentityAcl
    func GetIdentityAcl(ctx *Context, name string, id IDInput, state *IdentityAclState, opts ...ResourceOption) (*IdentityAcl, error)
    public static IdentityAcl Get(string name, Input<string> id, IdentityAclState? state, CustomResourceOptions? opts = null)
    public static IdentityAcl get(String name, Output<String> id, IdentityAclState state, CustomResourceOptions options)
    resources:  _:    type: flexibleengine:IdentityAcl    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.
    The following state arguments are supported:
    IdentityAclId string
    The ID of identity acl.
    IpCidrs List<IdentityAclIpCidr>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    IpRanges List<IdentityAclIpRange>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    Type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    IdentityAclId string
    The ID of identity acl.
    IpCidrs []IdentityAclIpCidrArgs
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    IpRanges []IdentityAclIpRangeArgs
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    Type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId String
    The ID of identity acl.
    ipCidrs List<IdentityAclIpCidr>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges List<IdentityAclIpRange>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type String
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId string
    The ID of identity acl.
    ipCidrs IdentityAclIpCidr[]
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges IdentityAclIpRange[]
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type string
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identity_acl_id str
    The ID of identity acl.
    ip_cidrs Sequence[IdentityAclIpCidrArgs]
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ip_ranges Sequence[IdentityAclIpRangeArgs]
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type str
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.
    identityAclId String
    The ID of identity acl.
    ipCidrs List<Property Map>
    Specifies the IPv4 CIDR blocks from which console access or api access is allowed. The ip_cidrs cannot repeat. The structure is documented below.
    ipRanges List<Property Map>
    Specifies the IP address ranges from which console access or api access is allowed. The ip_ranges cannot repeat. The structure is documented below.
    type String
    Specifies the ACL is created through the Console or API. valid value is 'console'. Changing this parameter will create a new ACL.

    Supporting Types

    IdentityAclIpCidr, IdentityAclIpCidrArgs

    Cidr string
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    Description string
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.
    Cidr string
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    Description string
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.
    cidr String
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    description String
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.
    cidr string
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    description string
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.
    cidr str
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    description str
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.
    cidr String
    Specifies the IPv4 CIDR block, for example, 192.168.0.0/24.
    description String
    Specifies a description about an IPv4 CIDR block. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    IdentityAclIpRange, IdentityAclIpRangeArgs

    Range string
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    Description string

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    Range string
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    Description string

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    range String
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    description String

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    range string
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    description string

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    range str
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    description str

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    range String
    Specifies the Ip address range, for example, 0.0.0.0-255.255.255.0.
    description String

    Specifies a description about an IP address range. This parameter can contain a maximum of 255 characters and the following characters are not allowed:@#%^&*<>\.

    ->NOTE: Up to 200 ip_cidrs and ip_ranges can be created in total for each access method.

    Package Details

    Repository
    flexibleengine flexibleenginecloud/terraform-provider-flexibleengine
    License
    Notes
    This Pulumi package is based on the flexibleengine Terraform Provider.
    flexibleengine logo
    flexibleengine 1.46.0 published on Monday, Apr 14, 2025 by flexibleenginecloud