googleapis/google/iam
Google APIs 76ffdb2287 chore(php): Migrate some GA APIs to NEW_SURFACE_ONLY
PiperOrigin-RevId: 672632836
2024-09-09 12:26:01 -07:00
..
admin/v1 feat: promote to GA 2024-05-15 07:47:39 -07:00
credentials chore(php): Migrate some GA APIs to NEW_SURFACE_ONLY 2024-09-09 12:26:01 -07:00
v1 chore: Add java_gapic_assembly_gradle_pkg rule for google/iam/v1/logging/BUILD.bazel 2024-06-20 09:26:13 -07:00
v1beta chore: update copyright year for auto-generated protos 2024-05-07 13:56:05 -07:00
v2 chore(php): promote AccessContextManager to v1 2024-07-23 12:47:56 -07:00
v2beta chore: update copyright year for auto-generated protos 2024-05-07 13:56:05 -07:00
BUILD.bazel feat: Support for universe_domain 2024-01-12 08:40:29 -08:00
README.md chore: update README files 2023-10-11 10:16:35 -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.