public ConditionContext ConditionContext { get; set; }
Optional. Additional context for the request, such as the request time or
IP address. This context allows Policy Troubleshooter to troubleshoot
conditional role bindings and deny rules.
Required. The full resource name that identifies the resource. For example,
//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance.
Required. The email address of the principal whose access you want to
check. For example, alice@example.com or
my-service-account@my-project.iam.gserviceaccount.com.
The principal must be a Google Account or a service account. Other types of
principals are not supported.
[[["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\u003eThis document provides reference documentation for the \u003ccode\u003eAccessTuple\u003c/code\u003e class within the Policy Troubleshooter v3 API, which is used to check access based on principal, resource, and permission.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eAccessTuple\u003c/code\u003e class, found in the \u003ccode\u003eGoogle.Cloud.PolicyTroubleshooter.Iam.V3\u003c/code\u003e namespace, includes properties such as \u003ccode\u003eFullResourceName\u003c/code\u003e, \u003ccode\u003ePermission\u003c/code\u003e, \u003ccode\u003ePrincipal\u003c/code\u003e, \u003ccode\u003eConditionContext\u003c/code\u003e, and \u003ccode\u003ePermissionFqdn\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003eThere are three versions of the API referenced: 1.2.0 (latest), 1.1.0, and 1.0.0, and the class implements interfaces like \u003ccode\u003eIMessage\u003c/code\u003e, \u003ccode\u003eIEquatable\u003c/code\u003e, and \u003ccode\u003eIDeepCloneable\u003c/code\u003e.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eAccessTuple\u003c/code\u003e objects can be created using two constructor methods: a default one with no parameters, and another that takes another AccessTuple object as a parameter.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eAccessTuple\u003c/code\u003e properties include methods to define the resource name, the permission being checked, the user who's access is being checked, context of the request, and the permission that was checked for in the v2 format.\u003c/p\u003e\n"]]],[],null,["# Policy Troubleshooter v3 API - Class AccessTuple (1.2.0)\n\nVersion latestkeyboard_arrow_down\n\n- [1.2.0 (latest)](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/latest/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple)\n- [1.1.0](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/1.1.0/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple)\n- [1.0.0](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/1.0.0/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple) \n\n public sealed class AccessTuple : IMessage\u003cAccessTuple\u003e, IEquatable\u003cAccessTuple\u003e, IDeepCloneable\u003cAccessTuple\u003e, IBufferMessage, IMessage\n\nReference documentation and code samples for the Policy Troubleshooter v3 API class AccessTuple.\n\nInformation about the principal, resource, and permission to check. \n\nInheritance\n-----------\n\n[object](https://learn.microsoft.com/dotnet/api/system.object) \\\u003e AccessTuple \n\nImplements\n----------\n\n[IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage-1.html)[AccessTuple](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/latest/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple), [IEquatable](https://learn.microsoft.com/dotnet/api/system.iequatable-1)[AccessTuple](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/latest/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple), [IDeepCloneable](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IDeepCloneable-1.html)[AccessTuple](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/latest/Google.Cloud.PolicyTroubleshooter.Iam.V3.AccessTuple), [IBufferMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IBufferMessage.html), [IMessage](https://cloud.google.com/dotnet/docs/reference/Google.Protobuf/latest/Google.Protobuf.IMessage.html) \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.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring)\n\nNamespace\n---------\n\n[Google.Cloud.PolicyTroubleshooter.Iam.V3](/dotnet/docs/reference/Google.Cloud.PolicyTroubleshooter.Iam.V3/latest/Google.Cloud.PolicyTroubleshooter.Iam.V3)\n\nAssembly\n--------\n\nGoogle.Cloud.PolicyTroubleshooter.Iam.V3.dll\n\nConstructors\n------------\n\n### AccessTuple()\n\n public AccessTuple()\n\n### AccessTuple(AccessTuple)\n\n public AccessTuple(AccessTuple other)\n\nProperties\n----------\n\n### ConditionContext\n\n public ConditionContext ConditionContext { get; set; }\n\nOptional. Additional context for the request, such as the request time or\nIP address. This context allows Policy Troubleshooter to troubleshoot\nconditional role bindings and deny rules.\n\n### FullResourceName\n\n public string FullResourceName { get; set; }\n\nRequired. The full resource name that identifies the resource. For example,\n`//compute.googleapis.com/projects/my-project/zones/us-central1-a/instances/my-instance`.\n\nFor examples of full resource names for Google Cloud services, see\n\u003chttps://cloud.google.com/iam/help/troubleshooter/full-resource-names\u003e.\n\n### Permission\n\n public string Permission { get; set; }\n\nRequired. The IAM permission to check for, either in the `v1` permission\nformat or the `v2` permission format.\n\nFor a complete list of IAM permissions in the `v1` format, see\n\u003chttps://cloud.google.com/iam/help/permissions/reference\u003e.\n\nFor a list of IAM permissions in the `v2` format, see\n\u003chttps://cloud.google.com/iam/help/deny/supported-permissions\u003e.\n\nFor a complete list of predefined IAM roles and the permissions in each\nrole, see \u003chttps://cloud.google.com/iam/help/roles/reference\u003e.\n\n### PermissionFqdn\n\n public string PermissionFqdn { get; set; }\n\nOutput only. The permission that Policy Troubleshooter checked for, in\nthe `v2` format.\n\n### Principal\n\n public string Principal { get; set; }\n\nRequired. The email address of the principal whose access you want to\ncheck. For example, `alice@example.com` or\n`my-service-account@my-project.iam.gserviceaccount.com`.\n\nThe principal must be a Google Account or a service account. Other types of\nprincipals are not supported."]]