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


538
539
540
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 538

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


497
498
499
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 497

def create_time
  @create_time
end

#descriptionString

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


503
504
505
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 503

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`


510
511
512
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 510

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


520
521
522
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 520

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


526
527
528
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 526

def status
  @status
end

#titleString

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


531
532
533
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 531

def title
  @title
end

#update_timeString

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


536
537
538
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 536

def update_time
  @update_time
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object


543
544
545
546
547
548
549
550
551
# File 'generated/google/apis/accesscontextmanager_v1beta/classes.rb', line 543

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