Package cloud.google.com/go/iam/apiv2/iampb (v1.5.3)

Constants

Policies_ListPolicies_FullMethodName, Policies_GetPolicy_FullMethodName, Policies_CreatePolicy_FullMethodName, Policies_UpdatePolicy_FullMethodName, Policies_DeletePolicy_FullMethodName

  const 
  
 ( 
  
 Policies_ListPolicies_FullMethodName 
  
 = 
  
 "/google.iam.v2.Policies/ListPolicies" 
  
 Policies_GetPolicy_FullMethodName 
  
 = 
  
 "/google.iam.v2.Policies/GetPolicy" 
  
 Policies_CreatePolicy_FullMethodName 
  
 = 
  
 "/google.iam.v2.Policies/CreatePolicy" 
  
 Policies_UpdatePolicy_FullMethodName 
  
 = 
  
 "/google.iam.v2.Policies/UpdatePolicy" 
  
 Policies_DeletePolicy_FullMethodName 
  
 = 
  
 "/google.iam.v2.Policies/DeletePolicy" 
 ) 
 

Variables

File_google_iam_v2_deny_proto

  var 
  
 File_google_iam_v2_deny_proto 
  
  protoreflect 
 
 . 
  FileDescriptor 
 
 

File_google_iam_v2_policy_proto

  var 
  
 File_google_iam_v2_policy_proto 
  
  protoreflect 
 
 . 
  FileDescriptor 
 
 

Policies_ServiceDesc

  var 
  
 Policies_ServiceDesc 
  
 = 
  
  grpc 
 
 . 
  ServiceDesc 
 
 { 
  
 ServiceName 
 : 
  
 "google.iam.v2.Policies" 
 , 
  
 HandlerType 
 : 
  
 ( 
 * 
  PoliciesServer 
 
 )( 
  nil 
 
 ), 
  
 Methods 
 : 
  
 [] 
  grpc 
 
 . 
  MethodDesc 
 
 { 
  
 { 
  
 MethodName 
 : 
  
 "ListPolicies" 
 , 
  
 Handler 
 : 
  
 _Policies_ListPolicies_Handler 
 , 
  
 }, 
  
 { 
  
 MethodName 
 : 
  
 "GetPolicy" 
 , 
  
 Handler 
 : 
  
 _Policies_GetPolicy_Handler 
 , 
  
 }, 
  
 { 
  
 MethodName 
 : 
  
 "CreatePolicy" 
 , 
  
 Handler 
 : 
  
 _Policies_CreatePolicy_Handler 
 , 
  
 }, 
  
 { 
  
 MethodName 
 : 
  
 "UpdatePolicy" 
 , 
  
 Handler 
 : 
  
 _Policies_UpdatePolicy_Handler 
 , 
  
 }, 
  
 { 
  
 MethodName 
 : 
  
 "DeletePolicy" 
 , 
  
 Handler 
 : 
  
 _Policies_DeletePolicy_Handler 
 , 
  
 }, 
  
 }, 
  
 Streams 
 : 
  
 [] 
  grpc 
 
 . 
  StreamDesc 
 
 {}, 
  
 Metadata 
 : 
  
 "google/iam/v2/policy.proto" 
 , 
 } 
 

Policies_ServiceDesc is the grpc.ServiceDesc for Policies service. It's only intended for direct use with grpc.RegisterService, and not to be introspected or modified (even as a copy)

Functions

func RegisterPoliciesServer

  func 
  
 RegisterPoliciesServer 
 ( 
 s 
  
  grpc 
 
 . 
  ServiceRegistrar 
 
 , 
  
 srv 
  
  PoliciesServer 
 
 ) 
 

