googleapis/google/iam
Google APIs 436c44ffb0 fix: upgrade gRPC service registration func
An update to Go gRPC Protobuf generation will change service registration function signatures to use an interface instead of a concrete type in generated .pb.go service files. This change should affect very few client library users. See release notes advisories in https://github.com/googleapis/google-cloud-go/pull/11025.

PiperOrigin-RevId: 820810512
2025-10-17 13:32:24 -07:00
..
v1 fix: upgrade gRPC service registration func 2025-10-17 13:32:24 -07:00
BUILD.bazel chore: start preview directory 2021-12-01 15:08:14 +00:00
iam_meta_api.yaml chore: start preview directory 2021-12-01 15:08:14 +00:00
README.md chore: update README files 2023-10-11 10:16:30 -07:00

IAM (Identity and Access Management) Protos

This folder contains protocol buffer types which represent IAM (Identity and Access Management) concepts plus a mix-in service declaration (IAMPolicy) which can be inherited by APIs so that they follow a consistent pattern for IAM operations.

Key Concepts

  • Binding: Associates a list of identities with a particular role. An identity can match things like all users, all authenticated users, a single user, a single service account, a single group, or a single domain. A role is a permission defined by IAM, such as roles/viewer, roles/editor, or roles/owner.
  • Policy: A list of bindings where each role can only appear once. It also contains a version to track iterations of the bindings.

Key Service definitions

  • IAMPolicy: This is a mix-in service which defines three operations:
    • SetIamPolicy: Sets the access control policy on the specified resource.
    • GetIamPolicy: Gets the access control policy for a resource.
    • TestIamPermissions: Returns permissions that a caller has on the specified resource.