diff --git a/api_names_out.yaml b/api_names_out.yaml index 68a850f62..1146334bb 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -21402,6 +21402,10 @@ "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1AccessPolicy/name": name "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1AccessPolicy/parent": parent "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1AccessPolicy/title": title +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ApiOperation": google_identity_accesscontextmanager_v1_api_operation +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ApiOperation/methodSelectors": method_selectors +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ApiOperation/methodSelectors/method_selector": method_selector +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ApiOperation/serviceName": service_name "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1BasicLevel": google_identity_accesscontextmanager_v1_basic_level "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1BasicLevel/combiningFunction": combining_function "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1BasicLevel/conditions": conditions @@ -21429,6 +21433,38 @@ "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1DevicePolicy/requireAdminApproval": require_admin_approval "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1DevicePolicy/requireCorpOwned": require_corp_owned "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1DevicePolicy/requireScreenlock": require_screenlock +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressFrom": google_identity_accesscontextmanager_v1_egress_from +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressFrom/identities": identities +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressFrom/identities/identity": identity +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressFrom/identityType": identity_type +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressPolicy": google_identity_accesscontextmanager_v1_egress_policy +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressPolicy/egressFrom": egress_from +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressPolicy/egressTo": egress_to +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressTo": google_identity_accesscontextmanager_v1_egress_to +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressTo/operations": operations +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressTo/operations/operation": operation +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressTo/resources": resources +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1EgressTo/resources/resource": resource +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom": google_identity_accesscontextmanager_v1_ingress_from +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom/identities": identities +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom/identities/identity": identity +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom/identityType": identity_type +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom/sources": sources +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressFrom/sources/source": source +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressPolicy": google_identity_accesscontextmanager_v1_ingress_policy +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressPolicy/ingressFrom": ingress_from +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressPolicy/ingressTo": ingress_to +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressSource": google_identity_accesscontextmanager_v1_ingress_source +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressSource/accessLevel": access_level +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressSource/resource": resource +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressTo": google_identity_accesscontextmanager_v1_ingress_to +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressTo/operations": operations +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressTo/operations/operation": operation +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressTo/resources": resources +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1IngressTo/resources/resource": resource +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1MethodSelector": google_identity_accesscontextmanager_v1_method_selector +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1MethodSelector/method": method_prop +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1MethodSelector/permission": permission "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1OsConstraint": google_identity_accesscontextmanager_v1_os_constraint "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1OsConstraint/minimumVersion": minimum_version "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1OsConstraint/osType": os_type @@ -21444,6 +21480,10 @@ "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig": google_identity_accesscontextmanager_v1_service_perimeter_config "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/accessLevels": access_levels "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/accessLevels/access_level": access_level +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/egressPolicies": egress_policies +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/egressPolicies/egress_policy": egress_policy +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/ingressPolicies": ingress_policies +"/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/ingressPolicies/ingress_policy": ingress_policy "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/resources": resources "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/resources/resource": resource "/cloudasset:v1/GoogleIdentityAccesscontextmanagerV1ServicePerimeterConfig/restrictedServices": restricted_services diff --git a/generated/google/apis/cloudasset_v1.rb b/generated/google/apis/cloudasset_v1.rb index 7d5fcf889..ea61e0cae 100644 --- a/generated/google/apis/cloudasset_v1.rb +++ b/generated/google/apis/cloudasset_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/asset-inventory/docs/quickstart module CloudassetV1 VERSION = 'V1' - REVISION = '20201204' + REVISION = '20201211' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/cloudasset_v1/classes.rb b/generated/google/apis/cloudasset_v1/classes.rb index 6a9990b40..735089b85 100644 --- a/generated/google/apis/cloudasset_v1/classes.rb +++ b/generated/google/apis/cloudasset_v1/classes.rb @@ -1433,6 +1433,36 @@ module Google end end + # Identification for an API Operation. + class GoogleIdentityAccesscontextmanagerV1ApiOperation + include Google::Apis::Core::Hashable + + # API methods or permissions to allow. Method or permission must belong to the + # service specified by `service_name` field. A single MethodSelector entry with ` + # *` specified for the `method` field will allow all methods AND permissions for + # the service specified in `service_name`. + # Corresponds to the JSON property `methodSelectors` + # @return [Array] + attr_accessor :method_selectors + + # The name of the API whose methods or permissions the IngressPolicy or + # EgressPolicy want to allow. A single ApiOperation with `service_name` field + # set to `*` will allow all methods AND permissions for all services. + # Corresponds to the JSON property `serviceName` + # @return [String] + attr_accessor :service_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @method_selectors = args[:method_selectors] if args.key?(:method_selectors) + @service_name = args[:service_name] if args.key?(:service_name) + end + end + # `BasicLevel` is an `AccessLevel` using a set of recommended features. class GoogleIdentityAccesscontextmanagerV1BasicLevel include Google::Apis::Core::Hashable @@ -1632,6 +1662,286 @@ module Google end end + # Defines the conditions under which an EgressPolicy matches a request. + # Conditions based on information about the source of the request. Note that if + # the destination of the request is protected by a ServicePerimeter, then that + # ServicePerimeter must have an IngressPolicy which allows access in order for + # this request to succeed. + class GoogleIdentityAccesscontextmanagerV1EgressFrom + include Google::Apis::Core::Hashable + + # A list of identities that are allowed access through this [EgressPolicy]. + # Should be in the format of email address. The email address should represent + # individual user or service account only. + # Corresponds to the JSON property `identities` + # @return [Array] + attr_accessor :identities + + # Specifies the type of identities that are allowed access to outside the + # perimeter. If left unspecified, then members of `identities` field will be + # allowed access. + # Corresponds to the JSON property `identityType` + # @return [String] + attr_accessor :identity_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @identities = args[:identities] if args.key?(:identities) + @identity_type = args[:identity_type] if args.key?(:identity_type) + end + end + + # Policy for egress from perimeter. EgressPolicies match requests based on ` + # egress_from` and `egress_to` stanzas. For an EgressPolicy to match, both ` + # egress_from` and `egress_to` stanzas must be matched. If an EgressPolicy + # matches a request, the request is allowed to span the ServicePerimeter + # boundary. For example, an EgressPolicy can be used to allow VMs on networks + # within the ServicePerimeter to access a defined set of projects outside the + # perimeter in certain contexts (e.g. to read data from a Cloud Storage bucket + # or query against a BigQuery dataset). EgressPolicies are concerned with the * + # resources* that a request relates as well as the API services and API actions + # being used. They do not related to the direction of data movement. More + # detailed documentation for this concept can be found in the descriptions of + # EgressFrom and EgressTo. + class GoogleIdentityAccesscontextmanagerV1EgressPolicy + include Google::Apis::Core::Hashable + + # Defines the conditions under which an EgressPolicy matches a request. + # Conditions based on information about the source of the request. Note that if + # the destination of the request is protected by a ServicePerimeter, then that + # ServicePerimeter must have an IngressPolicy which allows access in order for + # this request to succeed. + # Corresponds to the JSON property `egressFrom` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressFrom] + attr_accessor :egress_from + + # Defines the conditions under which an EgressPolicy matches a request. + # Conditions are based on information about the ApiOperation intended to be + # performed on the `resources` specified. Note that if the destination of the + # request is protected by a ServicePerimeter, then that ServicePerimeter must + # have an IngressPolicy which allows access in order for this request to succeed. + # Corresponds to the JSON property `egressTo` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressTo] + attr_accessor :egress_to + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @egress_from = args[:egress_from] if args.key?(:egress_from) + @egress_to = args[:egress_to] if args.key?(:egress_to) + end + end + + # Defines the conditions under which an EgressPolicy matches a request. + # Conditions are based on information about the ApiOperation intended to be + # performed on the `resources` specified. Note that if the destination of the + # request is protected by a ServicePerimeter, then that ServicePerimeter must + # have an IngressPolicy which allows access in order for this request to succeed. + class GoogleIdentityAccesscontextmanagerV1EgressTo + include Google::Apis::Core::Hashable + + # A list of ApiOperations that this egress rule applies to. A request matches if + # it contains an operation/service in this list. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + # A list of resources, currently only projects in the form `projects/`, that + # match this to stanza. A request matches if it contains a resource in this list. + # If `*` is specified for resources, then this EgressTo rule will authorize + # access to all resources outside the perimeter. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operations = args[:operations] if args.key?(:operations) + @resources = args[:resources] if args.key?(:resources) + end + end + + # Defines the conditions under which an IngressPolicy matches a request. + # Conditions are based on information about the source of the request. + class GoogleIdentityAccesscontextmanagerV1IngressFrom + include Google::Apis::Core::Hashable + + # A list of identities that are allowed access through this ingress policy. + # Should be in the format of email address. The email address should represent + # individual user or service account only. + # Corresponds to the JSON property `identities` + # @return [Array] + attr_accessor :identities + + # Specifies the type of identities that are allowed access from outside the + # perimeter. If left unspecified, then members of `identities` field will be + # allowed access. + # Corresponds to the JSON property `identityType` + # @return [String] + attr_accessor :identity_type + + # Sources that this IngressPolicy authorizes access from. + # Corresponds to the JSON property `sources` + # @return [Array] + attr_accessor :sources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @identities = args[:identities] if args.key?(:identities) + @identity_type = args[:identity_type] if args.key?(:identity_type) + @sources = args[:sources] if args.key?(:sources) + end + end + + # Policy for ingress into ServicePerimeter. IngressPolicies match requests based + # on `ingress_from` and `ingress_to` stanzas. For an ingress policy to match, + # both the `ingress_from` and `ingress_to` stanzas must be matched. If an + # IngressPolicy matches a request, the request is allowed through the perimeter + # boundary from outside the perimeter. For example, access from the internet can + # be allowed either based on an AccessLevel or, for traffic hosted on Google + # Cloud, the project of the source network. For access from private networks, + # using the project of the hosting network is required. Individual ingress + # policies can be limited by restricting which services and/or actions they + # match using the `ingress_to` field. + class GoogleIdentityAccesscontextmanagerV1IngressPolicy + include Google::Apis::Core::Hashable + + # Defines the conditions under which an IngressPolicy matches a request. + # Conditions are based on information about the source of the request. + # Corresponds to the JSON property `ingressFrom` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressFrom] + attr_accessor :ingress_from + + # Defines the conditions under which an IngressPolicy matches a request. + # Conditions are based on information about the ApiOperation intended to be + # performed on the destination of the request. + # Corresponds to the JSON property `ingressTo` + # @return [Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressTo] + attr_accessor :ingress_to + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ingress_from = args[:ingress_from] if args.key?(:ingress_from) + @ingress_to = args[:ingress_to] if args.key?(:ingress_to) + end + end + + # The source that IngressPolicy authorizes access from. + class GoogleIdentityAccesscontextmanagerV1IngressSource + include Google::Apis::Core::Hashable + + # An AccessLevel resource name that allow resources within the ServicePerimeters + # to be accessed from the internet. AccessLevels listed must be in the same + # policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will + # cause an error. If no AccessLevel names are listed, resources within the + # perimeter can only be accessed via Google Cloud calls with request origins + # within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL` + # . If `*` is specified, then all IngressSources will be allowed. + # Corresponds to the JSON property `accessLevel` + # @return [String] + attr_accessor :access_level + + # A Google Cloud resource that is allowed to ingress the perimeter. Requests + # from these resources will be allowed to access perimeter data. Currently only + # projects are allowed. Format: `projects/`project_number`` The project may be + # in any Google Cloud organization, not just the organization that the perimeter + # is defined in. `*` is not allowed, the case of allowing all Google Cloud + # resources only is not supported. + # Corresponds to the JSON property `resource` + # @return [String] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @access_level = args[:access_level] if args.key?(:access_level) + @resource = args[:resource] if args.key?(:resource) + end + end + + # Defines the conditions under which an IngressPolicy matches a request. + # Conditions are based on information about the ApiOperation intended to be + # performed on the destination of the request. + class GoogleIdentityAccesscontextmanagerV1IngressTo + include Google::Apis::Core::Hashable + + # A list of ApiOperations the sources specified in corresponding IngressFrom are + # allowed to perform in this ServicePerimeter. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + # A list of resources, currently only projects in the form `projects/`, + # protected by this ServicePerimeter that are allowed to be accessed by sources + # defined in the corresponding IngressFrom. A request matches if it contains a + # resource in this list. If `*` is specified for resources, then this IngressTo + # rule will authorize access to all resources inside the perimeter, provided + # that the request also matches the `operations` field. + # Corresponds to the JSON property `resources` + # @return [Array] + attr_accessor :resources + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @operations = args[:operations] if args.key?(:operations) + @resources = args[:resources] if args.key?(:resources) + end + end + + # An allowed method or permission of a service specified in ApiOperation. + class GoogleIdentityAccesscontextmanagerV1MethodSelector + include Google::Apis::Core::Hashable + + # Value for `method` should be a valid method name for the corresponding ` + # service_name` in ApiOperation. If `*` used as value for `method`, then ALL + # methods and permissions are allowed. + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Value for `permission` should be a valid Cloud IAM permission for the + # corresponding `service_name` in ApiOperation. + # Corresponds to the JSON property `permission` + # @return [String] + attr_accessor :permission + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @permission = args[:permission] if args.key?(:permission) + end + end + # A restriction on the OS type and version of devices making requests. class GoogleIdentityAccesscontextmanagerV1OsConstraint include Google::Apis::Core::Hashable @@ -1765,6 +2075,20 @@ module Google # @return [Array] attr_accessor :access_levels + # List of EgressPolicies to apply to the perimeter. A perimeter may have + # multiple EgressPolicies, each of which is evaluated separately. Access is + # granted if any EgressPolicy grants it. Must be empty for a perimeter bridge. + # Corresponds to the JSON property `egressPolicies` + # @return [Array] + attr_accessor :egress_policies + + # List of IngressPolicies to apply to the perimeter. A perimeter may have + # multiple IngressPolicies, each of which is evaluated separately. Access is + # granted if any Ingress Policy grants it. Must be empty for a perimeter bridge. + # Corresponds to the JSON property `ingressPolicies` + # @return [Array] + attr_accessor :ingress_policies + # A list of Google Cloud resources that are inside of the service perimeter. # Currently only projects are allowed. Format: `projects/`project_number`` # Corresponds to the JSON property `resources` @@ -1790,6 +2114,8 @@ module Google # Update properties of this object def update!(**args) @access_levels = args[:access_levels] if args.key?(:access_levels) + @egress_policies = args[:egress_policies] if args.key?(:egress_policies) + @ingress_policies = args[:ingress_policies] if args.key?(:ingress_policies) @resources = args[:resources] if args.key?(:resources) @restricted_services = args[:restricted_services] if args.key?(:restricted_services) @vpc_accessible_services = args[:vpc_accessible_services] if args.key?(:vpc_accessible_services) diff --git a/generated/google/apis/cloudasset_v1/representations.rb b/generated/google/apis/cloudasset_v1/representations.rb index 692eaecbe..3ecd25401 100644 --- a/generated/google/apis/cloudasset_v1/representations.rb +++ b/generated/google/apis/cloudasset_v1/representations.rb @@ -208,6 +208,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GoogleIdentityAccesscontextmanagerV1ApiOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GoogleIdentityAccesscontextmanagerV1BasicLevel class Representation < Google::Apis::Core::JsonRepresentation; end @@ -232,6 +238,54 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class GoogleIdentityAccesscontextmanagerV1EgressFrom + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1EgressPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1EgressTo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1IngressFrom + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1IngressPolicy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1IngressSource + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1IngressTo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GoogleIdentityAccesscontextmanagerV1MethodSelector + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class GoogleIdentityAccesscontextmanagerV1OsConstraint class Representation < Google::Apis::Core::JsonRepresentation; end @@ -766,6 +820,15 @@ module Google end end + class GoogleIdentityAccesscontextmanagerV1ApiOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :method_selectors, as: 'methodSelectors', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1MethodSelector, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1MethodSelector::Representation + + property :service_name, as: 'serviceName' + end + end + class GoogleIdentityAccesscontextmanagerV1BasicLevel # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -809,6 +872,78 @@ module Google end end + class GoogleIdentityAccesscontextmanagerV1EgressFrom + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :identities, as: 'identities' + property :identity_type, as: 'identityType' + end + end + + class GoogleIdentityAccesscontextmanagerV1EgressPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :egress_from, as: 'egressFrom', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressFrom, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressFrom::Representation + + property :egress_to, as: 'egressTo', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressTo, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressTo::Representation + + end + end + + class GoogleIdentityAccesscontextmanagerV1EgressTo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :operations, as: 'operations', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ApiOperation, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ApiOperation::Representation + + collection :resources, as: 'resources' + end + end + + class GoogleIdentityAccesscontextmanagerV1IngressFrom + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :identities, as: 'identities' + property :identity_type, as: 'identityType' + collection :sources, as: 'sources', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressSource, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressSource::Representation + + end + end + + class GoogleIdentityAccesscontextmanagerV1IngressPolicy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ingress_from, as: 'ingressFrom', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressFrom, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressFrom::Representation + + property :ingress_to, as: 'ingressTo', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressTo, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressTo::Representation + + end + end + + class GoogleIdentityAccesscontextmanagerV1IngressSource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :access_level, as: 'accessLevel' + property :resource, as: 'resource' + end + end + + class GoogleIdentityAccesscontextmanagerV1IngressTo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :operations, as: 'operations', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ApiOperation, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1ApiOperation::Representation + + collection :resources, as: 'resources' + end + end + + class GoogleIdentityAccesscontextmanagerV1MethodSelector + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :method_prop, as: 'method' + property :permission, as: 'permission' + end + end + class GoogleIdentityAccesscontextmanagerV1OsConstraint # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -837,6 +972,10 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation collection :access_levels, as: 'accessLevels' + collection :egress_policies, as: 'egressPolicies', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressPolicy, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1EgressPolicy::Representation + + collection :ingress_policies, as: 'ingressPolicies', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressPolicy, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1IngressPolicy::Representation + collection :resources, as: 'resources' collection :restricted_services, as: 'restrictedServices' property :vpc_accessible_services, as: 'vpcAccessibleServices', class: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices, decorator: Google::Apis::CloudassetV1::GoogleIdentityAccesscontextmanagerV1VpcAccessibleServices::Representation diff --git a/generated/google/apis/cloudasset_v1/synth.metadata b/generated/google/apis/cloudasset_v1/synth.metadata index db3c9b092..d95f52800 100644 --- a/generated/google/apis/cloudasset_v1/synth.metadata +++ b/generated/google/apis/cloudasset_v1/synth.metadata @@ -4,7 +4,7 @@ "git": { "name": ".", "remote": "https://github.com/googleapis/google-api-ruby-client.git", - "sha": "85b8de4633912ce1429172d3cc8fe49dbfdd6a81" + "sha": "e023fd6f01de7cda74a2820cb217f0b3ad2a65ae" } } ]