Wt  4.11.1
Namespaces | Classes | Enumerations
Wt::Auth Namespace Reference

Namespace for the Authentication module (Wt::Auth). More...

Namespaces

 Mfa
 Namespace for Multi-Factor Authentication.
 
 Saml
 Namespace for the SAML SP implementation.
 

Classes

class  AbstractPasswordService
 Abstract password authentication service. More...
 
class  AbstractUserDatabase
 Abstract interface for an authentication user database. More...
 
class  AuthModel
 Model for implementing an authentication view. More...
 
class  EmailTokenResult
 The result of processing an email-sent token. More...
 
class  AuthTokenResult
 The result of processing an authentication token. More...
 
class  AuthService
 Basic authentication service. More...
 
class  AuthThrottle
 Class with helper functions to define throttling behaviour. More...
 
class  AuthWidget
 An authentication widget. More...
 
class  FacebookService
 OAuth service for Facebook as third-party authenticator. More...
 
class  FormBaseModel
 A base model class for authentication-related forms. More...
 
class  GoogleService
 OAuth service for Google as third-party authenticator. More...
 
class  HashFunction
 An abstract cryptographic hash function interface. More...
 
class  MD5HashFunction
 A cryptograhpic hash function implemented using MD5. More...
 
class  SHA1HashFunction
 A cryptographic hash function implemented using SHA1. More...
 
class  BCryptHashFunction
 An cryptographic hash function that implements bcrypt. More...
 
class  Identity
 A class that represents a user identity. More...
 
class  IssuedToken
 Token or authorization code that was issued to a relying party. More...
 
class  Login
 A class that manages the current login state. More...
 
class  LostPasswordWidget
 A widget which initiates a lost-password email. More...
 
class  OAuthAuthorizationEndpointProcess
 Allows clients to authorize users according to the OAuth 2.0 protocol. More...
 
class  OAuthClient
 
class  OAuthAccessToken
 An OAuth access token. More...
 
class  OAuthProcess
 An OAuth authorization (and authentication) process. More...
 
class  OAuthService
 An OAuth authorization (and authentication) service provider. More...
 
class  OAuthTokenEndpoint
 Endpoint to retrieve an access token. More...
 
class  OidcProcess
 An OpenId Connect authentication process. More...
 
class  OidcService
 An OpenId Connect authentication service provider. More...
 
class  OidcUserInfoEndpoint
 Endpoint at which user info can be requested. More...
 
class  PasswordHash
 A password hash. More...
 
class  PasswordPromptDialog
 A dialog that prompts for the user password. More...
 
class  PasswordService
 Password authentication service. More...
 
class  PasswordStrengthValidator
 A default implementation for password strength validation. More...
 
class  PasswordVerifier
 Password hash computation and verification class. More...
 
class  RegistrationModel
 Model for implementing a registration view. More...
 
class  RegistrationWidget
 A registration widget. More...
 
class  ResendEmailVerificationWidget
 A widget to resend the email verification email. More...
 
class  Token
 An authentication token hash. More...
 
class  UpdatePasswordWidget
 A widget which allows a user to choose a new password. More...
 
class  User
 A user. More...
 

Enumerations

enum class  PasswordResult { PasswordInvalid , LoginThrottling , PasswordValid }
 Enumeration for a password verification result. More...
 
enum class  IdentityPolicy { LoginName , EmailAddress , Optional }
 Enumeration for an identity policy. More...
 
enum class  EmailTokenState { Invalid , Expired , UpdatePassword , EmailConfirmed }
 A token validation state. More...
 
enum class  AuthTokenState { Invalid , Valid }
 Enumeration that describes an auth token validation state. More...
 
enum class  LoginState {
  LoggedOut , Disabled , Weak , Strong ,
  RequiresMfa
}
 Enumeration for a login state. More...
 
enum  PasswordStrengthType {
  OneCharClass , TwoCharClass , PassPhrase , ThreeCharClass ,
  FourCharClass
}
 Enumeration for a password type. More...
 
enum class  EmailPolicy { Disabled , Optional , Mandatory }
 Enumeration for an email policy. More...
 
enum class  IdentityConfirmationMethod { ConfirmWithPassword , ConfirmWithEmail , ConfirmationNotPossible }
 Method for confirming to be an existing user. More...
 
enum class  AccountStatus { Disabled , Normal }
 Enumeration for a user's account status. More...
 
enum class  EmailTokenRole { VerifyEmail , LostPassword }
 Enumeration for an email token stored for the user. More...
 
enum  ClientSecretMethod { HttpAuthorizationBasic , PlainUrlParameter , RequestBodyParameter }
 Enumeration of the OAuth client authorization method. More...
 

Detailed Description

Namespace for the Authentication module (Wt::Auth).

Enumeration Type Documentation

◆ AccountStatus

Enumeration for a user's account status.

See also
status()
Enumerator
Disabled 

Successfully identified but not allowed to log in.

Normal 

Normal status.

◆ AuthTokenState

Enumeration that describes an auth token validation state.

Enumerator
Invalid 

The presented auth token was invalid.

Valid 

The presented auth token could be used to identify a user.

◆ EmailPolicy

enum Wt::Auth::EmailPolicy
strong

Enumeration for an email policy.

Enumerator
Disabled 

The email address is not asked for.

Optional 

A user may optionally provide an email address.

Mandatory 

A user must provide an email address.

◆ EmailTokenRole

Enumeration for an email token stored for the user.

Enumerator
VerifyEmail 

Token is used to verify his email address.

LostPassword 

Token is used to allow the user to enter a new password.

◆ EmailTokenState

A token validation state.

Enumerator
Invalid 

The token was invalid.

Expired 

The token has expired.

UpdatePassword 

A token was presented which requires the user to enter a new password.

The presented token was a token sent by the AuthService::lostPassword() function. When this is returned as result of AuthService::processEmailToken(), you should present the user with a dialog where he can enter a new password.

EmailConfirmed 

A The token was presented which verifies the email address.

The presented token was a token sent by the AuthService::verifyEmailAddress() function. When this is returned as result of processEmailToken(), you can indicate to the user that his email address is now confirmed.

◆ IdentityConfirmationMethod

Method for confirming to be an existing user.

Enumerator
ConfirmWithPassword 

Confirm using a password prompt.

ConfirmWithEmail 

Confirm by using an email procedure.

ConfirmationNotPossible 

Confirmation is not possible.

◆ PasswordStrengthType

Enumeration for a password type.

An entered password will be classified as one of these types, based on the different characters used.

The classification uses the concept of character classes, and defines five classes:

  • lower case letters
  • upper case letters
  • numbers
  • other ascii characters
  • unknowns (i.e. multi-byte UTF-8 sequences)

For determining the number of classes, capitializaiton of the first letter of a word, or appending a number, does not count as an extra class.

Enumerator
OneCharClass 

A password with characters of only one class.

The default minimum length required for this password type is 20 characters.

Note
the default of passwdqc is Disabled
TwoCharClass 

A password with characters of two classes.

The default minimum length required for this password type is 15 characters.

Note
the default of passwdqc is 24 characters
PassPhrase 

A password that consists of multiple words.

The default minimum length required for this password type is 11 characters.

See also
setMinimumPassPhraseWords()
Note
the default of passwdqc is also 11 characters
ThreeCharClass 

A password with characters of three classes.

The default minimum length required for this password type is 8 characters.

Note
the default of passwdqc is also 8 characters
FourCharClass 

A password with characters of four classes.

The default minimum length required for this password type is 7 characters.

Note
the default of passwdqc is also 7 characters