generated/google/apis/cloudfunctions_v1/classes.rb in google-api-client-0.36.0 vs generated/google/apis/cloudfunctions_v1/classes.rb in google-api-client-0.36.1

- old
+ new

@@ -160,10 +160,27 @@ # account. For example, `alice@example.com` . # * `serviceAccount:`emailid``: An email address that represents a service # account. For example, `my-other-app@appspot.gserviceaccount.com`. # * `group:`emailid``: An email address that represents a Google group. # For example, `admins@example.com`. + # * `deleted:user:`emailid`?uid=`uniqueid``: An email address (plus unique + # identifier) representing a user that has been recently deleted. For + # example, `alice@example.com?uid=123456789012345678901`. If the user is + # recovered, this value reverts to `user:`emailid`` and the recovered user + # retains the role in the binding. + # * `deleted:serviceAccount:`emailid`?uid=`uniqueid``: An email address (plus + # unique identifier) representing a service account that has been recently + # deleted. For example, + # `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. + # If the service account is undeleted, this value reverts to + # `serviceAccount:`emailid`` and the undeleted service account retains the + # role in the binding. + # * `deleted:group:`emailid`?uid=`uniqueid``: An email address (plus unique + # identifier) representing a Google group that has been recently + # deleted. For example, `admins@example.com?uid=123456789012345678901`. If + # the group is recovered, this value reverts to `group:`emailid`` and the + # recovered group retains the role in the binding. # * `domain:`domain``: The G Suite domain (primary) that represents all the # users of that domain. For example, `google.com` or `example.com`. # Corresponds to the JSON property `members` # @return [Array<String>] attr_accessor :members @@ -926,20 +943,22 @@ @update_time = args[:update_time] if args.key?(:update_time) @version_id = args[:version_id] if args.key?(:version_id) end end - # Defines an Identity and Access Management (IAM) policy. It is used to - # specify access control policies for Cloud Platform resources. + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. # A `Policy` is a collection of `bindings`. A `binding` binds one or more # `members` to a single `role`. Members can be user accounts, service accounts, # Google groups, and domains (such as G Suite). A `role` is a named list of - # permissions (defined by IAM or configured by users). A `binding` can - # optionally specify a `condition`, which is a logic expression that further - # constrains the role binding based on attributes about the request and/or - # target resource. - # **JSON Example** + # permissions; each `role` can be an IAM predefined role or a user-created + # custom role. + # Optionally, a `binding` can specify a `condition`, which is a logical + # expression that allows access to a resource only if the expression evaluates + # to `true`. A condition can add constraints based on attributes of the + # request, the resource, or both. + # **JSON example:** # ` # "bindings": [ # ` # "role": "roles/resourcemanager.organizationAdmin", # "members": [ @@ -953,17 +972,19 @@ # "role": "roles/resourcemanager.organizationViewer", # "members": ["user:eve@example.com"], # "condition": ` # "title": "expirable access", # "description": "Does not grant access after Sep 2020", - # "expression": "request.time < - # timestamp('2020-10-01T00:00:00.000Z')", + # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z') + # ", # ` # ` - # ] + # ], + # "etag": "BwWWja0YfJA=", + # "version": 3 # ` - # **YAML Example** + # **YAML example:** # bindings: # - members: # - user:mike@example.com # - group:admins@example.com # - domain:google.com @@ -974,23 +995,25 @@ # role: roles/resourcemanager.organizationViewer # condition: # title: expirable access # description: Does not grant access after Sep 2020 # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') + # - etag: BwWWja0YfJA= + # - version: 3 # For a description of IAM and its features, see the - # [IAM developer's guide](https://cloud.google.com/iam/docs). + # [IAM documentation](https://cloud.google.com/iam/docs/). class Policy include Google::Apis::Core::Hashable # Specifies cloud audit logging configuration for this policy. # Corresponds to the JSON property `auditConfigs` # @return [Array<Google::Apis::CloudfunctionsV1::AuditConfig>] attr_accessor :audit_configs - # Associates a list of `members` to a `role`. Optionally may specify a - # `condition` that determines when binding is in effect. - # `bindings` with no members will result in an error. + # Associates a list of `members` to a `role`. Optionally, may specify a + # `condition` that determines how and when the `bindings` are applied. Each + # of the `bindings` must contain at least one member. # Corresponds to the JSON property `bindings` # @return [Array<Google::Apis::CloudfunctionsV1::Binding>] attr_accessor :bindings # `etag` is used for optimistic concurrency control as a way to help @@ -998,30 +1021,35 @@ # It is strongly suggested that systems make use of the `etag` in the # read-modify-write cycle to perform policy updates in order to avoid race # conditions: An `etag` is returned in the response to `getIamPolicy`, and # systems are expected to put that etag in the request to `setIamPolicy` to # ensure that their change will be applied to the same version of the policy. - # If no `etag` is provided in the call to `setIamPolicy`, then the existing - # policy is overwritten. Due to blind-set semantics of an etag-less policy, - # 'setIamPolicy' will not fail even if the incoming policy version does not - # meet the requirements for modifying the stored policy. + # **Important:** If you use IAM Conditions, you must include the `etag` field + # whenever you call `setIamPolicy`. If you omit this field, then IAM allows + # you to overwrite a version `3` policy with a version `1` policy, and all of + # the conditions in the version `3` policy are lost. # Corresponds to the JSON property `etag` # NOTE: Values are automatically base64 encoded/decoded in the client library. # @return [String] attr_accessor :etag # Specifies the format of the policy. - # Valid values are 0, 1, and 3. Requests specifying an invalid value will be - # rejected. - # Operations affecting conditional bindings must specify version 3. This can - # be either setting a conditional policy, modifying a conditional binding, - # or removing a binding (conditional or unconditional) from the stored - # conditional policy. - # Operations on non-conditional policies may specify any valid value or - # leave the field unset. - # If no etag is provided in the call to `setIamPolicy`, version compliance - # checks against the stored policy is skipped. + # Valid values are `0`, `1`, and `3`. Requests that specify an invalid value + # are rejected. + # Any operation that affects conditional role bindings must specify version + # `3`. This requirement applies to the following operations: + # * Getting a policy that includes a conditional role binding + # * Adding a conditional role binding to a policy + # * Changing a conditional role binding in a policy + # * Removing any role binding, with or without a condition, from a policy + # that includes conditions + # **Important:** If you use IAM Conditions, you must include the `etag` field + # whenever you call `setIamPolicy`. If you omit this field, then IAM allows + # you to overwrite a version `3` policy with a version `1` policy, and all of + # the conditions in the version `3` policy are lost. + # If a policy does not include any conditions, operations on that policy may + # specify any valid version or leave the field unset. # Corresponds to the JSON property `version` # @return [Fixnum] attr_accessor :version def initialize(**args) @@ -1056,20 +1084,22 @@ # Request message for `SetIamPolicy` method. class SetIamPolicyRequest include Google::Apis::Core::Hashable - # Defines an Identity and Access Management (IAM) policy. It is used to - # specify access control policies for Cloud Platform resources. + # An Identity and Access Management (IAM) policy, which specifies access + # controls for Google Cloud resources. # A `Policy` is a collection of `bindings`. A `binding` binds one or more # `members` to a single `role`. Members can be user accounts, service accounts, # Google groups, and domains (such as G Suite). A `role` is a named list of - # permissions (defined by IAM or configured by users). A `binding` can - # optionally specify a `condition`, which is a logic expression that further - # constrains the role binding based on attributes about the request and/or - # target resource. - # **JSON Example** + # permissions; each `role` can be an IAM predefined role or a user-created + # custom role. + # Optionally, a `binding` can specify a `condition`, which is a logical + # expression that allows access to a resource only if the expression evaluates + # to `true`. A condition can add constraints based on attributes of the + # request, the resource, or both. + # **JSON example:** # ` # "bindings": [ # ` # "role": "roles/resourcemanager.organizationAdmin", # "members": [ @@ -1083,17 +1113,19 @@ # "role": "roles/resourcemanager.organizationViewer", # "members": ["user:eve@example.com"], # "condition": ` # "title": "expirable access", # "description": "Does not grant access after Sep 2020", - # "expression": "request.time < - # timestamp('2020-10-01T00:00:00.000Z')", + # "expression": "request.time < timestamp('2020-10-01T00:00:00.000Z') + # ", # ` # ` - # ] + # ], + # "etag": "BwWWja0YfJA=", + # "version": 3 # ` - # **YAML Example** + # **YAML example:** # bindings: # - members: # - user:mike@example.com # - group:admins@example.com # - domain:google.com @@ -1104,11 +1136,13 @@ # role: roles/resourcemanager.organizationViewer # condition: # title: expirable access # description: Does not grant access after Sep 2020 # expression: request.time < timestamp('2020-10-01T00:00:00.000Z') + # - etag: BwWWja0YfJA= + # - version: 3 # For a description of IAM and its features, see the - # [IAM developer's guide](https://cloud.google.com/iam/docs). + # [IAM documentation](https://cloud.google.com/iam/docs/). # Corresponds to the JSON property `policy` # @return [Google::Apis::CloudfunctionsV1::Policy] attr_accessor :policy # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only