Class: Google::Apis::AccesscontextmanagerV1::ServicePerimeter

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/accesscontextmanager_v1/classes.rb,
generated/google/apis/accesscontextmanager_v1/representations.rb,
generated/google/apis/accesscontextmanager_v1/representations.rb

Overview

ServicePerimeter describes a set of GCP resources which can freely import and export data amongst themselves, but not export outside of the ServicePerimeter. If a request with a source within this ServicePerimeter has a target outside of the ServicePerimeter, the request will be blocked. Otherwise the request is allowed. There are two types of Service Perimeter - Regular and Bridge. Regular Service Perimeters cannot overlap, a single GCP project can only belong to a single regular Service Perimeter. Service Perimeter Bridges can contain only GCP projects as members, a single GCP project may belong to multiple Service Perimeter Bridges.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Core::JsonObjectSupport

#to_json

Methods included from Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ ServicePerimeter

Returns a new instance of ServicePerimeter.



704
705
706
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 704

def initialize(**args)
   update!(**args)
end

Instance Attribute Details

#create_timeString

Output only. Time the ServicePerimeter was created in UTC. Corresponds to the JSON property createTime

Returns:

  • (String)


663
664
665
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 663

def create_time
  @create_time
end

#descriptionString

Description of the ServicePerimeter and its use. Does not affect behavior. Corresponds to the JSON property description

Returns:

  • (String)


669
670
671
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 669

def description
  @description
end

#nameString

Required. Resource name for the ServicePerimeter. The short_name component must begin with a letter and only include alphanumeric and '_'. Format: accessPolicies/policy_id/servicePerimeters/short_name` Corresponds to the JSON propertyname`

Returns:

  • (String)


676
677
678
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 676

def name
  @name
end

#perimeter_typeString

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, the restricted service list as well as access level lists must be empty. Corresponds to the JSON property perimeterType

Returns:

  • (String)


686
687
688
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 686

def perimeter_type
  @perimeter_type
end

#statusGoogle::Apis::AccesscontextmanagerV1::ServicePerimeterConfig

ServicePerimeterConfig specifies a set of GCP resources that describe specific Service Perimeter configuration. Corresponds to the JSON property status



692
693
694
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 692

def status
  @status
end

#titleString

Human readable title. Must be unique within the Policy. Corresponds to the JSON property title

Returns:

  • (String)


697
698
699
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 697

def title
  @title
end

#update_timeString

Output only. Time the ServicePerimeter was updated in UTC. Corresponds to the JSON property updateTime

Returns:

  • (String)


702
703
704
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 702

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



709
710
711
712
713
714
715
716
717
# File 'generated/google/apis/accesscontextmanager_v1/classes.rb', line 709

def update!(**args)
  @create_time = args[:create_time] if args.key?(:create_time)
  @description = args[:description] if args.key?(:description)
  @name = args[:name] if args.key?(:name)
  @perimeter_type = args[:perimeter_type] if args.key?(:perimeter_type)
  @status = args[:status] if args.key?(:status)
  @title = args[:title] if args.key?(:title)
  @update_time = args[:update_time] if args.key?(:update_time)
end