Table of Contents

Class EmailTotpService

Namespace
GastroSky.Services.Totp.EmailTotpService
Assembly
GastroSky.dll
public class EmailTotpService : IEmailTotpService
Inheritance
EmailTotpService
Implements
Inherited Members

Constructors

EmailTotpService(ILogger<EmailTotpService>, IEmailSenderGastroSky, GastroSkyDatabaseContext, IEmailGenerator)

public EmailTotpService(ILogger<EmailTotpService> logger, IEmailSenderGastroSky emailSender, GastroSkyDatabaseContext db, IEmailGenerator emailGenerator)

Parameters

logger ILogger<EmailTotpService>
emailSender IEmailSenderGastroSky
db GastroSkyDatabaseContext
emailGenerator IEmailGenerator

Methods

GenerateAndSendTotp(string, Language)

Generates a TFA token for a given email address and sends it to it. It will be valid for 20 minutes.

public Task<bool> GenerateAndSendTotp(string email, Language language)

Parameters

email string

The email address for which to generate the TOTP.

language Language

The Language to use in the email that is sent out.

Returns

Task<bool>

Whether generation + sending succeeded.

GenerateTotp(string)

Generates a TFA token for a given email address without sending it or anything. Raw and dirty. Valid for 20 minutes.

public Task<string> GenerateTotp(string email)

Parameters

email string

The email address for which to generate the TOTP.

Returns

Task<string>

The TOTP token (or string.Empty if generation failed somehow).

ValidateTotp(string, string)

Validates a TOTP for a given email address that was generated using GenerateAndSendTotp(string, Language).

public Task<bool> ValidateTotp(string email, string totp)

Parameters

email string

The email address for which the TOTP was generated.

totp string

The token to validate.

Returns

Task<bool>