Class AttributeContext.Types.Auth (2.10.0)

public sealed class AttributeContext.Types.Auth : IMessage<AttributeContext.Types.Auth>, IEquatable<AttributeContext.Types.Auth>, IDeepCloneable<AttributeContext.Types.Auth>, IBufferMessage, IMessage

This message defines request authentication attributes. Terminology is based on the JSON Web Token (JWT) standard, but the terms also correlate to concepts in other standards.

Inheritance

object > AttributeContext.Types.Auth

Namespace

Google.Rpc.Context

Assembly

Google.Api.CommonProtos.dll

Constructors

Auth()

public Auth()

Auth(Auth)

public Auth(AttributeContext.Types.Auth other)
Parameter
NameDescription
otherAttributeContextTypesAuth

Fields

AccessLevelsFieldNumber

public const int AccessLevelsFieldNumber = 5

Field number for the "access_levels" field.

Field Value
TypeDescription
int

AudiencesFieldNumber

public const int AudiencesFieldNumber = 2

Field number for the "audiences" field.

Field Value
TypeDescription
int

ClaimsFieldNumber

public const int ClaimsFieldNumber = 4

Field number for the "claims" field.

Field Value
TypeDescription
int

PresenterFieldNumber

public const int PresenterFieldNumber = 3

Field number for the "presenter" field.

Field Value
TypeDescription
int

PrincipalFieldNumber

public const int PrincipalFieldNumber = 1

Field number for the "principal" field.

Field Value
TypeDescription
int

Properties

AccessLevels

public RepeatedField<string> AccessLevels { get; }

A list of access level resource names that allow resources to be accessed by authenticated requester. It is part of Secure GCP processing for the incoming request. An access level string has the format: "//{api_service_name}/accessPolicies/{policy_id}/accessLevels/{short_name}"

Example: "//accesscontextmanager.googleapis.com/accessPolicies/MY_POLICY_ID/accessLevels/MY_LEVEL"

Property Value
TypeDescription
RepeatedFieldstring

Audiences

public RepeatedField<string> Audiences { get; }

The intended audience(s) for this authentication information. Reflects the audience (aud) claim within a JWT. The audience value(s) depends on the issuer, but typically include one or more of the following pieces of information:

Consult the documentation for the credential issuer to determine the information provided.

Property Value
TypeDescription
RepeatedFieldstring

Claims

public Struct Claims { get; set; }

Structured claims presented with the credential. JWTs include {key: value} pairs for standard and private claims. The following is a subset of the standard required and optional claims that would typically be presented for a Google-based JWT:

{'iss': 'accounts.google.com', 'sub': '113289723416554971153', 'aud': ['123456789012', 'pubsub.googleapis.com'], 'azp': '123456789012.apps.googleusercontent.com', 'email': 'jsmith@example.com', 'iat': 1353601026, 'exp': 1353604926}

SAML assertions are similarly specified, but with an identity provider dependent structure.

Property Value
TypeDescription
Struct

Descriptor

public static MessageDescriptor Descriptor { get; }
Property Value
TypeDescription
MessageDescriptor

Parser

public static MessageParser<AttributeContext.Types.Auth> Parser { get; }
Property Value
TypeDescription
MessageParserAttributeContextTypesAuth

Presenter

public string Presenter { get; set; }

The authorized presenter of the credential. Reflects the optional Authorized Presenter (azp) claim within a JWT or the OAuth client id. For example, a Google Cloud Platform client id looks as follows: "123456789012.apps.googleusercontent.com".

Property Value
TypeDescription
string

Principal

public string Principal { get; set; }

The authenticated principal. Reflects the issuer (iss) and subject (sub) claims within a JWT. The issuer and subject should be / delimited, with / percent-encoded within the subject fragment. For Google accounts, the principal format is: "https://accounts.google.com/{id}"

Property Value
TypeDescription
string

Methods

CalculateSize()

public int CalculateSize()
Returns
TypeDescription
int

Clone()

public AttributeContext.Types.Auth Clone()
Returns
TypeDescription
AttributeContextTypesAuth

Equals(Auth)

public bool Equals(AttributeContext.Types.Auth other)
Parameter
NameDescription
otherAttributeContextTypesAuth
Returns
TypeDescription
bool

Equals(object)

public override bool Equals(object other)
Parameter
NameDescription
otherobject
Returns
TypeDescription
bool
Overrides

GetHashCode()

public override int GetHashCode()
Returns
TypeDescription
int
Overrides

MergeFrom(CodedInputStream)

public void MergeFrom(CodedInputStream input)
Parameter
NameDescription
inputCodedInputStream

MergeFrom(Auth)

public void MergeFrom(AttributeContext.Types.Auth other)
Parameter
NameDescription
otherAttributeContextTypesAuth

ToString()

public override string ToString()
Returns
TypeDescription
string
Overrides

WriteTo(CodedOutputStream)

public void WriteTo(CodedOutputStream output)
Parameter
NameDescription
outputCodedOutputStream