Wt: Wt::Auth::Dbo::AuthInfo< UserType > Class Template Reference

Wt 3.3.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

- Class List
- Class Hierarchy
- Class Members

Public Types | Public Member Functions
Wt::Auth::Dbo::AuthInfo< UserType > Class Template Reference
Authentication module (Wt::Auth)

A default implementation for authentication data in Wt::Dbo. More...

`#include <Wt/Auth/Dbo/AuthInfo>`

Inheritance diagram for Wt::Auth::Dbo::AuthInfo< UserType >:
[legend]

List of all members.

## Public Types
typedef AuthToken< AuthInfo < UserType > > | AuthTokenType
| Type for an auth token.
typedef Wt::Dbo::collection < Wt::Dbo::ptr< AuthTokenType > > | AuthTokens
| Type for a collection of auth tokens.
typedef AuthIdentity< AuthInfo < UserType > > | AuthIdentityType
| Type for an identity.
typedef Wt::Dbo::collection < Wt::Dbo::ptr < AuthIdentityType > > | AuthIdentities
| Type for a collection of identites.
## Public Member Functions
| AuthInfo ()
| Constructor.
void | setUser (Wt::Dbo::ptr< UserType > user)
| Sets the user.
Wt::Dbo::ptr< UserType > | user () const
| Returns a reference to the user.
void | setPassword (const std::string &hash, const std::string &hashFunction, const std::string &hashSalt)
| Sets a password.
const std::string & | passwordHash () const
| Returns the password hash.
const std::string & | passwordMethod () const
| Returns the password method.
const std::string & | passwordSalt () const
| Returns the password salt.
void | setEmail (const std::string &email)
| Sets the email address.
const std::string & | email () const
| Returns the email address.
void | setUnverifiedEmail (const std::string &email)
| Sets the unverified email address.
const std::string & | unverifiedEmail () const
| Returns the unverified email address.
void | setEmailToken (const std::string &hash, const WDateTime &expires, User::EmailTokenRole role)
| Sets the email token.
const std::string & | emailToken () const
| Returns the email token.
const Wt::WDateTime & | emailTokenExpires () const
| Returns the email token expiration date.
User::EmailTokenRole | emailTokenRole () const
| Returns the email token role.
void | setStatus (User::Status status)
| Sets the status.
User::Status | status () const
| Returns the status.
void | setFailedLoginAttempts (int count)
| Sets the number of failed login attempts.
int | failedLoginAttempts () const
| Returns the number of failed login attempts.
void | setLastLoginAttempt (const Wt::WDateTime &dt)
| Sets the time of the last login attempt.
const Wt::WDateTime & | lastLoginAttempt () const
| Returns the time of the last login attempt.
const AuthTokens & | authTokens () const
| Returns the authentication tokens (read-only).
AuthTokens & | authTokens ()
| Returns the authentication tokens.
const AuthIdentities & | authIdentities () const
| Returns the authentication identities (read-only).
AuthIdentities & | authIdentities ()
| Returns the authentication identities.
WString | identity (const std::string &provider) const
| Finds an identity of a particular provider.
template<class Action >
void | persist (Action &a)
| Wt::Dbo persist implementation.

## Detailed Description

### template<class UserType>
class Wt::Auth::Dbo::AuthInfo< UserType >

A default implementation for authentication data in Wt::Dbo.

This class implements the requirements for use as a data type in Wt::Auth::Dbo::UserDatabase.

It is a template class, and needs as parameter the Dbo type which models a user (e.g. name, birth date, ...). Thus, this class only carries the authentication information for that user.

It contains collections to two other types:

- authTokens() references a collection of authentication tokens, see AuthService::setAuthTokensEnabled()
- authIdentities() references a collection of identities, which represent all the authentication identities this user has (e.g. a login name, but also an OAuth identity, etc...)

To use these classes, you need to map three classes to tables of your choice.

     class User; // your user Dbo type
     typedef Wt::Auth::Dbo::AuthInfo<User> AuthInfo;

     session->mapClass<User>("user");

     session->mapClass<AuthInfo>("auth_info");
     session->mapClass<AuthInfo::AuthIdentityType>("auth_identity");
     session->mapClass<AuthInfo::AuthTokenType>("auth_token");

See also:
  UserDatabase

## Member Function Documentation

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::email | ( |  | ) | const

Returns the email address.

See also:
  setEmail()

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::emailToken | ( |  | ) | const

Returns the email token.

See also:
  setEmailToken()

template<class UserType >

const Wt::WDateTime& Wt::Auth::Dbo::AuthInfo< UserType >::emailTokenExpires | ( |  | ) | const

Returns the email token expiration date.

See also:
  setEmailToken()

template<class UserType >

User::EmailTokenRole Wt::Auth::Dbo::AuthInfo< UserType >::emailTokenRole | ( |  | ) | const

Returns the email token role.

See also:
  setEmailToken()

template<class UserType >

int Wt::Auth::Dbo::AuthInfo< UserType >::failedLoginAttempts | ( |  | ) | const

Returns the number of failed login attempts.

See also:
  failedLoginAttempts()

template<class UserType >

WString Wt::Auth::Dbo::AuthInfo< UserType >::identity | ( | const std::string & | provider | ) | const

Finds an identity of a particular provider.

Note, a user could in theory have multiple identities from a single provider. If there are multiple, only one of them is returned.

template<class UserType >

const Wt::WDateTime& Wt::Auth::Dbo::AuthInfo< UserType >::lastLoginAttempt | ( |  | ) | const

Returns the time of the last login attempt.

See also:
  setLastLoginAttempt()

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::passwordHash | ( |  | ) | const

Returns the password hash.

See also:
  setPassword()

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::passwordMethod | ( |  | ) | const

Returns the password method.

See also:
  setPassword()

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::passwordSalt | ( |  | ) | const

Returns the password salt.

See also:
  setPassword()

template<class UserType >

void Wt::Auth::Dbo::AuthInfo< UserType >::setUser | ( | Wt::Dbo::ptr< UserType > | user | ) |

Sets the user.

This sets the user that owns this authentication information.

template<class UserType >

User::Status Wt::Auth::Dbo::AuthInfo< UserType >::status | ( |  | ) | const

Returns the status.

See also:
  setStatus()

template<class UserType >

const std::string& Wt::Auth::Dbo::AuthInfo< UserType >::unverifiedEmail | ( |  | ) | const

Returns the unverified email address.

See also:
  setUnverifiedEmail()

template<class UserType >

Wt::Dbo::ptr<UserType> Wt::Auth::Dbo::AuthInfo< UserType >::user | ( |  | ) | const

Returns a reference to the user.

See also:
  setUser()

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator