Class/Object

com.mohiva.play.silhouette.impl.providers

CredentialsProvider

Related Docs: object CredentialsProvider | package providers

Permalink

class CredentialsProvider extends Provider with ExecutionContextProvider

A provider for authenticating with credentials.

The provider supports the change of password hashing algorithms on the fly. Sometimes it may be possible to change the hashing algorithm used by the application. But the hashes stored in the backing store can't be converted back into plain text passwords, to hash them again with the new algorithm. So if a user successfully authenticates after the application has changed the hashing algorithm, the provider hashes the entered password again with the new algorithm and stores the auth info in the backing store.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. CredentialsProvider
  2. ExecutionContextProvider
  3. Provider
  4. AnyRef
  5. Any
  1. Hide All
  2. Show all
Visibility
  1. Public
  2. All

Instance Constructors

  1. new CredentialsProvider(authInfoRepository: AuthInfoRepository, passwordHasher: PasswordHasher, passwordHasherList: Seq[PasswordHasher])(implicit executionContext: ExecutionContext)

    Permalink

    authInfoRepository

    The auth info repository.

    passwordHasher

    The default password hasher used by the application.

    passwordHasherList

    List of password hasher supported by the application.

    executionContext

    The execution context to handle the asynchronous operations.

    Annotations
    @Inject()

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. def authenticate(credentials: Credentials): Future[LoginInfo]

    Permalink

    Authenticates a user with its credentials.

    Authenticates a user with its credentials.

    credentials

    The credentials to authenticate with.

    returns

    The login info if the authentication was successful, otherwise a failure.

  6. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  7. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  8. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  9. implicit val executionContext: ExecutionContext

    Permalink

    The execution context to handle the asynchronous operations.

    The execution context to handle the asynchronous operations.

    Definition Classes
    CredentialsProviderExecutionContextProvider
  10. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  11. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  12. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  13. def id: String

    Permalink

    Gets the provider ID.

    Gets the provider ID.

    returns

    The provider ID.

    Definition Classes
    CredentialsProviderProvider
  14. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  15. def loginInfo(credentials: Credentials): Future[LoginInfo]

    Permalink

    Gets the login info for the given credentials.

    Gets the login info for the given credentials.

    Override this method to manipulate the creation of the login info from the credentials.

    By default the credentials provider creates the login info with the identifier entered in the form. For some cases this may not be enough. It could also be possible that a login form allows a user to log in with either a username or an email address. In this case this method should be overridden to provide a unique binding, like the user ID, for the entered form values.

    credentials

    The credentials to authenticate with.

    returns

    The login info created from the credentials.

  16. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  17. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  18. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  19. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  20. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  21. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  22. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  23. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from ExecutionContextProvider

Inherited from Provider

Inherited from AnyRef

Inherited from Any

Ungrouped