1. Packages
  2. Google Cloud Native
  3. API Docs
  4. accesscontextmanager
  5. accesscontextmanager/v1beta
  6. ServicePerimeter

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

google-native.accesscontextmanager/v1beta.ServicePerimeter

Explore with Pulumi AI

google-native logo

Google Cloud Native is in preview. Google Cloud Classic is fully supported.

Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi

    Create a Service Perimeter. The longrunning operation from this RPC will have a successful status once the Service Perimeter has propagated to long-lasting storage. Service Perimeters containing errors will result in an error response for the first error encountered.

    Create ServicePerimeter Resource

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

    Constructor syntax

    new ServicePerimeter(name: string, args: ServicePerimeterArgs, opts?: CustomResourceOptions);
    @overload
    def ServicePerimeter(resource_name: str,
                         args: ServicePerimeterArgs,
                         opts: Optional[ResourceOptions] = None)
    
    @overload
    def ServicePerimeter(resource_name: str,
                         opts: Optional[ResourceOptions] = None,
                         access_policy_id: Optional[str] = None,
                         description: Optional[str] = None,
                         name: Optional[str] = None,
                         perimeter_type: Optional[ServicePerimeterPerimeterType] = None,
                         title: Optional[str] = None)
    func NewServicePerimeter(ctx *Context, name string, args ServicePerimeterArgs, opts ...ResourceOption) (*ServicePerimeter, error)
    public ServicePerimeter(string name, ServicePerimeterArgs args, CustomResourceOptions? opts = null)
    public ServicePerimeter(String name, ServicePerimeterArgs args)
    public ServicePerimeter(String name, ServicePerimeterArgs args, CustomResourceOptions options)
    
    type: google-native:accesscontextmanager/v1beta:ServicePerimeter
    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 ServicePerimeterArgs
    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 ServicePerimeterArgs
    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 ServicePerimeterArgs
    The arguments to resource properties.
    opts ResourceOption
    Bag of options to control resource's behavior.
    name string
    The unique name of the resource.
    args ServicePerimeterArgs
    The arguments to resource properties.
    opts CustomResourceOptions
    Bag of options to control resource's behavior.
    name String
    The unique name of the resource.
    args ServicePerimeterArgs
    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 google_nativeServicePerimeterResource = new GoogleNative.AccessContextManager.V1Beta.ServicePerimeter("google-nativeServicePerimeterResource", new()
    {
        AccessPolicyId = "string",
        Description = "string",
        Name = "string",
        PerimeterType = GoogleNative.AccessContextManager.V1Beta.ServicePerimeterPerimeterType.PerimeterTypeRegular,
        Title = "string",
    });
    
    example, err := accesscontextmanagerv1beta.NewServicePerimeter(ctx, "google-nativeServicePerimeterResource", &accesscontextmanagerv1beta.ServicePerimeterArgs{
    	AccessPolicyId: pulumi.String("string"),
    	Description:    pulumi.String("string"),
    	Name:           pulumi.String("string"),
    	PerimeterType:  accesscontextmanagerv1beta.ServicePerimeterPerimeterTypePerimeterTypeRegular,
    	Title:          pulumi.String("string"),
    })
    
    var google_nativeServicePerimeterResource = new ServicePerimeter("google-nativeServicePerimeterResource", ServicePerimeterArgs.builder()
        .accessPolicyId("string")
        .description("string")
        .name("string")
        .perimeterType("PERIMETER_TYPE_REGULAR")
        .title("string")
        .build());
    
    google_native_service_perimeter_resource = google_native.accesscontextmanager.v1beta.ServicePerimeter("google-nativeServicePerimeterResource",
        access_policy_id="string",
        description="string",
        name="string",
        perimeter_type=google_native.accesscontextmanager.v1beta.ServicePerimeterPerimeterType.PERIMETER_TYPE_REGULAR,
        title="string")
    
    const google_nativeServicePerimeterResource = new google_native.accesscontextmanager.v1beta.ServicePerimeter("google-nativeServicePerimeterResource", {
        accessPolicyId: "string",
        description: "string",
        name: "string",
        perimeterType: google_native.accesscontextmanager.v1beta.ServicePerimeterPerimeterType.PerimeterTypeRegular,
        title: "string",
    });
    
    type: google-native:accesscontextmanager/v1beta:ServicePerimeter
    properties:
        accessPolicyId: string
        description: string
        name: string
        perimeterType: PERIMETER_TYPE_REGULAR
        title: string
    

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

    AccessPolicyId string
    Description string
    Description of the ServicePerimeter and its use. Does not affect behavior.
    Name string
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    PerimeterType Pulumi.GoogleNative.AccessContextManager.V1Beta.ServicePerimeterPerimeterType
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    Title string
    Human readable title. Must be unique within the Policy.
    AccessPolicyId string
    Description string
    Description of the ServicePerimeter and its use. Does not affect behavior.
    Name string
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    PerimeterType ServicePerimeterPerimeterType
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    Title string
    Human readable title. Must be unique within the Policy.
    accessPolicyId String
    description String
    Description of the ServicePerimeter and its use. Does not affect behavior.
    name String
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    perimeterType ServicePerimeterPerimeterType
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    title String
    Human readable title. Must be unique within the Policy.
    accessPolicyId string
    description string
    Description of the ServicePerimeter and its use. Does not affect behavior.
    name string
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    perimeterType ServicePerimeterPerimeterType
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    title string
    Human readable title. Must be unique within the Policy.
    access_policy_id str
    description str
    Description of the ServicePerimeter and its use. Does not affect behavior.
    name str
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    perimeter_type ServicePerimeterPerimeterType
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    title str
    Human readable title. Must be unique within the Policy.
    accessPolicyId String
    description String
    Description of the ServicePerimeter and its use. Does not affect behavior.
    name String
    Resource name for the ServicePerimeter. Format: accessPolicies/{access_policy}/servicePerimeters/{service_perimeter}. The service_perimeter component must begin with a letter, followed by alphanumeric characters or _. After you create a ServicePerimeter, you cannot change its name.
    perimeterType "PERIMETER_TYPE_REGULAR" | "PERIMETER_TYPE_BRIDGE"
    Perimeter type indicator. A single project is allowed to be a member of single regular perimeter, but multiple service perimeter bridges. A project cannot be a included in a perimeter bridge without being included in regular perimeter. For perimeter bridges, restricted/unrestricted service lists as well as access lists must be empty.
    title String
    Human readable title. Must be unique within the Policy.

    Outputs

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

    Id string
    The provider-assigned unique ID for this managed resource.
    Status Pulumi.GoogleNative.AccessContextManager.V1Beta.Outputs.ServicePerimeterConfigResponse
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.
    Id string
    The provider-assigned unique ID for this managed resource.
    Status ServicePerimeterConfigResponse
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.
    id String
    The provider-assigned unique ID for this managed resource.
    status ServicePerimeterConfigResponse
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.
    id string
    The provider-assigned unique ID for this managed resource.
    status ServicePerimeterConfigResponse
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.
    id str
    The provider-assigned unique ID for this managed resource.
    status ServicePerimeterConfigResponse
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.
    id String
    The provider-assigned unique ID for this managed resource.
    status Property Map
    Current ServicePerimeter configuration. Specifies sets of resources, restricted/unrestricted services and access levels that determine perimeter content and boundaries.

    Supporting Types

    ServicePerimeterConfigResponse, ServicePerimeterConfigResponseArgs

    AccessLevels List<string>
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    Resources List<string>
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    RestrictedServices List<string>
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    UnrestrictedServices List<string>
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    VpcAccessibleServices Pulumi.GoogleNative.AccessContextManager.V1Beta.Inputs.VpcAccessibleServicesResponse
    Beta. Configuration for APIs allowed within Perimeter.
    AccessLevels []string
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    Resources []string
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    RestrictedServices []string
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    UnrestrictedServices []string
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    VpcAccessibleServices VpcAccessibleServicesResponse
    Beta. Configuration for APIs allowed within Perimeter.
    accessLevels List<String>
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    resources List<String>
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    restrictedServices List<String>
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    unrestrictedServices List<String>
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    vpcAccessibleServices VpcAccessibleServicesResponse
    Beta. Configuration for APIs allowed within Perimeter.
    accessLevels string[]
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    resources string[]
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    restrictedServices string[]
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    unrestrictedServices string[]
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    vpcAccessibleServices VpcAccessibleServicesResponse
    Beta. Configuration for APIs allowed within Perimeter.
    access_levels Sequence[str]
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    resources Sequence[str]
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    restricted_services Sequence[str]
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    unrestricted_services Sequence[str]
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    vpc_accessible_services VpcAccessibleServicesResponse
    Beta. Configuration for APIs allowed within Perimeter.
    accessLevels List<String>
    A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via Google Cloud calls with request origins within the perimeter. Example: "accessPolicies/MY_POLICY/accessLevels/MY_LEVEL". For Service Perimeter Bridge, must be empty.
    resources List<String>
    A list of Google Cloud resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}
    restrictedServices List<String>
    Google Cloud services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter's access restrictions.
    unrestrictedServices List<String>
    Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    Deprecated: Google Cloud services that are not subject to the Service Perimeter restrictions. Deprecated. Must be set to a single wildcard "*". The wildcard means that unless explicitly specified by "restricted_services" list, any service is treated as unrestricted.

    vpcAccessibleServices Property Map
    Beta. Configuration for APIs allowed within Perimeter.

    ServicePerimeterPerimeterType, ServicePerimeterPerimeterTypeArgs

    PerimeterTypeRegular
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    PerimeterTypeBridge
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.
    ServicePerimeterPerimeterTypePerimeterTypeRegular
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    ServicePerimeterPerimeterTypePerimeterTypeBridge
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.
    PerimeterTypeRegular
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    PerimeterTypeBridge
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.
    PerimeterTypeRegular
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    PerimeterTypeBridge
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.
    PERIMETER_TYPE_REGULAR
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    PERIMETER_TYPE_BRIDGE
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.
    "PERIMETER_TYPE_REGULAR"
    PERIMETER_TYPE_REGULARRegular Perimeter. When no value is specified, the perimeter uses this type.
    "PERIMETER_TYPE_BRIDGE"
    PERIMETER_TYPE_BRIDGEPerimeter Bridge.

    VpcAccessibleServicesResponse, VpcAccessibleServicesResponseArgs

    AllowedServices List<string>
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    EnableRestriction bool
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
    AllowedServices []string
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    EnableRestriction bool
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
    allowedServices List<String>
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    enableRestriction Boolean
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
    allowedServices string[]
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    enableRestriction boolean
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
    allowed_services Sequence[str]
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    enable_restriction bool
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.
    allowedServices List<String>
    The list of APIs usable within the Service Perimeter. Must be empty unless 'enable_restriction' is True. You can specify a list of individual services, as well as include the 'RESTRICTED-SERVICES' value, which automatically includes all of the services protected by the perimeter.
    enableRestriction Boolean
    Whether to restrict API calls within the Service Perimeter to the list of APIs specified in 'allowed_services'.

    Package Details

    Repository
    Google Cloud Native pulumi/pulumi-google-native
    License
    Apache-2.0
    google-native logo

    Google Cloud Native is in preview. Google Cloud Classic is fully supported.

    Google Cloud Native v0.32.0 published on Wednesday, Nov 29, 2023 by Pulumi