A factory function to construct an object of typeIAMConnection.
The returned connection object should not be used directly; instead it should be passed as an argument to the constructor ofIAMClient.
The optionaloptionsargument may be used to configure aspects of the returnedIAMConnection. Expected options are any of the types in the following option lists:
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[[["\u003cp\u003eThis webpage provides documentation for the Google Cloud C++ client library's Identity and Access Management (IAM) service, with the latest version being 2.37.0-rc.\u003c/p\u003e\n"],["\u003cp\u003eThe available documentation versions span from 2.11.0 up to the latest release candidate, 2.37.0-rc, with many intermediate versions available to select.\u003c/p\u003e\n"],["\u003cp\u003eKey classes covered include \u003ccode\u003eIAMClient\u003c/code\u003e for managing IAM resources, \u003ccode\u003eIAMConnection\u003c/code\u003e for connecting to the service, and several retry policy classes such as \u003ccode\u003eIAMLimitedErrorCountRetryPolicy\u003c/code\u003e and \u003ccode\u003eIAMLimitedTimeRetryPolicy\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eMakeIAMConnection\u003c/code\u003e function, which can be configured using various option lists including CommonOptionList, GrpcOptionList, UnifiedCredentialsOptionList, and IAMPolicyOptionList, is used to create an \u003ccode\u003eIAMConnection\u003c/code\u003e object.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eIAMConnectionIdempotencyPolicy\u003c/code\u003e, \u003ccode\u003eIAMRetryPolicy\u003c/code\u003e, and other related structs and functions are available to refine the behavior and characteristics of the connection to the IAM service.\u003c/p\u003e\n"]]],[],null,["# Namespace google::cloud::iam_admin_v1 (2.42.0-rc)\n\nVersion latestkeyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/iam/latest/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.41.0](/cpp/docs/reference/iam/2.41.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.40.0](/cpp/docs/reference/iam/2.40.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.39.0](/cpp/docs/reference/iam/2.39.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.38.0](/cpp/docs/reference/iam/2.38.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.37.0](/cpp/docs/reference/iam/2.37.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.36.0](/cpp/docs/reference/iam/2.36.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.35.0](/cpp/docs/reference/iam/2.35.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.34.0](/cpp/docs/reference/iam/2.34.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.33.0](/cpp/docs/reference/iam/2.33.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.32.0](/cpp/docs/reference/iam/2.32.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.31.0](/cpp/docs/reference/iam/2.31.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.30.0](/cpp/docs/reference/iam/2.30.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.29.0](/cpp/docs/reference/iam/2.29.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.28.0](/cpp/docs/reference/iam/2.28.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.27.0](/cpp/docs/reference/iam/2.27.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.26.0](/cpp/docs/reference/iam/2.26.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.25.1](/cpp/docs/reference/iam/2.25.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.24.0](/cpp/docs/reference/iam/2.24.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.23.0](/cpp/docs/reference/iam/2.23.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.22.1](/cpp/docs/reference/iam/2.22.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.21.0](/cpp/docs/reference/iam/2.21.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.20.0](/cpp/docs/reference/iam/2.20.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.19.0](/cpp/docs/reference/iam/2.19.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.18.0](/cpp/docs/reference/iam/2.18.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.17.0](/cpp/docs/reference/iam/2.17.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.16.0](/cpp/docs/reference/iam/2.16.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.15.1](/cpp/docs/reference/iam/2.15.1/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.14.0](/cpp/docs/reference/iam/2.14.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.13.0](/cpp/docs/reference/iam/2.13.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.12.0](/cpp/docs/reference/iam/2.12.0/namespacegoogle_1_1cloud_1_1iam__admin__v1)\n- [2.11.0](/cpp/docs/reference/iam/2.11.0/namespacegoogle_1_1cloud_1_1iam__admin__v1) \n\nClasses\n-------\n\n### [IAMClient](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient)\n\nCreates and manages Identity and Access Management (IAM) resources.\n\n### [IAMConnection](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection)\n\nThe [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) object for [`IAMClient`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient).\n\n### [IAMConnectionIdempotencyPolicy](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnectionIdempotencyPolicy)\n\n### [IAMLimitedErrorCountRetryPolicy](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedErrorCountRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on counting errors.\n\n### [IAMLimitedTimeRetryPolicy](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMLimitedTimeRetryPolicy)\n\nA retry policy for [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection) based on elapsed time.\n\n### [IAMRetryPolicy](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMRetryPolicy)\n\nThe retry policy for [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection).\n\nStructs\n-------\n\n### [IAMBackoffPolicyOption](/cpp/docs/reference/iam/latest/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMBackoffPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the backoff policy.\n\n### [IAMConnectionIdempotencyPolicyOption](/cpp/docs/reference/iam/latest/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnectionIdempotencyPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure which operations are retried.\n\n### [IAMRetryPolicyOption](/cpp/docs/reference/iam/latest/structgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMRetryPolicyOption)\n\nUse with [`google::cloud::Options`](https://cloud.google.com/cpp/docs/reference/common/latest/classgoogle_1_1cloud_1_1Options.html) to configure the retry policy.\n\nFunctions\n---------\n\n### MakeIAMConnection(Options)\n\nA factory function to construct an object of type [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection). \nThe returned connection object should not be used directly; instead it should be passed as an argument to the constructor of [IAMClient](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMClient).\n\nThe optional `options` argument may be used to configure aspects of the returned [`IAMConnection`](/cpp/docs/reference/iam/latest/classgoogle_1_1cloud_1_1iam__admin__v1_1_1IAMConnection). Expected options are any of the types in the following option lists:\n\n- [`google::cloud::CommonOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::GrpcOptionList`](https://cloud.google.com/cpp/docs/reference/common/latest/namespacegoogle_1_1cloud.html)\n- [`google::cloud::UnifiedCredentialsOptionList`](about:invalid#zCSafez)\n- [`google::cloud::iam_admin_v1::IAMPolicyOptionList`](about:invalid#zCSafez)\n\n| **Note:** Unexpected options will be ignored. To log unexpected options instead, set `GOOGLE_CLOUD_CPP_ENABLE_CLOG=yes` in the environment.\n\n### MakeDefaultIAMConnectionIdempotencyPolicy()"]]