Reference documentation and code samples for the Google Cloud Identity and Access Management (IAM) v1 API class IAMPolicy.
API Overview
Manages Identity and Access Management (IAM) policies.
Any implementation of an API that offers access control features
implements the google.iam.v1.IAMPolicy interface.
Data model
Access control is applied when a principal (user or service account), takes
some action on a resource exposed by a service. Resources, identified by
URI-like names, are the unit of access control specification. Service
implementations can choose the granularity of access control and the
supported permissions for their resources.
For example one database service may allow access control to be
specified only at the Table level, whereas another might allow access control
to also be specified at the Column level.
Policy Structure
See google.iam.v1.Policy
This is intentionally not a CRUD style API because access control policies
are created and deleted implicitly with the resources to which they are
attached.
public static void BindService(ServiceBinderBase serviceBinder, IAMPolicy.IAMPolicyBase serviceImpl)
Register service method with a service binder with or without implementation. Useful when customizing the service binding logic.
Note: this method is part of an experimental API that can change or be removed without any prior notice.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThe IAMPolicy class in the Google Cloud Identity and Access Management (IAM) v1 API manages access control policies for resources.\u003c/p\u003e\n"],["\u003cp\u003eThis API is designed for managing Identity and Access Management (IAM) policies, not a traditional CRUD API, as policies are implicitly created and deleted with resources.\u003c/p\u003e\n"],["\u003cp\u003eThe latest version of this class is 3.4.0, but older versions, down to 2.2.0, are also documented and accessible.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eBindService\u003c/code\u003e methods allow for creating and registering service definitions for the IAMPolicy API, with or without pre-existing implementation.\u003c/p\u003e\n"],["\u003cp\u003eThe IAM policy allows for the specification of access control at different granularities depending on the service's implementation, from table-level to column-level access.\u003c/p\u003e\n"]]],[],null,["# Google Cloud Identity and Access Management (IAM) v1 API - Class IAMPolicy (3.4.0)\n\nVersion latestkeyboard_arrow_down\n\n- [3.4.0 (latest)](/dotnet/docs/reference/Google.Cloud.Iam.V1/latest/Google.Cloud.Iam.V1.IAMPolicy)\n- [3.3.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/3.3.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [3.2.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/3.2.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [3.1.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/3.1.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [3.0.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/3.0.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [2.4.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/2.4.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [2.3.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/2.3.0/Google.Cloud.Iam.V1.IAMPolicy)\n- [2.2.0](/dotnet/docs/reference/Google.Cloud.Iam.V1/2.2.0/Google.Cloud.Iam.V1.IAMPolicy) \n\n public static class IAMPolicy\n\nReference documentation and code samples for the Google Cloud Identity and Access Management (IAM) v1 API class IAMPolicy.\n\nAPI Overview\n\nManages Identity and Access Management (IAM) policies.\n\nAny implementation of an API that offers access control features\nimplements the google.iam.v1.IAMPolicy interface.\n\nData model\n----------\n\nAccess control is applied when a principal (user or service account), takes\nsome action on a resource exposed by a service. Resources, identified by\nURI-like names, are the unit of access control specification. Service\nimplementations can choose the granularity of access control and the\nsupported permissions for their resources.\nFor example one database service may allow access control to be\nspecified only at the Table level, whereas another might allow access control\nto also be specified at the Column level.\n\nPolicy Structure\n----------------\n\nSee google.iam.v1.Policy\n\nThis is intentionally not a CRUD style API because access control policies\nare created and deleted implicitly with the resources to which they are\nattached. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e IAMPolicy \n\nInherited Members\n-----------------\n\n[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode) \n[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype) \n[object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone) \n[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.Iam.V1](/dotnet/docs/reference/Google.Cloud.Iam.V1/latest/Google.Cloud.Iam.V1)\n\nAssembly\n--------\n\nGoogle.Cloud.Iam.V1.dll\n\nMethods\n-------\n\n### BindService(IAMPolicyBase)\n\n public static ServerServiceDefinition BindService(IAMPolicy.IAMPolicyBase serviceImpl)\n\nCreates service definition that can be registered with a server\n\n### BindService(ServiceBinderBase, IAMPolicyBase)\n\n public static void BindService(ServiceBinderBase serviceBinder, IAMPolicy.IAMPolicyBase serviceImpl)\n\nRegister service method with a service binder with or without implementation. Useful when customizing the service binding logic.\nNote: this method is part of an experimental API that can change or be removed without any prior notice."]]