CreatePolicyRequest

  type 
  
 CreatePolicyRequest 
  
 struct 
  
 { 
  
 // Required. The resource that the policy is attached to, along with the kind of policy 
  
 // to create. Format: `policies/{attachment_point}/denypolicies` 
  
 // 
  
 // The attachment point is identified by its URL-encoded full resource name, 
  
 // which means that the forward-slash character, `/`, must be written as 
  
 // `%2F`. For example, 
  
 // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies`. 
  
 // 
  
 // For organizations and folders, use the numeric ID in the full resource 
  
 // name. For projects, you can use the alphanumeric or the numeric ID. 
  
 Parent 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 
  
 // Required. The policy to create. 
  
 Policy 
  
 * 
  Policy 
 
  
 `protobuf:"bytes,2,opt,name=policy,proto3" json:"policy,omitempty"` 
  
 // The ID to use for this policy, which will become the final component of 
  
 // the policy's resource name. The ID must contain 3 to 63 characters. It can 
  
 // contain lowercase letters and numbers, as well as dashes (`-`) and periods 
  
 // (`.`). The first character must be a lowercase letter. 
  
 PolicyId 
  
  string 
 
  
 `protobuf:"bytes,3,opt,name=policy_id,json=policyId,proto3" json:"policy_id,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Request message for CreatePolicy .

func (*CreatePolicyRequest) Descriptor

  func 
  
 ( 
 * 
  CreatePolicyRequest 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use CreatePolicyRequest.ProtoReflect.Descriptor instead.

func (*CreatePolicyRequest) GetParent

  func 
  
 ( 
 x 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 GetParent 
 () 
  
  string 
 
 

func (*CreatePolicyRequest) GetPolicy

  func 
  
 ( 
 x 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 GetPolicy 
 () 
  
 * 
  Policy 
 
 

func (*CreatePolicyRequest) GetPolicyId

  func 
  
 ( 
 x 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 GetPolicyId 
 () 
  
  string 
 
 

func (*CreatePolicyRequest) ProtoMessage

  func 
  
 ( 
 * 
  CreatePolicyRequest 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*CreatePolicyRequest) ProtoReflect

func (*CreatePolicyRequest) Reset

  func 
  
 ( 
 x 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 Reset 
 () 
 

func (*CreatePolicyRequest) String

  func 
  
 ( 
 x 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 String 
 () 
  
  string 
 
 

DeletePolicyRequest

  type 
  
 DeletePolicyRequest 
  
 struct 
  
 { 
  
 // Required. The resource name of the policy to delete. Format: 
  
 // `policies/{attachment_point}/denypolicies/{policy_id}` 
  
 // 
  
 // Use the URL-encoded full resource name, which means that the forward-slash 
  
 // character, `/`, must be written as `%2F`. For example, 
  
 // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-policy`. 
  
 // 
  
 // For organizations and folders, use the numeric ID in the full resource 
  
 // name. For projects, you can use the alphanumeric or the numeric ID. 
  
 Name 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 
  
 // Optional. The expected `etag` of the policy to delete. If the value does not match 
  
 // the value that is stored in IAM, the request fails with a `409` error code 
  
 // and `ABORTED` status. 
  
 // 
  
 // If you omit this field, the policy is deleted regardless of its current 
  
 // `etag`. 
  
 Etag 
  
  string 
 
  
 `protobuf:"bytes,2,opt,name=etag,proto3" json:"etag,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Request message for DeletePolicy .

func (*DeletePolicyRequest) Descriptor

  func 
  
 ( 
 * 
  DeletePolicyRequest 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use DeletePolicyRequest.ProtoReflect.Descriptor instead.

func (*DeletePolicyRequest) GetEtag

  func 
  
 ( 
 x 
  
 * 
  DeletePolicyRequest 
 
 ) 
  
 GetEtag 
 () 
  
  string 
 
 

func (*DeletePolicyRequest) GetName

  func 
  
 ( 
 x 
  
 * 
  DeletePolicyRequest 
 
 ) 
  
 GetName 
 () 
  
  string 
 
 

func (*DeletePolicyRequest) ProtoMessage

  func 
  
 ( 
 * 
  DeletePolicyRequest 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*DeletePolicyRequest) ProtoReflect

func (*DeletePolicyRequest) Reset

  func 
  
 ( 
 x 
  
 * 
  DeletePolicyRequest 
 
 ) 
  
 Reset 
 () 
 

func (*DeletePolicyRequest) String

  func 
  
 ( 
 x 
  
 * 
  DeletePolicyRequest 
 
 ) 
  
 String 
 () 
  
  string 
 
 

DenyRule

  type 
  
 DenyRule 
  
 struct 
  
 { 
  
 // The identities that are prevented from using one or more permissions on 
  
 // Google Cloud resources. This field can contain the following values: 
  
 // 
  
 //   - `principalSet://goog/public:all`: A special identifier that represents 
  
 //     any principal that is on the internet, even if they do not have a Google 
  
 //     Account or are not logged in. 
  
 // 
  
 //   - `principal://goog/subject/{email_id}`: A specific Google Account. 
  
 //     Includes Gmail, Cloud Identity, and Google Workspace user accounts. For 
  
 //     example, `principal://goog/subject/alice@example.com`. 
  
 // 
  
 //   - `deleted:principal://goog/subject/{email_id}?uid={uid}`: A specific 
  
 //     Google Account that was deleted recently. For example, 
  
 //     `deleted:principal://goog/subject/alice@example.com?uid=1234567890`. If 
  
 //     the Google Account is recovered, this identifier reverts to the standard 
  
 //     identifier for a Google Account. 
  
 // 
  
 //   - `principalSet://goog/group/{group_id}`: A Google group. For example, 
  
 //     `principalSet://goog/group/admins@example.com`. 
  
 // 
  
 //   - `deleted:principalSet://goog/group/{group_id}?uid={uid}`: A Google group 
  
 //     that was deleted recently. For example, 
  
 //     `deleted:principalSet://goog/group/admins@example.com?uid=1234567890`. If 
  
 //     the Google group is restored, this identifier reverts to the standard 
  
 //     identifier for a Google group. 
  
 // 
  
 //   - `principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}`: 
  
 //     A Google Cloud service account. For example, 
  
 //     `principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com`. 
  
 // 
  
 //   - `deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/{service_account_id}?uid={uid}`: 
  
 //     A Google Cloud service account that was deleted recently. For example, 
  
 //     `deleted:principal://iam.googleapis.com/projects/-/serviceAccounts/my-service-account@iam.gserviceaccount.com?uid=1234567890`. 
  
 //     If the service account is undeleted, this identifier reverts to the 
  
 //     standard identifier for a service account. 
  
 // 
  
 //   - `principalSet://goog/cloudIdentityCustomerId/{customer_id}`: All of the 
  
 //     principals associated with the specified Google Workspace or Cloud 
  
 //     Identity customer ID. For example, 
  
 //     `principalSet://goog/cloudIdentityCustomerId/C01Abc35`. 
  
 DeniedPrincipals 
  
 [] 
  string 
 
  
 `protobuf:"bytes,1,rep,name=denied_principals,json=deniedPrincipals,proto3" json:"denied_principals,omitempty"` 
  
 // The identities that are excluded from the deny rule, even if they are 
  
 // listed in the `denied_principals`. For example, you could add a Google 
  
 // group to the `denied_principals`, then exclude specific users who belong to 
  
 // that group. 
  
 // 
  
 // This field can contain the same values as the `denied_principals` field, 
  
 // excluding `principalSet://goog/public:all`, which represents all users on 
  
 // the internet. 
  
 ExceptionPrincipals 
  
 [] 
  string 
 
  
 `protobuf:"bytes,2,rep,name=exception_principals,json=exceptionPrincipals,proto3" json:"exception_principals,omitempty"` 
  
 // The permissions that are explicitly denied by this rule. Each permission 
  
 // uses the format `{service_fqdn}/{resource}.{verb}`, where `{service_fqdn}` 
  
 // is the fully qualified domain name for the service. For example, 
  
 // `iam.googleapis.com/roles.list`. 
  
 DeniedPermissions 
  
 [] 
  string 
 
  
 `protobuf:"bytes,3,rep,name=denied_permissions,json=deniedPermissions,proto3" json:"denied_permissions,omitempty"` 
  
 // Specifies the permissions that this rule excludes from the set of denied 
  
 // permissions given by `denied_permissions`. If a permission appears in 
  
 // `denied_permissions` _and_ in `exception_permissions` then it will _not_ be 
  
 // denied. 
  
 // 
  
 // The excluded permissions can be specified using the same syntax as 
  
 // `denied_permissions`. 
  
 ExceptionPermissions 
  
 [] 
  string 
 
  
 `protobuf:"bytes,4,rep,name=exception_permissions,json=exceptionPermissions,proto3" json:"exception_permissions,omitempty"` 
  
 // The condition that determines whether this deny rule applies to a request. 
  
 // If the condition expression evaluates to `true`, then the deny rule is 
  
 // applied; otherwise, the deny rule is not applied. 
  
 // 
  
 // Each deny rule is evaluated independently. If this deny rule does not apply 
  
 // to a request, other deny rules might still apply. 
  
 // 
  
 // The condition can use CEL functions that evaluate 
  
 // [resource 
  
 // tags](https://cloud.google.com/iam/help/conditions/resource-tags). Other 
  
 // functions and operators are not supported. 
  
 DenialCondition 
  
 * 
  expr 
 
 . 
  Expr 
 
  
 `protobuf:"bytes,5,opt,name=denial_condition,json=denialCondition,proto3" json:"denial_condition,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

A deny rule in an IAM deny policy.

func (*DenyRule) Descriptor

  func 
  
 ( 
 * 
  DenyRule 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use DenyRule.ProtoReflect.Descriptor instead.

func (*DenyRule) GetDenialCondition

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 GetDenialCondition 
 () 
  
 * 
  expr 
 
 . 
  Expr 
 
 

func (*DenyRule) GetDeniedPermissions

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 GetDeniedPermissions 
 () 
  
 [] 
  string 
 
 

func (*DenyRule) GetDeniedPrincipals

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 GetDeniedPrincipals 
 () 
  
 [] 
  string 
 
 

func (*DenyRule) GetExceptionPermissions

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 GetExceptionPermissions 
 () 
  
 [] 
  string 
 
 

func (*DenyRule) GetExceptionPrincipals

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 GetExceptionPrincipals 
 () 
  
 [] 
  string 
 
 

func (*DenyRule) ProtoMessage

  func 
  
 ( 
 * 
  DenyRule 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*DenyRule) ProtoReflect

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 ProtoReflect 
 () 
  
  protoreflect 
 
 . 
  Message 
 
 

func (*DenyRule) Reset

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 Reset 
 () 
 

func (*DenyRule) String

  func 
  
 ( 
 x 
  
 * 
  DenyRule 
 
 ) 
  
 String 
 () 
  
  string 
 
 

GetPolicyRequest

  type 
  
 GetPolicyRequest 
  
 struct 
  
 { 
  
 // Required. The resource name of the policy to retrieve. Format: 
  
 // `policies/{attachment_point}/denypolicies/{policy_id}` 
  
 // 
  
 // Use the URL-encoded full resource name, which means that the forward-slash 
  
 // character, `/`, must be written as `%2F`. For example, 
  
 // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-policy`. 
  
 // 
  
 // For organizations and folders, use the numeric ID in the full resource 
  
 // name. For projects, you can use the alphanumeric or the numeric ID. 
  
 Name 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Request message for GetPolicy .

func (*GetPolicyRequest) Descriptor

  func 
  
 ( 
 * 
  GetPolicyRequest 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use GetPolicyRequest.ProtoReflect.Descriptor instead.

func (*GetPolicyRequest) GetName

  func 
  
 ( 
 x 
  
 * 
  GetPolicyRequest 
 
 ) 
  
 GetName 
 () 
  
  string 
 
 

func (*GetPolicyRequest) ProtoMessage

  func 
  
 ( 
 * 
  GetPolicyRequest 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*GetPolicyRequest) ProtoReflect

  func 
  
 ( 
 x 
  
 * 
  GetPolicyRequest 
 
 ) 
  
 ProtoReflect 
 () 
  
  protoreflect 
 
 . 
  Message 
 
 

func (*GetPolicyRequest) Reset

  func 
  
 ( 
 x 
  
 * 
  GetPolicyRequest 
 
 ) 
  
 Reset 
 () 
 

func (*GetPolicyRequest) String

  func 
  
 ( 
 x 
  
 * 
  GetPolicyRequest 
 
 ) 
  
 String 
 () 
  
  string 
 
 

ListPoliciesRequest

  type 
  
 ListPoliciesRequest 
  
 struct 
  
 { 
  
 // Required. The resource that the policy is attached to, along with the kind of policy 
  
 // to list. Format: 
  
 // `policies/{attachment_point}/denypolicies` 
  
 // 
  
 // The attachment point is identified by its URL-encoded full resource name, 
  
 // which means that the forward-slash character, `/`, must be written as 
  
 // `%2F`. For example, 
  
 // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies`. 
  
 // 
  
 // For organizations and folders, use the numeric ID in the full resource 
  
 // name. For projects, you can use the alphanumeric or the numeric ID. 
  
 Parent 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"` 
  
 // The maximum number of policies to return. IAM ignores this value and uses 
  
 // the value 1000. 
  
 PageSize 
  
  int32 
 
  
 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"` 
  
 // A page token received in a [ListPoliciesResponse][google.iam.v2.ListPoliciesResponse]. Provide this token to 
  
 // retrieve the next page. 
  
 PageToken 
  
  string 
 
  
 `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Request message for ListPolicies .

func (*ListPoliciesRequest) Descriptor

  func 
  
 ( 
 * 
  ListPoliciesRequest 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use ListPoliciesRequest.ProtoReflect.Descriptor instead.

func (*ListPoliciesRequest) GetPageSize

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 GetPageSize 
 () 
  
  int32 
 
 

func (*ListPoliciesRequest) GetPageToken

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 GetPageToken 
 () 
  
  string 
 
 

func (*ListPoliciesRequest) GetParent

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 GetParent 
 () 
  
  string 
 
 

func (*ListPoliciesRequest) ProtoMessage

  func 
  
 ( 
 * 
  ListPoliciesRequest 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*ListPoliciesRequest) ProtoReflect

func (*ListPoliciesRequest) Reset

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 Reset 
 () 
 

func (*ListPoliciesRequest) String

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 String 
 () 
  
  string 
 
 

ListPoliciesResponse

  type 
  
 ListPoliciesResponse 
  
 struct 
  
 { 
  
 // Metadata for the policies that are attached to the resource. 
  
 Policies 
  
 [] 
 * 
  Policy 
 
  
 `protobuf:"bytes,1,rep,name=policies,proto3" json:"policies,omitempty"` 
  
 // A page token that you can use in a [ListPoliciesRequest][google.iam.v2.ListPoliciesRequest] to retrieve the 
  
 // next page. If this field is omitted, there are no additional pages. 
  
 NextPageToken 
  
  string 
 
  
 `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Response message for ListPolicies .

func (*ListPoliciesResponse) Descriptor

  func 
  
 ( 
 * 
  ListPoliciesResponse 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use ListPoliciesResponse.ProtoReflect.Descriptor instead.

func (*ListPoliciesResponse) GetNextPageToken

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesResponse 
 
 ) 
  
 GetNextPageToken 
 () 
  
  string 
 
 

func (*ListPoliciesResponse) GetPolicies

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesResponse 
 
 ) 
  
 GetPolicies 
 () 
  
 [] 
 * 
  Policy 
 
 

func (*ListPoliciesResponse) ProtoMessage

  func 
  
 ( 
 * 
  ListPoliciesResponse 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*ListPoliciesResponse) ProtoReflect

func (*ListPoliciesResponse) Reset

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesResponse 
 
 ) 
  
 Reset 
 () 
 

func (*ListPoliciesResponse) String

  func 
  
 ( 
 x 
  
 * 
  ListPoliciesResponse 
 
 ) 
  
 String 
 () 
  
  string 
 
 

PoliciesClient

  type 
  
 PoliciesClient 
  
 interface 
  
 { 
  
 // Retrieves the policies of the specified kind that are attached to a 
  
 // resource. 
  
 // 
  
 // The response lists only policy metadata. In particular, policy rules are 
  
 // omitted. 
  
 ListPolicies 
 ( 
 ctx 
  
  context 
 
 . 
  Context 
 
 , 
  
 in 
  
 * 
  ListPoliciesRequest 
 
 , 
  
 opts 
  
 ... 
  grpc 
 
 . 
  CallOption 
 
 ) 
  
 ( 
 * 
  ListPoliciesResponse 
 
 , 
  
  error 
 
 ) 
  
 // Gets a policy. 
  
 GetPolicy 
 ( 
 ctx 
  
  context 
 
 . 
  Context 
 
 , 
  
 in 
  
 * 
  GetPolicyRequest 
 
 , 
  
 opts 
  
 ... 
  grpc 
 
 . 
  CallOption 
 
 ) 
  
 ( 
 * 
  Policy 
 
 , 
  
  error 
 
 ) 
  
 // Creates a policy. 
  
 CreatePolicy 
 ( 
 ctx 
  
  context 
 
 . 
  Context 
 
 , 
  
 in 
  
 * 
  CreatePolicyRequest 
 
 , 
  
 opts 
  
 ... 
  grpc 
 
 . 
  CallOption 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
  
 // Updates the specified policy. 
  
 // 
  
 // You can update only the rules and the display name for the policy. 
  
 // 
  
 // To update a policy, you should use a read-modify-write loop: 
  
 // 
  
 // 1. Use [GetPolicy][google.iam.v2.Policies.GetPolicy] to read the current version of the policy. 
  
 // 2. Modify the policy as needed. 
  
 // 3. Use `UpdatePolicy` to write the updated policy. 
  
 // 
  
 // This pattern helps prevent conflicts between concurrent updates. 
  
 UpdatePolicy 
 ( 
 ctx 
  
  context 
 
 . 
  Context 
 
 , 
  
 in 
  
 * 
  UpdatePolicyRequest 
 
 , 
  
 opts 
  
 ... 
  grpc 
 
 . 
  CallOption 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
  
 // Deletes a policy. This action is permanent. 
  
 DeletePolicy 
 ( 
 ctx 
  
  context 
 
 . 
  Context 
 
 , 
  
 in 
  
 * 
  DeletePolicyRequest 
 
 , 
  
 opts 
  
 ... 
  grpc 
 
 . 
  CallOption 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
 } 
 

PoliciesClient is the client API for Policies service.

For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream .

func NewPoliciesClient

  func 
  
 NewPoliciesClient 
 ( 
 cc 
  
  grpc 
 
 . 
  ClientConnInterface 
 
 ) 
  
  PoliciesClient 
 
 

PoliciesServer

  type 
  
 PoliciesServer 
  
 interface 
  
 { 
  
 // Retrieves the policies of the specified kind that are attached to a 
  
 // resource. 
  
 // 
  
 // The response lists only policy metadata. In particular, policy rules are 
  
 // omitted. 
  
 ListPolicies 
 ( 
  context 
 
 . 
  Context 
 
 , 
  
 * 
  ListPoliciesRequest 
 
 ) 
  
 ( 
 * 
  ListPoliciesResponse 
 
 , 
  
  error 
 
 ) 
  
 // Gets a policy. 
  
 GetPolicy 
 ( 
  context 
 
 . 
  Context 
 
 , 
  
 * 
  GetPolicyRequest 
 
 ) 
  
 ( 
 * 
  Policy 
 
 , 
  
  error 
 
 ) 
  
 // Creates a policy. 
  
 CreatePolicy 
 ( 
  context 
 
 . 
  Context 
 
 , 
  
 * 
  CreatePolicyRequest 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
  
 // Updates the specified policy. 
  
 // 
  
 // You can update only the rules and the display name for the policy. 
  
 // 
  
 // To update a policy, you should use a read-modify-write loop: 
  
 // 
  
 // 1. Use [GetPolicy][google.iam.v2.Policies.GetPolicy] to read the current version of the policy. 
  
 // 2. Modify the policy as needed. 
  
 // 3. Use `UpdatePolicy` to write the updated policy. 
  
 // 
  
 // This pattern helps prevent conflicts between concurrent updates. 
  
 UpdatePolicy 
 ( 
  context 
 
 . 
  Context 
 
 , 
  
 * 
  UpdatePolicyRequest 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
  
 // Deletes a policy. This action is permanent. 
  
 DeletePolicy 
 ( 
  context 
 
 . 
  Context 
 
 , 
  
 * 
  DeletePolicyRequest 
 
 ) 
  
 ( 
 * 
  longrunningpb 
 
 . 
  Operation 
 
 , 
  
  error 
 
 ) 
 } 
 

PoliciesServer is the server API for Policies service. All implementations should embed UnimplementedPoliciesServer for forward compatibility

Policy

  type 
  
 Policy 
  
 struct 
  
 { 
  
 // Immutable. The resource name of the `Policy`, which must be unique. Format: 
  
 // `policies/{attachment_point}/denypolicies/{policy_id}` 
  
 // 
  
 // The attachment point is identified by its URL-encoded full resource name, 
  
 // which means that the forward-slash character, `/`, must be written as 
  
 // `%2F`. For example, 
  
 // `policies/cloudresourcemanager.googleapis.com%2Fprojects%2Fmy-project/denypolicies/my-deny-policy`. 
  
 // 
  
 // For organizations and folders, use the numeric ID in the full resource 
  
 // name. For projects, requests can use the alphanumeric or the numeric ID. 
  
 // Responses always contain the numeric ID. 
  
 Name 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` 
  
 // Immutable. The globally unique ID of the `Policy`. Assigned automatically when the 
  
 // `Policy` is created. 
  
 Uid 
  
  string 
 
  
 `protobuf:"bytes,2,opt,name=uid,proto3" json:"uid,omitempty"` 
  
 // Output only. The kind of the `Policy`. Always contains the value `DenyPolicy`. 
  
 Kind 
  
  string 
 
  
 `protobuf:"bytes,3,opt,name=kind,proto3" json:"kind,omitempty"` 
  
 // A user-specified description of the `Policy`. This value can be up to 63 
  
 // characters. 
  
 DisplayName 
  
  string 
 
  
 `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"` 
  
 // A key-value map to store arbitrary metadata for the `Policy`. Keys 
  
 // can be up to 63 characters. Values can be up to 255 characters. 
  
 Annotations 
  
 map 
 [ 
  string 
 
 ] 
  string 
 
  
 `protobuf:"bytes,5,rep,name=annotations,proto3" json:"annotations,omitempty" protobuf_key:"bytes,1,opt,name=key,proto3" protobuf_val:"bytes,2,opt,name=value,proto3"` 
  
 // An opaque tag that identifies the current version of the `Policy`. IAM uses 
  
 // this value to help manage concurrent updates, so they do not cause one 
  
 // update to be overwritten by another. 
  
 // 
  
 // If this field is present in a [CreatePolicy][] request, the value is 
  
 // ignored. 
  
 Etag 
  
  string 
 
  
 `protobuf:"bytes,6,opt,name=etag,proto3" json:"etag,omitempty"` 
  
 // Output only. The time when the `Policy` was created. 
  
 CreateTime 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
  
 `protobuf:"bytes,7,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 
  
 // Output only. The time when the `Policy` was last updated. 
  
 UpdateTime 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
  
 `protobuf:"bytes,8,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"` 
  
 // Output only. The time when the `Policy` was deleted. Empty if the policy is not deleted. 
  
 DeleteTime 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
  
 `protobuf:"bytes,9,opt,name=delete_time,json=deleteTime,proto3" json:"delete_time,omitempty"` 
  
 // A list of rules that specify the behavior of the `Policy`. All of the rules 
  
 // should be of the `kind` specified in the `Policy`. 
  
 Rules 
  
 [] 
 * 
  PolicyRule 
 
  
 `protobuf:"bytes,10,rep,name=rules,proto3" json:"rules,omitempty"` 
  
 // Immutable. Specifies that this policy is managed by an authority and can only be 
  
 // modified by that authority. Usage is restricted. 
  
 ManagingAuthority 
  
  string 
 
  
 `protobuf:"bytes,11,opt,name=managing_authority,json=managingAuthority,proto3" json:"managing_authority,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Data for an IAM policy.

func (*Policy) Descriptor

  func 
  
 ( 
 * 
  Policy 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use Policy.ProtoReflect.Descriptor instead.

func (*Policy) GetAnnotations

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetAnnotations 
 () 
  
 map 
 [ 
  string 
 
 ] 
  string 
 
 

func (*Policy) GetCreateTime

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetCreateTime 
 () 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
 

func (*Policy) GetDeleteTime

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetDeleteTime 
 () 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
 

func (*Policy) GetDisplayName

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetDisplayName 
 () 
  
  string 
 
 

func (*Policy) GetEtag

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetEtag 
 () 
  
  string 
 
 

func (*Policy) GetKind

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetKind 
 () 
  
  string 
 
 

func (*Policy) GetManagingAuthority

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetManagingAuthority 
 () 
  
  string 
 
 

func (*Policy) GetName

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetName 
 () 
  
  string 
 
 

func (*Policy) GetRules

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetRules 
 () 
  
 [] 
 * 
  PolicyRule 
 
 

func (*Policy) GetUid

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetUid 
 () 
  
  string 
 
 

func (*Policy) GetUpdateTime

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 GetUpdateTime 
 () 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
 

func (*Policy) ProtoMessage

  func 
  
 ( 
 * 
  Policy 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*Policy) ProtoReflect

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 ProtoReflect 
 () 
  
  protoreflect 
 
 . 
  Message 
 
 

func (*Policy) Reset

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 Reset 
 () 
 

func (*Policy) String

  func 
  
 ( 
 x 
  
 * 
  Policy 
 
 ) 
  
 String 
 () 
  
  string 
 
 
  type 
  
 PolicyOperationMetadata 
  
 struct 
  
 { 
  
 // Timestamp when the `google.longrunning.Operation` was created. 
  
 CreateTime 
  
 * 
  timestamppb 
 
 . 
  Timestamp 
 
  
 `protobuf:"bytes,1,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Metadata for long-running Policy operations.

  func 
  
 ( 
 * 
  PolicyOperationMetadata 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use PolicyOperationMetadata.ProtoReflect.Descriptor instead.

  func 
  
 ( 
 * 
  PolicyOperationMetadata 
 
 ) 
  
 ProtoMessage 
 () 
 
  func 
  
 ( 
 x 
  
 * 
  PolicyOperationMetadata 
 
 ) 
  
 Reset 
 () 
 
  func 
  
 ( 
 x 
  
 * 
  PolicyOperationMetadata 
 
 ) 
  
 String 
 () 
  
  string 
 
 

PolicyRule

  type 
  
 PolicyRule 
  
 struct 
  
 { 
  
 // Types that are assignable to Kind: 
  
 // 
  
 //	*PolicyRule_DenyRule 
  
 Kind 
  
 isPolicyRule_Kind 
  
 `protobuf_oneof:"kind"` 
  
 // A user-specified description of the rule. This value can be up to 256 
  
 // characters. 
  
 Description 
  
  string 
 
  
 `protobuf:"bytes,1,opt,name=description,proto3" json:"description,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

A single rule in a Policy .

func (*PolicyRule) Descriptor

  func 
  
 ( 
 * 
  PolicyRule 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use PolicyRule.ProtoReflect.Descriptor instead.

func (*PolicyRule) GetDenyRule

  func 
  
 ( 
 x 
  
 * 
  PolicyRule 
 
 ) 
  
 GetDenyRule 
 () 
  
 * 
  DenyRule 
 
 

func (*PolicyRule) GetDescription

  func 
  
 ( 
 x 
  
 * 
  PolicyRule 
 
 ) 
  
 GetDescription 
 () 
  
  string 
 
 

func (*PolicyRule) GetKind

  func 
  
 ( 
 m 
  
 * 
  PolicyRule 
 
 ) 
  
 GetKind 
 () 
  
 isPolicyRule_Kind 
 

func (*PolicyRule) ProtoMessage

  func 
  
 ( 
 * 
  PolicyRule 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*PolicyRule) ProtoReflect

  func 
  
 ( 
 x 
  
 * 
  PolicyRule 
 
 ) 
  
 ProtoReflect 
 () 
  
  protoreflect 
 
 . 
  Message 
 
 

func (*PolicyRule) Reset

  func 
  
 ( 
 x 
  
 * 
  PolicyRule 
 
 ) 
  
 Reset 
 () 
 

func (*PolicyRule) String

  func 
  
 ( 
 x 
  
 * 
  PolicyRule 
 
 ) 
  
 String 
 () 
  
  string 
 
 

PolicyRule_DenyRule

  type 
  
 PolicyRule_DenyRule 
  
 struct 
  
 { 
  
 // A rule for a deny policy. 
  
 DenyRule 
  
 * 
  DenyRule 
 
  
 `protobuf:"bytes,2,opt,name=deny_rule,json=denyRule,proto3,oneof"` 
 } 
 

UnimplementedPoliciesServer

  type 
  
 UnimplementedPoliciesServer 
  
 struct 
  
 { 
 } 
 

UnimplementedPoliciesServer should be embedded to have forward compatible implementations.

func (UnimplementedPoliciesServer) CreatePolicy

func (UnimplementedPoliciesServer) DeletePolicy

func (UnimplementedPoliciesServer) GetPolicy

func (UnimplementedPoliciesServer) ListPolicies

func (UnimplementedPoliciesServer) UpdatePolicy

UnsafePoliciesServer

  type 
  
 UnsafePoliciesServer 
  
 interface 
  
 { 
  
 // contains filtered or unexported methods 
 } 
 

UnsafePoliciesServer may be embedded to opt out of forward compatibility for this service. Use of this interface is not recommended, as added methods to PoliciesServer will result in compilation errors.

UpdatePolicyRequest

  type 
  
 UpdatePolicyRequest 
  
 struct 
  
 { 
  
 // Required. The policy to update. 
  
 // 
  
 // To prevent conflicting updates, the `etag` value must match the value that 
  
 // is stored in IAM. If the `etag` values do not match, the request fails with 
  
 // a `409` error code and `ABORTED` status. 
  
 Policy 
  
 * 
  Policy 
 
  
 `protobuf:"bytes,1,opt,name=policy,proto3" json:"policy,omitempty"` 
  
 // contains filtered or unexported fields 
 } 
 

Request message for UpdatePolicy .

func (*UpdatePolicyRequest) Descriptor

  func 
  
 ( 
 * 
  UpdatePolicyRequest 
 
 ) 
  
 Descriptor 
 () 
  
 ([] 
  byte 
 
 , 
  
 [] 
  int 
 
 ) 
 

Deprecated: Use UpdatePolicyRequest.ProtoReflect.Descriptor instead.

func (*UpdatePolicyRequest) GetPolicy

  func 
  
 ( 
 x 
  
 * 
  UpdatePolicyRequest 
 
 ) 
  
 GetPolicy 
 () 
  
 * 
  Policy 
 
 

func (*UpdatePolicyRequest) ProtoMessage

  func 
  
 ( 
 * 
  UpdatePolicyRequest 
 
 ) 
  
 ProtoMessage 
 () 
 

func (*UpdatePolicyRequest) ProtoReflect

func (*UpdatePolicyRequest) Reset

  func 
  
 ( 
 x 
  
 * 
  UpdatePolicyRequest 
 
 ) 
  
 Reset 
 () 
 

func (*UpdatePolicyRequest) String

  func 
  
 ( 
 x 
  
 * 
  UpdatePolicyRequest 
 
 ) 
  
 String 
 () 
  
  string 
 
 
Design a Mobile Site
View Site in Mobile | Classic
Share by: