#### [Abblix\.Oidc\.Server](https://www.abblix.com/en/docs/api/abblix-oidc-server 'index')
### [Abblix\.Oidc\.Server\.Features\.Storages\.Proto](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto')

## AuthSession Class

Represents an authentication session for a logged\-in user

```csharp
public sealed class AuthSession : Google.Protobuf.IMessage<Abblix.Oidc.Server.Features.Storages.Proto.AuthSession>, Google.Protobuf.IMessage, System.IEquatable<Abblix.Oidc.Server.Features.Storages.Proto.AuthSession>, Google.Protobuf.IDeepCloneable<Abblix.Oidc.Server.Features.Storages.Proto.AuthSession>, Google.Protobuf.IBufferMessage
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → AuthSession

Implements [Google\.Protobuf\.IMessage&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage-1 'Google\.Protobuf\.IMessage\`1')[AuthSession](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.AuthSession 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.AuthSession')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage-1 'Google\.Protobuf\.IMessage\`1'), [Google\.Protobuf\.IMessage](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage 'Google\.Protobuf\.IMessage'), [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[AuthSession](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.AuthSession 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.AuthSession')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1'), [Google\.Protobuf\.IDeepCloneable&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ideepcloneable-1 'Google\.Protobuf\.IDeepCloneable\`1')[AuthSession](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.AuthSession 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.AuthSession')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ideepcloneable-1 'Google\.Protobuf\.IDeepCloneable\`1'), [Google\.Protobuf\.IBufferMessage](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ibuffermessage 'Google\.Protobuf\.IBufferMessage')
### Fields

## AuthSession\.AdditionalClaimsFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AdditionalClaimsFieldNumber}

Field number for the "additional\_claims" field\.

```csharp
public const int AdditionalClaimsFieldNumber = 10;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.AffectedClientIdsFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AffectedClientIdsFieldNumber}

Field number for the "affected\_client\_ids" field\.

```csharp
public const int AffectedClientIdsFieldNumber = 6;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.AuthContextClassRefFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthContextClassRefFieldNumber}

Field number for the "auth\_context\_class\_ref" field\.

```csharp
public const int AuthContextClassRefFieldNumber = 5;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.AuthenticationMethodReferencesFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthenticationMethodReferencesFieldNumber}

Field number for the "authentication\_method\_references" field\.

```csharp
public const int AuthenticationMethodReferencesFieldNumber = 7;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.AuthenticationTimeFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthenticationTimeFieldNumber}

Field number for the "authentication\_time" field\.

```csharp
public const int AuthenticationTimeFieldNumber = 3;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.EmailFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.EmailFieldNumber}

Field number for the "email" field\.

```csharp
public const int EmailFieldNumber = 8;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.EmailVerifiedFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.EmailVerifiedFieldNumber}

Field number for the "email\_verified" field\.

```csharp
public const int EmailVerifiedFieldNumber = 9;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.IdentityProviderFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.IdentityProviderFieldNumber}

Field number for the "identity\_provider" field\.

```csharp
public const int IdentityProviderFieldNumber = 4;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.SessionIdFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.SessionIdFieldNumber}

Field number for the "session\_id" field\.

```csharp
public const int SessionIdFieldNumber = 2;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## AuthSession\.SubjectFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.SubjectFieldNumber}

Field number for the "subject" field\.

```csharp
public const int SubjectFieldNumber = 1;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')
### Properties

## AuthSession\.AdditionalClaims Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AdditionalClaims}

Additional custom claims stored as a structured JSON object\.
Struct provides efficient binary serialization with support for nested objects,
arrays, and primitive values \(string, number, boolean, null\)\.
Maps directly to C\# JsonObject without intermediate JSON string encoding\.

```csharp
public Google.Protobuf.WellKnownTypes.Struct AdditionalClaims { get; set; }
```

#### Property Value
[Google\.Protobuf\.WellKnownTypes\.Struct](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.wellknowntypes.struct 'Google\.Protobuf\.WellKnownTypes\.Struct')

## AuthSession\.AffectedClientIds Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AffectedClientIds}

Client identifiers the user has interacted with during the session

```csharp
public Google.Protobuf.Collections.RepeatedField<string> AffectedClientIds { get; }
```

#### Property Value
[Google\.Protobuf\.Collections\.RepeatedField&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.collections.repeatedfield-1 'Google\.Protobuf\.Collections\.RepeatedField\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.collections.repeatedfield-1 'Google\.Protobuf\.Collections\.RepeatedField\`1')

## AuthSession\.AuthContextClassRef Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthContextClassRef}

Authentication context class reference \(SAML/OIDC\)

```csharp
public string AuthContextClassRef { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AuthSession\.AuthenticationMethodReferences Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthenticationMethodReferences}

Authentication methods used \(AMR values\)

```csharp
public Google.Protobuf.Collections.RepeatedField<string> AuthenticationMethodReferences { get; }
```

#### Property Value
[Google\.Protobuf\.Collections\.RepeatedField&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.collections.repeatedfield-1 'Google\.Protobuf\.Collections\.RepeatedField\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.collections.repeatedfield-1 'Google\.Protobuf\.Collections\.RepeatedField\`1')

## AuthSession\.AuthenticationTime Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.AuthenticationTime}

The timestamp when the user was authenticated

```csharp
public Google.Protobuf.WellKnownTypes.Timestamp AuthenticationTime { get; set; }
```

#### Property Value
[Google\.Protobuf\.WellKnownTypes\.Timestamp](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.wellknowntypes.timestamp 'Google\.Protobuf\.WellKnownTypes\.Timestamp')

## AuthSession\.Email Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.Email}

The email address used for authentication

```csharp
public string Email { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AuthSession\.EmailVerified Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.EmailVerified}

Whether the email address has been verified

```csharp
public bool EmailVerified { get; set; }
```

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## AuthSession\.HasAuthContextClassRef Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.HasAuthContextClassRef}

Gets whether the "auth\_context\_class\_ref" field is set

```csharp
public bool HasAuthContextClassRef { get; }
```

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## AuthSession\.HasEmail Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.HasEmail}

Gets whether the "email" field is set

```csharp
public bool HasEmail { get; }
```

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## AuthSession\.HasEmailVerified Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.HasEmailVerified}

Gets whether the "email\_verified" field is set

```csharp
public bool HasEmailVerified { get; }
```

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## AuthSession\.IdentityProvider Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.IdentityProvider}

The provider used to authenticate the user's identity

```csharp
public string IdentityProvider { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AuthSession\.SessionId Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.SessionId}

The unique identifier of the session

```csharp
public string SessionId { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')

## AuthSession\.Subject Property {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.Subject}

The unique identifier for the user

```csharp
public string Subject { get; set; }
```

#### Property Value
[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')
### Methods

## AuthSession\.ClearAuthContextClassRef\(\) Method {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.ClearAuthContextClassRef()}

Clears the value of the "auth\_context\_class\_ref" field

```csharp
public void ClearAuthContextClassRef();
```

## AuthSession\.ClearEmail\(\) Method {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.ClearEmail()}

Clears the value of the "email" field

```csharp
public void ClearEmail();
```

## AuthSession\.ClearEmailVerified\(\) Method {#Abblix.Oidc.Server.Features.Storages.Proto.AuthSession.ClearEmailVerified()}

Clears the value of the "email\_verified" field

```csharp
public void ClearEmailVerified();
```
