Class: Google::Apis::AccesscontextmanagerV1beta::ServicePerimeter

Inherits:
Object
  • Object
show all
Includes:
Core::Hashable, Core::JsonObjectSupport
Defined in:
generated/google/apis/accesscontextmanager_v1beta/classes.rb,
generated/google/apis/accesscontextmanager_v1beta/representations.rb,
generated/google/apis/accesscontextmanager_v1beta/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



592
593
594
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 592

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)


551
552
553
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 551

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)


557
558
559
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 557

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)


564
565
566
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 564

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

Returns:

  • (String)


574
575
576
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 574

def perimeter_type
  @perimeter_type
end

#statusGoogle::Apis::AccesscontextmanagerV1beta::ServicePerimeterConfig

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



580
581
582
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 580

def status
  @status
end

#titleString

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

Returns:

  • (String)


585
586
587
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 585

def title
  @title
end

#update_timeString

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

Returns:

  • (String)


590
591
592
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 590

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



597
598
599
600
601
602
603
604
605
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 597

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