public sealed class Auth : Protobuf.IMessage<AttributeContext.Types.Auth>, Protobuf.IBufferMessage
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()
Auth(AttributeContext.Types.Auth)
public Auth(AttributeContext.Types.Auth other)
Fields
AccessLevelsFieldNumber
public const int AccessLevelsFieldNumber = 5
Field number for the "access_levels" field.
Field Value |
---|
Type | Description |
Int32 | |
AudiencesFieldNumber
public const int AudiencesFieldNumber = 2
Field number for the "audiences" field.
Field Value |
---|
Type | Description |
Int32 | |
ClaimsFieldNumber
public const int ClaimsFieldNumber = 4
Field number for the "claims" field.
Field Value |
---|
Type | Description |
Int32 | |
PresenterFieldNumber
public const int PresenterFieldNumber = 3
Field number for the "presenter" field.
Field Value |
---|
Type | Description |
Int32 | |
PrincipalFieldNumber
public const int PrincipalFieldNumber = 1
Field number for the "principal" field.
Field Value |
---|
Type | Description |
Int32 | |
Properties
AccessLevels
public Protobuf.Collections.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"
Audiences
public Protobuf.Collections.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.
Claims
public Protobuf.WellKnownTypes.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.
Descriptor
public static Protobuf.Reflection.MessageDescriptor Descriptor { get; }
Parser
public static Protobuf.MessageParser<AttributeContext.Types.Auth> Parser { get; }
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 |
---|
Type | Description |
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 |
---|
Type | Description |
String | |
Methods
CalculateSize()
public int CalculateSize()
Returns |
---|
Type | Description |
Int32 | |
Clone()
public AttributeContext.Types.Auth Clone()
Equals(AttributeContext.Types.Auth)
public bool Equals(AttributeContext.Types.Auth other)
Equals(Object)
public override bool Equals(object other)
Parameter |
---|
Name | Description |
other | Object
|
GetHashCode()
public override int GetHashCode()
Returns |
---|
Type | Description |
Int32 | |
MergeFrom(Protobuf.CodedInputStream)
public void MergeFrom(Protobuf.CodedInputStream input)
MergeFrom(AttributeContext.Types.Auth)
public void MergeFrom(AttributeContext.Types.Auth other)
ToString()
public override string ToString()
WriteTo(Protobuf.CodedOutputStream)
public void WriteTo(Protobuf.CodedOutputStream output)