GoogleApi.IAM.V1.Api.Projects.iam_projects_service_accounts_set_iam_policy

You're seeing just the function iam_projects_service_accounts_set_iam_policy, go back to GoogleApi.IAM.V1.Api.Projects module for more information.
Link to this function

iam_projects_service_accounts_set_iam_policy(connection, projects_id, service_accounts_id, optional_params \\ [], opts \\ [])

View Source

Specs

iam_projects_service_accounts_set_iam_policy(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword(),
  keyword()
) ::
  {:ok, GoogleApi.IAM.V1.Model.Policy.t()}
  | {:ok, Tesla.Env.t()}
  | {:ok, list()}
  | {:error, any()}

Sets the IAM policy that is attached to a ServiceAccount. Use this method to grant or revoke access to the service account. For example, you could grant a member the ability to impersonate the service account. This method does not enable the service account to access other resources. To grant roles to a service account on a resource, follow these steps: 1. Call the resource's getIamPolicy method to get its current IAM policy. 2. Edit the policy so that it binds the service account to an IAM role for the resource. 3. Call the resource's setIamPolicy method to update its IAM policy. For detailed instructions, see Granting roles to a service account for specific resources.

Parameters

  • connection (type: GoogleApi.IAM.V1.Connection.t) - Connection to server
  • projects_id (type: String.t) - Part of resource. REQUIRED: The resource for which the policy is being specified. See the operation documentation for the appropriate value for this field.
  • service_accounts_id (type: String.t) - Part of resource. See documentation of projectsId.
  • optional_params (type: keyword()) - Optional parameters
    • :"$.xgafv" (type: String.t) - V1 error format.
    • :access_token (type: String.t) - OAuth access token.
    • :alt (type: String.t) - Data format for response.
    • :callback (type: String.t) - JSONP
    • :fields (type: String.t) - Selector specifying which fields to include in a partial response.
    • :key (type: String.t) - API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
    • :oauth_token (type: String.t) - OAuth 2.0 token for the current user.
    • :prettyPrint (type: boolean()) - Returns response with indentations and line breaks.
    • :quotaUser (type: String.t) - Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
    • :uploadType (type: String.t) - Legacy upload protocol for media (e.g. "media", "multipart").
    • :upload_protocol (type: String.t) - Upload protocol for media (e.g. "raw", "multipart").
    • :body (type: GoogleApi.IAM.V1.Model.SetIamPolicyRequest.t) -
  • opts (type: keyword()) - Call options

Returns

  • {:ok, %GoogleApi.IAM.V1.Model.Policy{}} on success
  • {:error, info} on failure