com.google.cloud.iam.admin.v1.package-info Maven / Gradle / Ivy
Show all versions of google-iam-admin Show documentation
/*
* Copyright 2024 Google LLC
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/**
* A client to Identity and Access Management (IAM) API
*
* The interfaces provided are listed below, along with usage samples.
*
*
======================= IAMClient =======================
*
*
Service Description: Creates and manages Identity and Access Management (IAM) resources.
*
*
You can use this service to work with all of the following resources:
*
*
* - **Service accounts**, which identify an application or a virtual machine
* (VM) instance rather than a person
*
- **Service account keys**, which service accounts use to authenticate with
* Google APIs
*
- **IAM policies for service accounts**, which specify the roles that a
* principal has for the service account
*
- **IAM custom roles**, which help you limit the number of permissions that
* you grant to principals
*
*
* In addition, you can use this service to complete the following tasks, among others:
*
*
* - Test whether a service account can use specific permissions
*
- Check which roles you can grant for a specific resource
*
- Lint, or validate, condition expressions in an IAM policy
*
*
* When you read data from the IAM API, each read is eventually consistent. In other words, if
* you write data with the IAM API, then immediately read that data, the read operation might return
* an older version of the data. To deal with this behavior, your application can retry the request
* with truncated exponential backoff.
*
*
In contrast, writing data to the IAM API is sequentially consistent. In other words, write
* operations are always processed in the order in which they were received.
*
*
Sample for IAMClient:
*
*
{@code
* // This snippet has been automatically generated and should be regarded as a code template only.
* // It will require modifications to work:
* // - It may require correct/in-range values for request initialization.
* // - It may require specifying regional endpoints when creating the service client as shown in
* // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
* try (IAMClient iAMClient = IAMClient.create()) {
* ServiceAccountName name = ServiceAccountName.of("[PROJECT]", "[SERVICE_ACCOUNT]");
* ServiceAccount response = iAMClient.getServiceAccount(name);
* }
* }
*/
@Generated("by gapic-generator-java")
package com.google.cloud.iam.admin.v1;
import javax.annotation.Generated;