Table of Contents

Class ExternalLoginAccount

Namespace
ProjectTemplate.Infrastructure.Data.Entities
Assembly
ProjectTemplate.Infrastructure.dll

Represents a persisted link between a local application user and an external authentication provider identity.

public sealed class ExternalLoginAccount : DataEntity
Inheritance
ExternalLoginAccount
Inherited Members

Properties

CreatedOnUtc

Creation timestamp in UTC when this external login account was linked to the local user. This can be useful for auditing and tracking purposes.

public DateTime CreatedOnUtc { get; set; }

Property Value

DateTime

DisplayName

Display name or email associated with the external account, for informational purposes. This is not used for authentication but can be helpful for administrators to identify linked accounts.

public string? DisplayName { get; set; }

Property Value

string

Email

Email address associated with the external account, if available. This is not used for authentication but can be helpful for administrators to identify linked accounts and for potential communication purposes.

public string? Email { get; set; }

Property Value

string

LastLoginOnUtc

Last login timestamp in UTC when the user authenticated using this external login account. This can be useful for auditing and tracking purposes, as well as for identifying inactive linked accounts.

public DateTime? LastLoginOnUtc { get; set; }

Property Value

DateTime?

LocalUserId

Local application user ID to which this external login account is linked.

public Guid LocalUserId { get; set; }

Property Value

Guid

NormalizedEmail

Normalized email address used for lookup comparisons when email-based lookup is needed.

public string? NormalizedEmail { get; set; }

Property Value

string

NormalizedProviderName

Normalized provider name used for lookup and uniqueness comparisons.

public string NormalizedProviderName { get; set; }

Property Value

string

ProviderName

Provider name of the external authentication service (e.g., "Google", "Facebook", "Microsoft").

public string ProviderName { get; set; }

Property Value

string

ProviderUserId

Provider-specific unique identifier for the user (e.g., the "sub" claim from an OpenID Connect token).

public string ProviderUserId { get; set; }

Property Value

string

UpdatedOnUtc

Update timestamp in UTC when this external login account was last modified. This can be useful for auditing and tracking purposes, especially if the display name or email associated with the external account changes over time.

public DateTime? UpdatedOnUtc { get; set; }

Property Value

DateTime?