Class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeter

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

Overview

ServicePerimeter describes a set of Google Cloud 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 Google Cloud project can only belong to a single regular Service Perimeter. Service Perimeter Bridges can contain only Google Cloud projects as members, a single Google Cloud project may belong to multiple Service Perimeter Bridges.

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from Google::Apis::Core::JsonObjectSupport

#to_json

Methods included from Google::Apis::Core::Hashable

process_value, #to_h

Constructor Details

#initialize(**args) ⇒ GoogleIdentityAccesscontextmanagerV1ServicePerimeter

Returns a new instance of GoogleIdentityAccesscontextmanagerV1ServicePerimeter.



1490
1491
1492
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1490

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)


1428
1429
1430
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1428

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)


1434
1435
1436
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1434

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)


1441
1442
1443
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1441

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)


1451
1452
1453
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1451

def perimeter_type
  @perimeter_type
end

#specGoogle::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig

ServicePerimeterConfig specifies a set of Google Cloud resources that describe specific Service Perimeter configuration. Corresponds to the JSON property spec



1457
1458
1459
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1457

def spec
  @spec
end

#statusGoogle::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig

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



1463
1464
1465
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1463

def status
  @status
end

#titleString

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

Returns:

  • (String)


1468
1469
1470
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1468

def title
  @title
end

#update_timeString

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

Returns:

  • (String)


1473
1474
1475
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1473

def update_time
  @update_time
end

#use_explicit_dry_run_specBoolean Also known as: use_explicit_dry_run_spec?

Use explicit dry run spec flag. Ordinarily, a dry-run spec implicitly exists for all Service Perimeters, and that spec is identical to the status for those Service Perimeters. When this flag is set, it inhibits the generation of the implicit spec, thereby allowing the user to explicitly provide a configuration ("spec") to use in a dry-run version of the Service Perimeter. This allows the user to test changes to the enforced config ("status") without actually enforcing them. This testing is done through analyzing the differences between currently enforced and suggested restrictions. use_explicit_dry_run_spec must bet set to True if any of the fields in the spec are set to non-default values. Corresponds to the JSON property useExplicitDryRunSpec

Returns:

  • (Boolean)


1487
1488
1489
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1487

def use_explicit_dry_run_spec
  @use_explicit_dry_run_spec
end

Instance Method Details

#update!(**args) ⇒ Object

Update properties of this object



1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
# File 'generated/google/apis/cloudasset_v1/classes.rb', line 1495

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)
  @spec = args[:spec] if args.key?(:spec)
  @status = args[:status] if args.key?(:status)
  @title = args[:title] if args.key?(:title)
  @update_time = args[:update_time] if args.key?(:update_time)
  @use_explicit_dry_run_spec = args[:use_explicit_dry_run_spec] if args.key?(:use_explicit_dry_run_spec)
end