mirror of
https://github.com/OMGeeky/google-apis-rs.git
synced 2026-01-06 19:45:20 +01:00
update all APIs
Like documented in the README ``` rm -f .api.deps .cli.deps && FETCH_APIS=1 make update-json -j8 ```
This commit is contained in:
@@ -12,7 +12,7 @@
|
||||
"baseUrl": "https://accesscontextmanager.googleapis.com/",
|
||||
"batchPath": "batch",
|
||||
"canonicalName": "Access Context Manager",
|
||||
"description": "An API for setting attribute based access control to requests to GCP services.",
|
||||
"description": "An API for setting attribute based access control to requests to Google Cloud services. *Warning:* Do not mix *v1alpha* and *v1* API usage in the same access policy. The v1alpha API supports new Access Context Manager features, which may have different attributes or behaviors that are not supported by v1. The practice of mixed API usage within a policy may result in the inability to update that policy, including any access levels or service perimeters belonging to it. It is not recommended to use both v1 and v1alpha for modifying policies with critical service perimeters. Modifications using v1alpha should be limited to policies with non-production/non-critical service perimeters.",
|
||||
"discoveryVersion": "v1",
|
||||
"documentationLink": "https://cloud.google.com/access-context-manager/docs/reference/rest/",
|
||||
"fullyEncodeReservedExpansion": true,
|
||||
@@ -568,7 +568,7 @@
|
||||
"authorizedOrgsDescs": {
|
||||
"methods": {
|
||||
"create": {
|
||||
"description": "Creates a authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.",
|
||||
"description": "Creates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. The name of this `AuthorizedOrgsDesc` will be assigned during creation.",
|
||||
"flatPath": "v1/accessPolicies/{accessPoliciesId}/authorizedOrgsDescs",
|
||||
"httpMethod": "POST",
|
||||
"id": "accesscontextmanager.accessPolicies.authorizedOrgsDescs.create",
|
||||
@@ -596,7 +596,7 @@
|
||||
]
|
||||
},
|
||||
"delete": {
|
||||
"description": "Deletes a authorized orgs desc based on the resource name. The long-running operation from this RPC has a successful status after the authorized orgs desc is removed from long-lasting storage.",
|
||||
"description": "Deletes an authorized orgs desc based on the resource name. The long-running operation from this RPC has a successful status after the authorized orgs desc is removed from long-lasting storage.",
|
||||
"flatPath": "v1/accessPolicies/{accessPoliciesId}/authorizedOrgsDescs/{authorizedOrgsDescsId}",
|
||||
"httpMethod": "DELETE",
|
||||
"id": "accesscontextmanager.accessPolicies.authorizedOrgsDescs.delete",
|
||||
@@ -621,7 +621,7 @@
|
||||
]
|
||||
},
|
||||
"get": {
|
||||
"description": "Gets a authorized orgs desc based on the resource name.",
|
||||
"description": "Gets an authorized orgs desc based on the resource name.",
|
||||
"flatPath": "v1/accessPolicies/{accessPoliciesId}/authorizedOrgsDescs/{authorizedOrgsDescsId}",
|
||||
"httpMethod": "GET",
|
||||
"id": "accesscontextmanager.accessPolicies.authorizedOrgsDescs.get",
|
||||
@@ -682,7 +682,7 @@
|
||||
]
|
||||
},
|
||||
"patch": {
|
||||
"description": "Updates a authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The name, authorization_type, asset_type and authorization_direction cannot be updated.",
|
||||
"description": "Updates an authorized orgs desc. The long-running operation from this RPC has a successful status after the authorized orgs desc propagates to long-lasting storage. If a authorized orgs desc contains errors, an error response is returned for the first error encountered. Only the organization list in `AuthorizedOrgsDesc` can be updated. The name, authorization_type, asset_type and authorization_direction cannot be updated.",
|
||||
"flatPath": "v1/accessPolicies/{accessPoliciesId}/authorizedOrgsDescs/{authorizedOrgsDescsId}",
|
||||
"httpMethod": "PATCH",
|
||||
"id": "accesscontextmanager.accessPolicies.authorizedOrgsDescs.patch",
|
||||
@@ -691,7 +691,7 @@
|
||||
],
|
||||
"parameters": {
|
||||
"name": {
|
||||
"description": "Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: \"accessPolicies/122256/authorizedOrgs/b3-BhcX_Ud5N\"",
|
||||
"description": "Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.",
|
||||
"location": "path",
|
||||
"pattern": "^accessPolicies/[^/]+/authorizedOrgsDescs/[^/]+$",
|
||||
"required": true,
|
||||
@@ -1036,7 +1036,7 @@
|
||||
]
|
||||
},
|
||||
"list": {
|
||||
"description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. NOTE: the `name` binding allows API services to override the binding to use different resource name schemes, such as `users/*/operations`. To override the binding, API services can add a binding such as `\"/v1/{name=users/*}/operations\"` to their service configuration. For backwards compatibility, the default name includes the operations collection id, however overriding users must ensure the name binding is the parent resource, without the operations collection id.",
|
||||
"description": "Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`.",
|
||||
"flatPath": "v1/operations",
|
||||
"httpMethod": "GET",
|
||||
"id": "accesscontextmanager.operations.list",
|
||||
@@ -1213,7 +1213,7 @@
|
||||
"type": "string"
|
||||
},
|
||||
"updateMask": {
|
||||
"description": "Required. Only the fields specified in this mask are updated. Because name and group_key cannot be changed, update_mask is required and must always be: update_mask { paths: \"access_levels\" }",
|
||||
"description": "Required. Only the fields specified in this mask are updated. Because name and group_key cannot be changed, update_mask is required and may only contain the following fields: `access_levels`, `dry_run_access_levels`. update_mask { paths: \"access_levels\" }",
|
||||
"format": "google-fieldmask",
|
||||
"location": "query",
|
||||
"type": "string"
|
||||
@@ -1233,9 +1233,64 @@
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"services": {
|
||||
"methods": {
|
||||
"get": {
|
||||
"description": "Returns a VPC-SC supported service based on the service name.",
|
||||
"flatPath": "v1/services/{name}",
|
||||
"httpMethod": "GET",
|
||||
"id": "accesscontextmanager.services.get",
|
||||
"parameterOrder": [
|
||||
"name"
|
||||
],
|
||||
"parameters": {
|
||||
"name": {
|
||||
"description": "The name of the service to get information about. The names must be in the same format as used in defining a service perimeter, for example, `storage.googleapis.com`.",
|
||||
"location": "path",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"path": "v1/services/{name}",
|
||||
"response": {
|
||||
"$ref": "SupportedService"
|
||||
},
|
||||
"scopes": [
|
||||
"https://www.googleapis.com/auth/cloud-platform"
|
||||
]
|
||||
},
|
||||
"list": {
|
||||
"description": "Lists all VPC-SC supported services.",
|
||||
"flatPath": "v1/services",
|
||||
"httpMethod": "GET",
|
||||
"id": "accesscontextmanager.services.list",
|
||||
"parameterOrder": [],
|
||||
"parameters": {
|
||||
"pageSize": {
|
||||
"description": "This flag specifies the maximum number of services to return per page. Default is 100.",
|
||||
"format": "int32",
|
||||
"location": "query",
|
||||
"type": "integer"
|
||||
},
|
||||
"pageToken": {
|
||||
"description": "Token to start on a later page. Default is the first page.",
|
||||
"location": "query",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"path": "v1/services",
|
||||
"response": {
|
||||
"$ref": "ListSupportedServicesResponse"
|
||||
},
|
||||
"scopes": [
|
||||
"https://www.googleapis.com/auth/cloud-platform"
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"revision": "20230123",
|
||||
"revision": "20240226",
|
||||
"rootUrl": "https://accesscontextmanager.googleapis.com/",
|
||||
"schemas": {
|
||||
"AccessContextManagerOperationMetadata": {
|
||||
@@ -1288,7 +1343,7 @@
|
||||
"type": "string"
|
||||
},
|
||||
"scopes": {
|
||||
"description": "The scopes of a policy define which resources an ACM policy can restrict, and where ACM resources can be referenced. For example, a policy with scopes=[\"folders/123\"] has the following behavior: - vpcsc perimeters can only restrict projects within folders/123 - access levels can only be referenced by resources within folders/123. If empty, there are no limitations on which resources can be restricted by an ACM policy, and there are no limitations on where ACM resources can be referenced. Only one policy can include a given scope (attempting to create a second policy which includes \"folders/123\" will result in an error). Currently, scopes cannot be modified after a policy is created. Currently, policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`",
|
||||
"description": "The scopes of the AccessPolicy. Scopes define which resources a policy can restrict and where its resources can be referenced. For example, policy A with `scopes=[\"folders/123\"]` has the following behavior: - ServicePerimeter can only restrict projects within `folders/123`. - ServicePerimeter within policy A can only reference access levels defined within policy A. - Only one policy can include a given scope; thus, attempting to create a second policy which includes `folders/123` will result in an error. If no scopes are provided, then any resource within the organization can be restricted. Scopes cannot be modified after a policy is created. Policies can only have a single scope. Format: list of `folders/{folder_number}` or `projects/{project_number}`",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -1368,11 +1423,11 @@
|
||||
"type": "object"
|
||||
},
|
||||
"AuthorizedOrgsDesc": {
|
||||
"description": "`AuthorizedOrgsDesc` is a resource that contains a list of organizations for a authorization type and asset type and its authorization direction.",
|
||||
"description": "`AuthorizedOrgsDesc` contains data for an organization's authorization policy.",
|
||||
"id": "AuthorizedOrgsDesc",
|
||||
"properties": {
|
||||
"assetType": {
|
||||
"description": "The asset type of this authorized orgs desc. e.g. device, credential strength.",
|
||||
"description": "The asset type of this authorized orgs desc. Valid values are `ASSET_TYPE_DEVICE`, and `ASSET_TYPE_CREDENTIAL_STRENGTH`.",
|
||||
"enum": [
|
||||
"ASSET_TYPE_UNSPECIFIED",
|
||||
"ASSET_TYPE_DEVICE",
|
||||
@@ -1381,12 +1436,12 @@
|
||||
"enumDescriptions": [
|
||||
"No asset type specified.",
|
||||
"Device asset type.",
|
||||
"credential strength asset type."
|
||||
"Credential strength asset type."
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"authorizationDirection": {
|
||||
"description": "Authorization direction of this authorization relationship. i.e. Whether to allow specified orgs to evaluate this org's traffic, or allow specified orgs' traffic to be evaluated by this org. Orgs specified as `AUTHORIZATION_DIRECTION_TO` in this AuthorizedOrgsDesc[com.google.identity.accesscontextmanager.v1.AuthorizedOrgsDesc] must also specify this org as the `AUTHORIZATION_DIRECTION_FROM` in their own AuthorizedOrgsDesc in order for this relationship to take effect. Orgs specified as `AUTHORIZATION_DIRECTION_FROM` in this AuthorizedOrgsDesc[com.google.identity.accesscontextmanager.v1.AuthorizedOrgsDesc] must also specify this org as the `AUTHORIZATION_DIRECTION_TO` in their own AuthorizedOrgsDesc in order for this relationship to take effect.",
|
||||
"description": "The direction of the authorization relationship between this organization and the organizations listed in the `orgs` field. The valid values for this field include the following: `AUTHORIZATION_DIRECTION_FROM`: Allows this organization to evaluate traffic in the organizations listed in the `orgs` field. `AUTHORIZATION_DIRECTION_TO`: Allows the organizations listed in the `orgs` field to evaluate the traffic in this organization. For the authorization relationship to take effect, all of the organizations must authorize and specify the appropriate relationship direction. For example, if organization A authorized organization B and C to evaluate its traffic, by specifying `AUTHORIZATION_DIRECTION_TO` as the authorization direction, organizations B and C must specify `AUTHORIZATION_DIRECTION_FROM` as the authorization direction in their `AuthorizedOrgsDesc` resource.",
|
||||
"enum": [
|
||||
"AUTHORIZATION_DIRECTION_UNSPECIFIED",
|
||||
"AUTHORIZATION_DIRECTION_TO",
|
||||
@@ -1394,13 +1449,13 @@
|
||||
],
|
||||
"enumDescriptions": [
|
||||
"No direction specified.",
|
||||
"Specified orgs will evaluate traffic.",
|
||||
"Specified orgs' traffic will be evaluated."
|
||||
"The specified organizations are authorized to evaluate traffic in this organization.",
|
||||
"The traffic of the specified organizations can be evaluated by this organization."
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"authorizationType": {
|
||||
"description": "The authorization type of this authorized orgs desc. e.g.authorization, troubleshooting or logging.",
|
||||
"description": "A granular control type for authorization levels. Valid value is `AUTHORIZATION_TYPE_TRUST`.",
|
||||
"enum": [
|
||||
"AUTHORIZATION_TYPE_UNSPECIFIED",
|
||||
"AUTHORIZATION_TYPE_TRUST"
|
||||
@@ -1412,11 +1467,11 @@
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"description": "Assigned by the server during creation. The last segment has an arbitrary length and has only URI unreserved characters (as defined by [RFC 3986 Section 2.3](https://tools.ietf.org/html/rfc3986#section-2.3)). Should not be specified by the client during creation. Example: \"accessPolicies/122256/authorizedOrgs/b3-BhcX_Ud5N\"",
|
||||
"description": "Resource name for the `AuthorizedOrgsDesc`. Format: `accessPolicies/{access_policy}/authorizedOrgsDescs/{authorized_orgs_desc}`. The `authorized_orgs_desc` component must begin with a letter, followed by alphanumeric characters or `_`. After you create an `AuthorizedOrgsDesc`, you cannot change its `name`.",
|
||||
"type": "string"
|
||||
},
|
||||
"orgs": {
|
||||
"description": "The list of organization ids in this AuthorizedOrgsDesc.",
|
||||
"description": "The list of organization ids in this AuthorizedOrgsDesc. Format: `organizations/` Example: `organizations/123456`",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -1460,14 +1515,14 @@
|
||||
"description": "The condition that is associated with this binding. If the condition evaluates to `true`, then this binding applies to the current request. If the condition evaluates to `false`, then this binding does not apply to the current request. However, a different role binding might grant the same role to one or more of the principals in this binding. To learn which resources support conditions in their IAM policies, see the [IAM documentation](https://cloud.google.com/iam/help/conditions/resource-policies)."
|
||||
},
|
||||
"members": {
|
||||
"description": "Specifies the principals requesting access for a Google Cloud 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. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `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`. ",
|
||||
"description": "Specifies the principals requesting access for a Google Cloud 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. Does not include identities that come from external identity providers (IdPs) through identity federation. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@example.com` . * `serviceAccount:{emailid}`: An email address that represents a Google service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An identifier for a [Kubernetes service account](https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: The G Suite domain (primary) that represents all the users of that domain. For example, `google.com` or `example.com`. * `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workforce identity pool. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/group/{group_id}`: All workforce identities in a group. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All workforce identities with a specific attribute value. * `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/*`: All identities in a workforce identity pool. * `principal://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single identity in a workload identity pool. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool group. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value}`: All identities in a workload identity pool with a certain attribute. * `principalSet://iam.googleapis.com/projects/{project_number}/locations/global/workloadIdentityPools/{pool_id}/*`: All identities in a workload identity pool. * `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. * `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/subject/{subject_attribute_value}`: Deleted single identity in a workforce identity pool. For example, `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-pool-id/subject/my-subject-attribute-value`.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"role": {
|
||||
"description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`.",
|
||||
"description": "Role that is assigned to the list of `members`, or principals. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview of the IAM roles and permissions, see the [IAM documentation](https://cloud.google.com/iam/docs/roles-overview). For a list of the available pre-defined roles, see [here](https://cloud.google.com/iam/docs/understanding-roles).",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
@@ -1527,7 +1582,7 @@
|
||||
"type": "array"
|
||||
},
|
||||
"negate": {
|
||||
"description": "Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields, each field must be false for the Condition overall to be satisfied. Defaults to false.",
|
||||
"description": "Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields. Any non-empty field criteria evaluating to false will result in the Condition to be satisfied. Defaults to false.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"regions": {
|
||||
@@ -1543,6 +1598,13 @@
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"vpcNetworkSources": {
|
||||
"description": "The request must originate from one of the provided VPC networks in Google Cloud. Cannot specify this field together with `ip_subnetworks`.",
|
||||
"items": {
|
||||
"$ref": "VpcNetworkSource"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
@@ -1627,7 +1689,7 @@
|
||||
"id": "EgressFrom",
|
||||
"properties": {
|
||||
"identities": {
|
||||
"description": "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.",
|
||||
"description": "A list of identities that are allowed access through this [EgressPolicy], in the format of `user:{email_id}` or `serviceAccount:{email_id}`.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -1648,6 +1710,27 @@
|
||||
"Authorize access from all service accounts outside the perimeter."
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"sourceRestriction": {
|
||||
"description": "Whether to enforce traffic restrictions based on `sources` field. If the `sources` fields is non-empty, then this field must be set to `SOURCE_RESTRICTION_ENABLED`.",
|
||||
"enum": [
|
||||
"SOURCE_RESTRICTION_UNSPECIFIED",
|
||||
"SOURCE_RESTRICTION_ENABLED",
|
||||
"SOURCE_RESTRICTION_DISABLED"
|
||||
],
|
||||
"enumDescriptions": [
|
||||
"Enforcement preference unspecified, will not enforce traffic restrictions based on `sources` in EgressFrom.",
|
||||
"Enforcement preference enabled, traffic restrictions will be enforced based on `sources` in EgressFrom.",
|
||||
"Enforcement preference disabled, will not enforce traffic restrictions based on `sources` in EgressFrom."
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"sources": {
|
||||
"description": "Sources that this EgressPolicy authorizes access from. If this field is not empty, then `source_restriction` must be set to `SOURCE_RESTRICTION_ENABLED`.",
|
||||
"items": {
|
||||
"$ref": "EgressSource"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
@@ -1667,6 +1750,17 @@
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"EgressSource": {
|
||||
"description": "The source that EgressPolicy authorizes access from inside the ServicePerimeter to somewhere outside the ServicePerimeter boundaries.",
|
||||
"id": "EgressSource",
|
||||
"properties": {
|
||||
"accessLevel": {
|
||||
"description": "An AccessLevel resource name that allows protected resources inside the ServicePerimeters to access outside the ServicePerimeter boundaries. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel will cause an error. If an AccessLevel name is not specified, only resources within the perimeter can be accessed through Google Cloud calls with request origins within the perimeter. Example: `accessPolicies/MY_POLICY/accessLevels/MY_LEVEL`. If a single `*` is specified for `access_level`, then all EgressSources will be allowed.",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"EgressTo": {
|
||||
"description": "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 also protected by a ServicePerimeter, then that ServicePerimeter must have an IngressPolicy which allows access in order for this request to succeed. The request must match `operations` AND `resources` fields in order to be allowed egress out of the perimeter.",
|
||||
"id": "EgressTo",
|
||||
@@ -1729,7 +1823,14 @@
|
||||
"id": "GcpUserAccessBinding",
|
||||
"properties": {
|
||||
"accessLevels": {
|
||||
"description": "Required. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: \"accessPolicies/9522/accessLevels/device_trusted\"",
|
||||
"description": "Optional. Access level that a user must have to be granted access. Only one access level is supported, not multiple. This repeated field must have exactly one element. Example: \"accessPolicies/9522/accessLevels/device_trusted\"",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"dryRunAccessLevels": {
|
||||
"description": "Optional. Dry run access level that will be evaluated but will not be enforced. The access denial based on dry run policy will be logged. Only one access level is supported, not multiple. This list must have exactly one element. Example: \"accessPolicies/9522/accessLevels/device_trusted\"",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -1747,7 +1848,7 @@
|
||||
"type": "object"
|
||||
},
|
||||
"GcpUserAccessBindingOperationMetadata": {
|
||||
"description": "Currently, a completed operation means nothing. In the future, this metadata and a completed operation may indicate that the binding has taken effect and is affecting access decisions for all users.",
|
||||
"description": "Metadata of GCP Access Binding Long Running Operations.",
|
||||
"id": "GcpUserAccessBindingOperationMetadata",
|
||||
"properties": {},
|
||||
"type": "object"
|
||||
@@ -1780,7 +1881,7 @@
|
||||
"id": "IngressFrom",
|
||||
"properties": {
|
||||
"identities": {
|
||||
"description": "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.",
|
||||
"description": "A list of identities that are allowed access through this ingress policy, in the format of `user:{email_id}` or `serviceAccount:{email_id}`.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -1836,7 +1937,7 @@
|
||||
"type": "string"
|
||||
},
|
||||
"resource": {
|
||||
"description": "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 and VPCs are allowed. Project format: `projects/{project_number}` VPC format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`. 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.",
|
||||
"description": "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 and VPCs are allowed. Project format: `projects/{project_number}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`. 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.",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
@@ -1904,7 +2005,7 @@
|
||||
"id": "ListAuthorizedOrgsDescsResponse",
|
||||
"properties": {
|
||||
"authorizedOrgsDescs": {
|
||||
"description": "List of the Authorized Orgs Desc instances.",
|
||||
"description": "List of all the Authorized Orgs Desc instances.",
|
||||
"items": {
|
||||
"$ref": "AuthorizedOrgsDesc"
|
||||
},
|
||||
@@ -1971,16 +2072,34 @@
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"ListSupportedServicesResponse": {
|
||||
"description": "A response to `ListSupportedServicesRequest`.",
|
||||
"id": "ListSupportedServicesResponse",
|
||||
"properties": {
|
||||
"nextPageToken": {
|
||||
"description": "The pagination token to retrieve the next page of results. If the value is empty, no further results remain.",
|
||||
"type": "string"
|
||||
},
|
||||
"supportedServices": {
|
||||
"description": "List of services supported by VPC Service Controls instances.",
|
||||
"items": {
|
||||
"$ref": "SupportedService"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"MethodSelector": {
|
||||
"description": "An allowed method or permission of a service specified in ApiOperation.",
|
||||
"id": "MethodSelector",
|
||||
"properties": {
|
||||
"method": {
|
||||
"description": "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.",
|
||||
"description": "A valid method name for the corresponding `service_name` in ApiOperation. If `*` is used as the value for the `method`, then ALL methods and permissions are allowed.",
|
||||
"type": "string"
|
||||
},
|
||||
"permission": {
|
||||
"description": "Value for `permission` should be a valid Cloud IAM permission for the corresponding `service_name` in ApiOperation.",
|
||||
"description": "A valid Cloud IAM permission for the corresponding `service_name` in ApiOperation.",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
@@ -2015,7 +2134,7 @@
|
||||
"description": "Properties of the object. Contains field @type with type URL.",
|
||||
"type": "any"
|
||||
},
|
||||
"description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
|
||||
"description": "The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.",
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
@@ -2059,7 +2178,7 @@
|
||||
"type": "object"
|
||||
},
|
||||
"Policy": {
|
||||
"description": "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`, or principals, to a single `role`. Principals 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/).",
|
||||
"description": "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`, or principals, to a single `role`. Principals 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/).",
|
||||
"id": "Policy",
|
||||
"properties": {
|
||||
"auditConfigs": {
|
||||
@@ -2154,7 +2273,7 @@
|
||||
"type": "object"
|
||||
},
|
||||
"ServicePerimeter": {
|
||||
"description": "`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.",
|
||||
"description": "`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 or VPC network 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.",
|
||||
"id": "ServicePerimeter",
|
||||
"properties": {
|
||||
"description": {
|
||||
@@ -2166,7 +2285,7 @@
|
||||
"type": "string"
|
||||
},
|
||||
"perimeterType": {
|
||||
"description": "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.",
|
||||
"description": "Perimeter type indicator. A single project or VPC network 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.",
|
||||
"enum": [
|
||||
"PERIMETER_TYPE_REGULAR",
|
||||
"PERIMETER_TYPE_BRIDGE"
|
||||
@@ -2222,7 +2341,7 @@
|
||||
"type": "array"
|
||||
},
|
||||
"resources": {
|
||||
"description": "A list of Google Cloud resources that are inside of the service perimeter. Currently only projects and VPCs are allowed. Project format: `projects/{project_number}` VPC format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.",
|
||||
"description": "A list of Google Cloud resources that are inside of the service perimeter. Currently only projects and VPCs are allowed. Project format: `projects/{project_number}` VPC network format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NAME}`.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
@@ -2285,6 +2404,60 @@
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"SupportedService": {
|
||||
"description": "`SupportedService` specifies the VPC Service Controls and its properties.",
|
||||
"id": "SupportedService",
|
||||
"properties": {
|
||||
"availableOnRestrictedVip": {
|
||||
"description": "True if the service is available on the restricted VIP. Services on the restricted VIP typically either support VPC Service Controls or are core infrastructure services required for the functioning of Google Cloud.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"knownLimitations": {
|
||||
"description": "True if the service is supported with some limitations. Check [documentation](https://cloud.google.com/vpc-service-controls/docs/supported-products) for details.",
|
||||
"type": "boolean"
|
||||
},
|
||||
"name": {
|
||||
"description": "The service name or address of the supported service, such as `service.googleapis.com`.",
|
||||
"type": "string"
|
||||
},
|
||||
"supportStage": {
|
||||
"description": "The support stage of the service.",
|
||||
"enum": [
|
||||
"LAUNCH_STAGE_UNSPECIFIED",
|
||||
"UNIMPLEMENTED",
|
||||
"PRELAUNCH",
|
||||
"EARLY_ACCESS",
|
||||
"ALPHA",
|
||||
"BETA",
|
||||
"GA",
|
||||
"DEPRECATED"
|
||||
],
|
||||
"enumDescriptions": [
|
||||
"Do not use this default value.",
|
||||
"The feature is not yet implemented. Users can not use it.",
|
||||
"Prelaunch features are hidden from users and are only visible internally.",
|
||||
"Early Access features are limited to a closed group of testers. To use these features, you must sign up in advance and sign a Trusted Tester agreement (which includes confidentiality provisions). These features may be unstable, changed in backward-incompatible ways, and are not guaranteed to be released.",
|
||||
"Alpha is a limited availability test for releases before they are cleared for widespread use. By Alpha, all significant design issues are resolved and we are in the process of verifying functionality. Alpha customers need to apply for access, agree to applicable terms, and have their projects allowlisted. Alpha releases don't have to be feature complete, no SLAs are provided, and there are no technical support obligations, but they will be far enough along that customers can actually use them in test environments or for limited-use tests -- just like they would in normal production cases.",
|
||||
"Beta is the point at which we are ready to open a release for any customer to use. There are no SLA or technical support obligations in a Beta release. Products will be complete from a feature perspective, but may have some open outstanding issues. Beta releases are suitable for limited production use cases.",
|
||||
"GA features are open to all developers and are considered stable and fully qualified for production use.",
|
||||
"Deprecated features are scheduled to be shut down and removed. For more information, see the \"Deprecation Policy\" section of our [Terms of Service](https://cloud.google.com/terms/) and the [Google Cloud Platform Subject to the Deprecation Policy](https://cloud.google.com/terms/deprecation) documentation."
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"supportedMethods": {
|
||||
"description": "The list of the supported methods. This field exists only in response to GetSupportedService",
|
||||
"items": {
|
||||
"$ref": "MethodSelector"
|
||||
},
|
||||
"type": "array"
|
||||
},
|
||||
"title": {
|
||||
"description": "The name of the supported product, such as 'Cloud Product API'.",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"TestIamPermissionsRequest": {
|
||||
"description": "Request message for `TestIamPermissions` method.",
|
||||
"id": "TestIamPermissionsRequest",
|
||||
@@ -2330,6 +2503,35 @@
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"VpcNetworkSource": {
|
||||
"description": "The originating network source in Google Cloud.",
|
||||
"id": "VpcNetworkSource",
|
||||
"properties": {
|
||||
"vpcSubnetwork": {
|
||||
"$ref": "VpcSubNetwork",
|
||||
"description": "Sub-segment ranges of a VPC network."
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"VpcSubNetwork": {
|
||||
"description": "Sub-segment ranges inside of a VPC Network.",
|
||||
"id": "VpcSubNetwork",
|
||||
"properties": {
|
||||
"network": {
|
||||
"description": "Required. Network name. If the network is not part of the organization, the `compute.network.get` permission must be granted to the caller. Format: `//compute.googleapis.com/projects/{PROJECT_ID}/global/networks/{NETWORK_NAME}` Example: `//compute.googleapis.com/projects/my-project/global/networks/network-1`",
|
||||
"type": "string"
|
||||
},
|
||||
"vpcIpSubnetworks": {
|
||||
"description": "CIDR block IP subnetwork specification. The IP address must be an IPv4 address and can be a public or private IP address. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, \"192.0.2.0/24\" is accepted but \"192.0.2.1/24\" is not. If empty, all IP addresses are allowed.",
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"servicePath": "",
|
||||
|
||||
Reference in New Issue
Block a user