generated/google/apis/secretmanager_v1/classes.rb in google-api-client-0.43.0 vs generated/google/apis/secretmanager_v1/classes.rb in google-api-client-0.44.0
- old
+ new
@@ -24,12 +24,12 @@
# Response message for SecretManagerService.AccessSecretVersion.
class AccessSecretVersionResponse
include Google::Apis::Core::Hashable
- # The resource name of the SecretVersion in the format
- # `projects/*/secrets/*/versions/*`.
+ # The resource name of the SecretVersion in the format `projects/*/secrets/*/
+ # versions/*`.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# A secret payload resource in the Secret Manager API. This contains the
@@ -67,68 +67,36 @@
def update!(**args)
@payload = args[:payload] if args.key?(:payload)
end
end
- # Specifies the audit configuration for a service.
- # The configuration determines which permission types are logged, and what
- # identities, if any, are exempted from logging.
- # An AuditConfig must have one or more AuditLogConfigs.
- # If there are AuditConfigs for both `allServices` and a specific service,
- # the union of the two AuditConfigs is used for that service: the log_types
- # specified in each AuditConfig are enabled, and the exempted_members in each
- # AuditLogConfig are exempted.
- # Example Policy with multiple AuditConfigs:
- # `
- # "audit_configs": [
- # `
- # "service": "allServices",
- # "audit_log_configs": [
- # `
- # "log_type": "DATA_READ",
- # "exempted_members": [
- # "user:jose@example.com"
- # ]
- # `,
- # `
- # "log_type": "DATA_WRITE"
- # `,
- # `
- # "log_type": "ADMIN_READ"
- # `
- # ]
- # `,
- # `
- # "service": "sampleservice.googleapis.com",
- # "audit_log_configs": [
- # `
- # "log_type": "DATA_READ"
- # `,
- # `
- # "log_type": "DATA_WRITE",
- # "exempted_members": [
- # "user:aliya@example.com"
- # ]
- # `
- # ]
- # `
- # ]
- # `
- # For sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
- # logging. It also exempts jose@example.com from DATA_READ logging, and
- # aliya@example.com from DATA_WRITE logging.
+ # Specifies the audit configuration for a service. The configuration determines
+ # which permission types are logged, and what identities, if any, are exempted
+ # from logging. An AuditConfig must have one or more AuditLogConfigs. If there
+ # are AuditConfigs for both `allServices` and a specific service, the union of
+ # the two AuditConfigs is used for that service: the log_types specified in each
+ # AuditConfig are enabled, and the exempted_members in each AuditLogConfig are
+ # exempted. Example Policy with multiple AuditConfigs: ` "audit_configs": [ ` "
+ # service": "allServices", "audit_log_configs": [ ` "log_type": "DATA_READ", "
+ # exempted_members": [ "user:jose@example.com" ] `, ` "log_type": "DATA_WRITE" `,
+ # ` "log_type": "ADMIN_READ" ` ] `, ` "service": "sampleservice.googleapis.com",
+ # "audit_log_configs": [ ` "log_type": "DATA_READ" `, ` "log_type": "DATA_WRITE"
+ # , "exempted_members": [ "user:aliya@example.com" ] ` ] ` ] ` For sampleservice,
+ # this policy enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also
+ # exempts jose@example.com from DATA_READ logging, and aliya@example.com from
+ # DATA_WRITE logging.
class AuditConfig
include Google::Apis::Core::Hashable
# The configuration for logging of each type of permission.
# Corresponds to the JSON property `auditLogConfigs`
# @return [Array<Google::Apis::SecretmanagerV1::AuditLogConfig>]
attr_accessor :audit_log_configs
- # Specifies a service that will be enabled for audit logging.
- # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
- # `allServices` is a special value that covers all services.
+ # Specifies a service that will be enabled for audit logging. For example, `
+ # storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` is a special
+ # value that covers all services.
# Corresponds to the JSON property `service`
# @return [String]
attr_accessor :service
def initialize(**args)
@@ -140,32 +108,19 @@
@audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs)
@service = args[:service] if args.key?(:service)
end
end
- # Provides the configuration for logging a type of permissions.
- # Example:
- # `
- # "audit_log_configs": [
- # `
- # "log_type": "DATA_READ",
- # "exempted_members": [
- # "user:jose@example.com"
- # ]
- # `,
- # `
- # "log_type": "DATA_WRITE"
- # `
- # ]
- # `
- # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
- # jose@example.com from DATA_READ logging.
+ # Provides the configuration for logging a type of permissions. Example: ` "
+ # audit_log_configs": [ ` "log_type": "DATA_READ", "exempted_members": [ "user:
+ # jose@example.com" ] `, ` "log_type": "DATA_WRITE" ` ] ` This enables '
+ # DATA_READ' and 'DATA_WRITE' logging, while exempting jose@example.com from
+ # DATA_READ logging.
class AuditLogConfig
include Google::Apis::Core::Hashable
- # Specifies the identities that do not cause logging for this type of
- # permission.
+ # Specifies the identities that do not cause logging for this type of permission.
# Follows the same format of Binding.members.
# Corresponds to the JSON property `exemptedMembers`
# @return [Array<String>]
attr_accessor :exempted_members
@@ -201,73 +156,61 @@
# Associates `members` with a `role`.
class Binding
include Google::Apis::Core::Hashable
- # Represents a textual expression in the Common Expression Language (CEL)
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
- # are documented at https://github.com/google/cel-spec.
- # Example (Comparison):
- # title: "Summary size limit"
- # description: "Determines if a summary is less than 100 chars"
- # expression: "document.summary.size() < 100"
- # Example (Equality):
- # title: "Requestor is owner"
- # description: "Determines if requestor is the document owner"
- # expression: "document.owner == request.auth.claims.email"
- # Example (Logic):
- # title: "Public documents"
- # description: "Determine whether the document should be publicly visible"
- # expression: "document.type != 'private' && document.type != 'internal'"
- # Example (Data Manipulation):
- # title: "Notification string"
- # description: "Create a notification string with a timestamp."
- # expression: "'New message received at ' + string(document.create_time)"
- # The exact variables and functions that may be referenced within an expression
- # are determined by the service that evaluates it. See the service
- # documentation for additional information.
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
+ # "Summary size limit" description: "Determines if a summary is less than 100
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
+ # Requestor is owner" description: "Determines if requestor is the document
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
+ # Logic): title: "Public documents" description: "Determine whether the document
+ # should be publicly visible" expression: "document.type != 'private' &&
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
+ # string" description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)" The
+ # exact variables and functions that may be referenced within an expression are
+ # determined by the service that evaluates it. See the service documentation for
+ # additional information.
# Corresponds to the JSON property `condition`
# @return [Google::Apis::SecretmanagerV1::Expr]
attr_accessor :condition
- # Specifies the identities requesting access for a Cloud Platform resource.
- # `members` can have the following values:
- # * `allUsers`: A special identifier that represents anyone who is
- # on the internet; with or without a Google account.
- # * `allAuthenticatedUsers`: A special identifier that represents anyone
- # who is authenticated with a Google account or a service account.
- # * `user:`emailid``: An email address that represents a specific Google
- # 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`.
+ # Specifies the identities requesting access for a Cloud Platform resource. `
+ # members` can have the following values: * `allUsers`: A special identifier
+ # that represents anyone who is on the internet; with or without a Google
+ # account. * `allAuthenticatedUsers`: A special identifier that represents
+ # anyone who is authenticated with a Google account or a service account. * `
+ # user:`emailid``: An email address that represents a specific Google 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
- # Role that is assigned to `members`.
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
+ # Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`
+ # , or `roles/owner`.
# Corresponds to the JSON property `role`
# @return [String]
attr_accessor :role
def initialize(**args)
@@ -306,17 +249,15 @@
# Update properties of this object
def update!(**args)
end
end
- # A generic empty message that you can re-use to avoid defining duplicated
- # empty messages in your APIs. A typical example is to use it as the request
- # or the response type of an API method. For instance:
- # service Foo `
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
- # `
- # The JSON representation for `Empty` is empty JSON object ````.
+ # A generic empty message that you can re-use to avoid defining duplicated empty
+ # messages in your APIs. A typical example is to use it as the request or the
+ # response type of an API method. For instance: service Foo ` rpc Bar(google.
+ # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for
+ # `Empty` is empty JSON object ````.
class Empty
include Google::Apis::Core::Hashable
def initialize(**args)
update!(**args)
@@ -338,56 +279,47 @@
# Update properties of this object
def update!(**args)
end
end
- # Represents a textual expression in the Common Expression Language (CEL)
- # syntax. CEL is a C-like expression language. The syntax and semantics of CEL
- # are documented at https://github.com/google/cel-spec.
- # Example (Comparison):
- # title: "Summary size limit"
- # description: "Determines if a summary is less than 100 chars"
- # expression: "document.summary.size() < 100"
- # Example (Equality):
- # title: "Requestor is owner"
- # description: "Determines if requestor is the document owner"
- # expression: "document.owner == request.auth.claims.email"
- # Example (Logic):
- # title: "Public documents"
- # description: "Determine whether the document should be publicly visible"
- # expression: "document.type != 'private' && document.type != 'internal'"
- # Example (Data Manipulation):
- # title: "Notification string"
- # description: "Create a notification string with a timestamp."
- # expression: "'New message received at ' + string(document.create_time)"
- # The exact variables and functions that may be referenced within an expression
- # are determined by the service that evaluates it. See the service
- # documentation for additional information.
+ # Represents a textual expression in the Common Expression Language (CEL) syntax.
+ # CEL is a C-like expression language. The syntax and semantics of CEL are
+ # documented at https://github.com/google/cel-spec. Example (Comparison): title:
+ # "Summary size limit" description: "Determines if a summary is less than 100
+ # chars" expression: "document.summary.size() < 100" Example (Equality): title: "
+ # Requestor is owner" description: "Determines if requestor is the document
+ # owner" expression: "document.owner == request.auth.claims.email" Example (
+ # Logic): title: "Public documents" description: "Determine whether the document
+ # should be publicly visible" expression: "document.type != 'private' &&
+ # document.type != 'internal'" Example (Data Manipulation): title: "Notification
+ # string" description: "Create a notification string with a timestamp."
+ # expression: "'New message received at ' + string(document.create_time)" The
+ # exact variables and functions that may be referenced within an expression are
+ # determined by the service that evaluates it. See the service documentation for
+ # additional information.
class Expr
include Google::Apis::Core::Hashable
- # Optional. Description of the expression. This is a longer text which
- # describes the expression, e.g. when hovered over it in a UI.
+ # Optional. Description of the expression. This is a longer text which describes
+ # the expression, e.g. when hovered over it in a UI.
# Corresponds to the JSON property `description`
# @return [String]
attr_accessor :description
- # Textual representation of an expression in Common Expression Language
- # syntax.
+ # Textual representation of an expression in Common Expression Language syntax.
# Corresponds to the JSON property `expression`
# @return [String]
attr_accessor :expression
- # Optional. String indicating the location of the expression for error
- # reporting, e.g. a file name and a position in the file.
+ # Optional. String indicating the location of the expression for error reporting,
+ # e.g. a file name and a position in the file.
# Corresponds to the JSON property `location`
# @return [String]
attr_accessor :location
- # Optional. Title for the expression, i.e. a short string describing
- # its purpose. This can be used e.g. in UIs which allow to enter the
- # expression.
+ # Optional. Title for the expression, i.e. a short string describing its purpose.
+ # This can be used e.g. in UIs which allow to enter the expression.
# Corresponds to the JSON property `title`
# @return [String]
attr_accessor :title
def initialize(**args)
@@ -441,12 +373,11 @@
# The total number of SecretVersions.
# Corresponds to the JSON property `totalSize`
# @return [Fixnum]
attr_accessor :total_size
- # The list of SecretVersions sorted in reverse by
- # create_time (newest first).
+ # The list of SecretVersions sorted in reverse by create_time (newest first).
# Corresponds to the JSON property `versions`
# @return [Array<Google::Apis::SecretmanagerV1::SecretVersion>]
attr_accessor :versions
def initialize(**args)
@@ -469,12 +400,11 @@
# ListSecretsRequest.page_token to retrieve the next page.
# Corresponds to the JSON property `nextPageToken`
# @return [String]
attr_accessor :next_page_token
- # The list of Secrets sorted in reverse by create_time (newest
- # first).
+ # The list of Secrets sorted in reverse by create_time (newest first).
# Corresponds to the JSON property `secrets`
# @return [Array<Google::Apis::SecretmanagerV1::Secret>]
attr_accessor :secrets
# The total number of Secrets.
@@ -496,18 +426,18 @@
# A resource that represents Google Cloud Platform location.
class Location
include Google::Apis::Core::Hashable
- # The friendly name for this location, typically a nearby city name.
- # For example, "Tokyo".
+ # The friendly name for this location, typically a nearby city name. For example,
+ # "Tokyo".
# Corresponds to the JSON property `displayName`
# @return [String]
attr_accessor :display_name
- # Cross-service attributes for the location. For example
- # `"cloud.googleapis.com/region": "us-east1"`
+ # Cross-service attributes for the location. For example `"cloud.googleapis.com/
+ # region": "us-east1"`
# Corresponds to the JSON property `labels`
# @return [Hash<String,String>]
attr_accessor :labels
# The canonical id for this location. For example: `"us-east1"`.
@@ -519,12 +449,12 @@
# location.
# Corresponds to the JSON property `metadata`
# @return [Hash<String,Object>]
attr_accessor :metadata
- # Resource name for the location, which may vary between implementations.
- # For example: `"projects/example-project/locations/us-east1"`
+ # Resource name for the location, which may vary between implementations. For
+ # example: `"projects/example-project/locations/us-east1"`
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
def initialize(**args)
@@ -540,120 +470,82 @@
@name = args[:name] if args.key?(:name)
end
end
# 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; each `role` can be an IAM predefined role or a user-created
- # custom role.
- # For some types of Google Cloud resources, a `binding` can also 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. To learn which
- # resources support conditions in their IAM policies, see the
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
- # policies).
- # **JSON example:**
- # `
- # "bindings": [
- # `
- # "role": "roles/resourcemanager.organizationAdmin",
- # "members": [
- # "user:mike@example.com",
- # "group:admins@example.com",
- # "domain:google.com",
- # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
- # ]
- # `,
- # `
- # "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')
- # ",
- # `
- # `
- # ],
- # "etag": "BwWWja0YfJA=",
- # "version": 3
- # `
- # **YAML example:**
- # bindings:
- # - members:
- # - user:mike@example.com
- # - group:admins@example.com
- # - domain:google.com
- # - serviceAccount:my-project-id@appspot.gserviceaccount.com
- # role: roles/resourcemanager.organizationAdmin
- # - members:
- # - user:eve@example.com
- # 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 documentation](https://cloud.google.com/iam/docs/).
+ # 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; each `role` can be an IAM predefined
+ # role or a user-created custom role. For some types of Google Cloud resources,
+ # a `binding` can also 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. To learn which resources support conditions in their IAM policies,
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
+ # appspot.gserviceaccount.com" ] `, ` "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')", `
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com 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 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::SecretmanagerV1::AuditConfig>]
attr_accessor :audit_configs
- # 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.
+ # 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::SecretmanagerV1::Binding>]
attr_accessor :bindings
- # `etag` is used for optimistic concurrency control as a way to help
- # prevent simultaneous updates of a policy from overwriting each other.
- # 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.
- # **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.
+ # `etag` is used for optimistic concurrency control as a way to help prevent
+ # simultaneous updates of a policy from overwriting each other. 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. **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 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.
- # To learn which resources support conditions in their IAM policies, see the
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
- # policies).
+ # Specifies the format of the policy. 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. To learn which resources support conditions in their
+ # IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/
+ # conditions/resource-policies).
# Corresponds to the JSON property `version`
# @return [Fixnum]
attr_accessor :version
def initialize(**args)
@@ -671,12 +563,11 @@
# Represents a Replica for this Secret.
class Replica
include Google::Apis::Core::Hashable
- # The canonical IDs of the location to replicate data.
- # For example: `"us-east1"`.
+ # The canonical IDs of the location to replicate data. For example: `"us-east1"`.
# Corresponds to the JSON property `location`
# @return [String]
attr_accessor :location
def initialize(**args)
@@ -697,12 +588,12 @@
# restrictions.
# Corresponds to the JSON property `automatic`
# @return [Google::Apis::SecretmanagerV1::Automatic]
attr_accessor :automatic
- # A replication policy that replicates the Secret payload into the
- # locations specified in Secret.replication.user_managed.replicas
+ # A replication policy that replicates the Secret payload into the locations
+ # specified in Secret.replication.user_managed.replicas
# Corresponds to the JSON property `userManaged`
# @return [Google::Apis::SecretmanagerV1::UserManaged]
attr_accessor :user_managed
def initialize(**args)
@@ -714,30 +605,27 @@
@automatic = args[:automatic] if args.key?(:automatic)
@user_managed = args[:user_managed] if args.key?(:user_managed)
end
end
- # A Secret is a logical secret whose value and versions can
- # be accessed.
- # A Secret is made up of zero or more SecretVersions that
- # represent the secret data.
+ # A Secret is a logical secret whose value and versions can be accessed. A
+ # Secret is made up of zero or more SecretVersions that represent the secret
+ # data.
class Secret
include Google::Apis::Core::Hashable
# Output only. The time at which the Secret was created.
# Corresponds to the JSON property `createTime`
# @return [String]
attr_accessor :create_time
- # The labels assigned to this Secret.
- # Label keys must be between 1 and 63 characters long, have a UTF-8 encoding
- # of maximum 128 bytes, and must conform to the following PCRE regular
- # expression: `\p`Ll`\p`Lo``0,62``
- # Label values must be between 0 and 63 characters long, have a UTF-8
- # encoding of maximum 128 bytes, and must conform to the following PCRE
- # regular expression: `[\p`Ll`\p`Lo`\p`N`_-]`0,63``
- # No more than 64 labels can be assigned to a given resource.
+ # The labels assigned to this Secret. Label keys must be between 1 and 63
+ # characters long, have a UTF-8 encoding of maximum 128 bytes, and must conform
+ # to the following PCRE regular expression: `\p`Ll`\p`Lo``0,62`` Label values
+ # must be between 0 and 63 characters long, have a UTF-8 encoding of maximum 128
+ # bytes, and must conform to the following PCRE regular expression: `[\p`Ll`\p`
+ # Lo`\p`N`_-]`0,63`` No more than 64 labels can be assigned to a given resource.
# Corresponds to the JSON property `labels`
# @return [Hash<String,String>]
attr_accessor :labels
# Output only. The resource name of the Secret in the format `projects/*/secrets/
@@ -792,21 +680,19 @@
# Output only. The time at which the SecretVersion was created.
# Corresponds to the JSON property `createTime`
# @return [String]
attr_accessor :create_time
- # Output only. The time this SecretVersion was destroyed.
- # Only present if state is
- # DESTROYED.
+ # Output only. The time this SecretVersion was destroyed. Only present if state
+ # is DESTROYED.
# Corresponds to the JSON property `destroyTime`
# @return [String]
attr_accessor :destroy_time
- # Output only. The resource name of the SecretVersion in the
- # format `projects/*/secrets/*/versions/*`.
- # SecretVersion IDs in a Secret start at 1 and
- # are incremented for each subsequent version of the secret.
+ # Output only. The resource name of the SecretVersion in the format `projects/*/
+ # secrets/*/versions/*`. SecretVersion IDs in a Secret start at 1 and are
+ # incremented for each subsequent version of the secret.
# Corresponds to the JSON property `name`
# @return [String]
attr_accessor :name
# Output only. The current state of the SecretVersion.
@@ -830,78 +716,43 @@
# Request message for `SetIamPolicy` method.
class SetIamPolicyRequest
include Google::Apis::Core::Hashable
# 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; each `role` can be an IAM predefined role or a user-created
- # custom role.
- # For some types of Google Cloud resources, a `binding` can also 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. To learn which
- # resources support conditions in their IAM policies, see the
- # [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-
- # policies).
- # **JSON example:**
- # `
- # "bindings": [
- # `
- # "role": "roles/resourcemanager.organizationAdmin",
- # "members": [
- # "user:mike@example.com",
- # "group:admins@example.com",
- # "domain:google.com",
- # "serviceAccount:my-project-id@appspot.gserviceaccount.com"
- # ]
- # `,
- # `
- # "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')
- # ",
- # `
- # `
- # ],
- # "etag": "BwWWja0YfJA=",
- # "version": 3
- # `
- # **YAML example:**
- # bindings:
- # - members:
- # - user:mike@example.com
- # - group:admins@example.com
- # - domain:google.com
- # - serviceAccount:my-project-id@appspot.gserviceaccount.com
- # role: roles/resourcemanager.organizationAdmin
- # - members:
- # - user:eve@example.com
- # 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 documentation](https://cloud.google.com/iam/docs/).
+ # 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; each `role` can be an IAM predefined
+ # role or a user-created custom role. For some types of Google Cloud resources,
+ # a `binding` can also 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. To learn which resources support conditions in their IAM policies,
+ # see the [IAM documentation](https://cloud.google.com/iam/help/conditions/
+ # resource-policies). **JSON example:** ` "bindings": [ ` "role": "roles/
+ # resourcemanager.organizationAdmin", "members": [ "user:mike@example.com", "
+ # group:admins@example.com", "domain:google.com", "serviceAccount:my-project-id@
+ # appspot.gserviceaccount.com" ] `, ` "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')", `
+ # ` ], "etag": "BwWWja0YfJA=", "version": 3 ` **YAML example:** bindings: -
+ # members: - user:mike@example.com - group:admins@example.com - domain:google.
+ # com - serviceAccount:my-project-id@appspot.gserviceaccount.com role: roles/
+ # resourcemanager.organizationAdmin - members: - user:eve@example.com 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 documentation](https://cloud.
+ # google.com/iam/docs/).
# Corresponds to the JSON property `policy`
# @return [Google::Apis::SecretmanagerV1::Policy]
attr_accessor :policy
# OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
- # the fields in the mask will be modified. If no mask is provided, the
- # following default mask is used:
- # `paths: "bindings, etag"`
+ # the fields in the mask will be modified. If no mask is provided, the following
+ # default mask is used: `paths: "bindings, etag"`
# Corresponds to the JSON property `updateMask`
# @return [String]
attr_accessor :update_mask
def initialize(**args)
@@ -917,14 +768,13 @@
# Request message for `TestIamPermissions` method.
class TestIamPermissionsRequest
include Google::Apis::Core::Hashable
- # The set of permissions to check for the `resource`. Permissions with
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
- # information see
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
+ # The set of permissions to check for the `resource`. Permissions with wildcards
+ # (such as '*' or 'storage.*') are not allowed. For more information see [IAM
+ # Overview](https://cloud.google.com/iam/docs/overview#permissions).
# Corresponds to the JSON property `permissions`
# @return [Array<String>]
attr_accessor :permissions
def initialize(**args)
@@ -939,12 +789,11 @@
# Response message for `TestIamPermissions` method.
class TestIamPermissionsResponse
include Google::Apis::Core::Hashable
- # A subset of `TestPermissionsRequest.permissions` that the caller is
- # allowed.
+ # A subset of `TestPermissionsRequest.permissions` that the caller is allowed.
# Corresponds to the JSON property `permissions`
# @return [Array<String>]
attr_accessor :permissions
def initialize(**args)
@@ -955,16 +804,15 @@
def update!(**args)
@permissions = args[:permissions] if args.key?(:permissions)
end
end
- # A replication policy that replicates the Secret payload into the
- # locations specified in Secret.replication.user_managed.replicas
+ # A replication policy that replicates the Secret payload into the locations
+ # specified in Secret.replication.user_managed.replicas
class UserManaged
include Google::Apis::Core::Hashable
- # Required. The list of Replicas for this Secret.
- # Cannot be empty.
+ # Required. The list of Replicas for this Secret. Cannot be empty.
# Corresponds to the JSON property `replicas`
# @return [Array<Google::Apis::SecretmanagerV1::Replica>]
attr_accessor :replicas
def initialize(**args)