@@ -198,6 +198,31 @@ def update!(**args)
198198 end
199199 end
200200
201+ # Adds a request header to the API.
202+ class AddRequestHeader
203+ include Google ::Apis ::Core ::Hashable
204+
205+ # HTTP header key.
206+ # Corresponds to the JSON property `key`
207+ # @return [String]
208+ attr_accessor :key
209+
210+ # HTTP header value.
211+ # Corresponds to the JSON property `value`
212+ # @return [String]
213+ attr_accessor :value
214+
215+ def initialize ( **args )
216+ update! ( **args )
217+ end
218+
219+ # Update properties of this object
220+ def update! ( **args )
221+ @key = args [ :key ] if args . key? ( :key )
222+ @value = args [ :value ] if args . key? ( :value )
223+ end
224+ end
225+
201226 # Identification for an API Operation.
202227 class ApiOperation
203228 include Google ::Apis ::Core ::Hashable
@@ -892,6 +917,11 @@ class EgressSource
892917 # @return [String]
893918 attr_accessor :access_level
894919
920+ # Specifies the Private Service Connect endpoint that an API call refers to.
921+ # Corresponds to the JSON property `pscEndpoint`
922+ # @return [Google::Apis::AccesscontextmanagerV1::PrivateServiceConnectEndpoint]
923+ attr_accessor :psc_endpoint
924+
895925 # A Google Cloud resource from the service perimeter that you want to allow to
896926 # access data outside the perimeter. This field supports only projects. The
897927 # project format is `projects/`project_number``. You can't use `*` in this field
@@ -907,6 +937,7 @@ def initialize(**args)
907937 # Update properties of this object
908938 def update! ( **args )
909939 @access_level = args [ :access_level ] if args . key? ( :access_level )
940+ @psc_endpoint = args [ :psc_endpoint ] if args . key? ( :psc_endpoint )
910941 @resource = args [ :resource ] if args . key? ( :resource )
911942 end
912943 end
@@ -1277,6 +1308,11 @@ class IngressSource
12771308 # @return [String]
12781309 attr_accessor :access_level
12791310
1311+ # Specifies the Private Service Connect endpoint that an API call refers to.
1312+ # Corresponds to the JSON property `pscEndpoint`
1313+ # @return [Google::Apis::AccesscontextmanagerV1::PrivateServiceConnectEndpoint]
1314+ attr_accessor :psc_endpoint
1315+
12801316 # A Google Cloud resource that is allowed to ingress the perimeter. Requests
12811317 # from these resources will be allowed to access perimeter data. Currently only
12821318 # projects and VPCs are allowed. Project format: `projects/`project_number`` VPC
@@ -1295,6 +1331,7 @@ def initialize(**args)
12951331 # Update properties of this object
12961332 def update! ( **args )
12971333 @access_level = args [ :access_level ] if args . key? ( :access_level )
1334+ @psc_endpoint = args [ :psc_endpoint ] if args . key? ( :psc_endpoint )
12981335 @resource = args [ :resource ] if args . key? ( :resource )
12991336 end
13001337 end
@@ -1581,6 +1618,25 @@ def update!(**args)
15811618 end
15821619 end
15831620
1621+ # Modifier to apply to the API requests.
1622+ class Modifier
1623+ include Google ::Apis ::Core ::Hashable
1624+
1625+ # Adds a request header to the API.
1626+ # Corresponds to the JSON property `addRequestHeader`
1627+ # @return [Google::Apis::AccesscontextmanagerV1::AddRequestHeader]
1628+ attr_accessor :add_request_header
1629+
1630+ def initialize ( **args )
1631+ update! ( **args )
1632+ end
1633+
1634+ # Update properties of this object
1635+ def update! ( **args )
1636+ @add_request_header = args [ :add_request_header ] if args . key? ( :add_request_header )
1637+ end
1638+ end
1639+
15841640 # This resource represents a long-running operation that is the result of a
15851641 # network API call.
15861642 class Operation
@@ -1775,6 +1831,27 @@ def update!(**args)
17751831 end
17761832 end
17771833
1834+ # Specifies the Private Service Connect endpoint that an API call refers to.
1835+ class PrivateServiceConnectEndpoint
1836+ include Google ::Apis ::Core ::Hashable
1837+
1838+ # The full resource name of the global forwarding rule that identifies a Private
1839+ # Service Connect endpoint. Forwarding rule format: `//compute.googleapis.com/
1840+ # projects/`PROJECT_ID`/global/forwardingRules/`FORWARDING_RULE_ID``.
1841+ # Corresponds to the JSON property `forwardingRule`
1842+ # @return [String]
1843+ attr_accessor :forwarding_rule
1844+
1845+ def initialize ( **args )
1846+ update! ( **args )
1847+ end
1848+
1849+ # Update properties of this object
1850+ def update! ( **args )
1851+ @forwarding_rule = args [ :forwarding_rule ] if args . key? ( :forwarding_rule )
1852+ end
1853+ end
1854+
17781855 # A request to replace all existing Access Levels in an Access Policy with the
17791856 # Access Levels provided. This is done atomically.
17801857 class ReplaceAccessLevelsRequest
@@ -1913,6 +1990,39 @@ def update!(**args)
19131990 end
19141991 end
19151992
1993+ # Service patterns used to allow access.
1994+ class ServicePattern
1995+ include Google ::Apis ::Core ::Hashable
1996+
1997+ # Modifiers to apply to the requests that match the URL pattern.
1998+ # Corresponds to the JSON property `modifiers`
1999+ # @return [Array<Google::Apis::AccesscontextmanagerV1::Modifier>]
2000+ attr_accessor :modifiers
2001+
2002+ # URL pattern to allow. Only patterns of ".googleapis.com/*", "www.googleapis.
2003+ # com//*" and "*.appspot.com/* forms are supported, where should be
2004+ # alphanumerical name.
2005+ # Corresponds to the JSON property `pattern`
2006+ # @return [String]
2007+ attr_accessor :pattern
2008+
2009+ # Supported service to allow.
2010+ # Corresponds to the JSON property `service`
2011+ # @return [String]
2012+ attr_accessor :service
2013+
2014+ def initialize ( **args )
2015+ update! ( **args )
2016+ end
2017+
2018+ # Update properties of this object
2019+ def update! ( **args )
2020+ @modifiers = args [ :modifiers ] if args . key? ( :modifiers )
2021+ @pattern = args [ :pattern ] if args . key? ( :pattern )
2022+ @service = args [ :service ] if args . key? ( :service )
2023+ end
2024+ end
2025+
19162026 # `ServicePerimeter` describes a set of Google Cloud resources which can freely
19172027 # import and export data amongst themselves, but not export outside of the `
19182028 # ServicePerimeter`. If a request with a source within this `ServicePerimeter`
@@ -2324,6 +2434,12 @@ def update!(**args)
23242434 class VpcAccessibleServices
23252435 include Google ::Apis ::Core ::Hashable
23262436
2437+ # Specifies which Google services are allowed to be accessed from VPC networks
2438+ # in the service perimeter.
2439+ # Corresponds to the JSON property `allowedServicePatterns`
2440+ # @return [Array<Google::Apis::AccesscontextmanagerV1::ServicePattern>]
2441+ attr_accessor :allowed_service_patterns
2442+
23272443 # The list of APIs usable within the Service Perimeter. Must be empty unless '
23282444 # enable_restriction' is True. You can specify a list of individual services, as
23292445 # well as include the 'RESTRICTED-SERVICES' value, which automatically includes
@@ -2339,14 +2455,21 @@ class VpcAccessibleServices
23392455 attr_accessor :enable_restriction
23402456 alias_method :enable_restriction? , :enable_restriction
23412457
2458+ # Defines the enforcement scopes of service patterns.
2459+ # Corresponds to the JSON property `servicePatternsEnforcementScopes`
2460+ # @return [Array<String>]
2461+ attr_accessor :service_patterns_enforcement_scopes
2462+
23422463 def initialize ( **args )
23432464 update! ( **args )
23442465 end
23452466
23462467 # Update properties of this object
23472468 def update! ( **args )
2469+ @allowed_service_patterns = args [ :allowed_service_patterns ] if args . key? ( :allowed_service_patterns )
23482470 @allowed_services = args [ :allowed_services ] if args . key? ( :allowed_services )
23492471 @enable_restriction = args [ :enable_restriction ] if args . key? ( :enable_restriction )
2472+ @service_patterns_enforcement_scopes = args [ :service_patterns_enforcement_scopes ] if args . key? ( :service_patterns_enforcement_scopes )
23502473 end
23512474 end
23522475
0 commit comments