Package

com.mohiva.play.silhouette.impl

providers

Permalink

package providers

Contains com.mohiva.play.silhouette.api.Provider implementations that provide authentication for different schemes and services.

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. providers
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Type Members

  1. class BasicAuthProvider extends RequestProvider with PasswordProvider with Logger

    Permalink

    A request provider implementation which supports HTTP basic authentication.

    A request provider implementation which supports HTTP basic authentication.

    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.

  2. case class CommonSocialProfile(loginInfo: LoginInfo, firstName: Option[String] = None, lastName: Option[String] = None, fullName: Option[String] = None, email: Option[String] = None, avatarURL: Option[String] = None) extends SocialProfile with Product with Serializable

    Permalink

    The social profile contains all the data returned from the social providers after authentication.

    The social profile contains all the data returned from the social providers after authentication.

    Not every provider returns all the data defined in this class. This is also the representation of the most common profile information provided by the social providers. The data can be used to create a new identity for the first authentication(which is also the registration) or to update an existing identity on every subsequent authentication.

    loginInfo

    The linked login info.

    firstName

    Maybe the first name of the authenticated user.

    lastName

    Maybe the last name of the authenticated user.

    fullName

    Maybe the full name of the authenticated user.

    email

    Maybe the email of the authenticated provider.

    avatarURL

    Maybe the avatar URL of the authenticated provider.

  3. trait CommonSocialProfileBuilder extends AnyRef

    Permalink

    The profile builder for the common social profile.

  4. class CredentialsProvider extends PasswordProvider

    Permalink

    A provider for authenticating with credentials.

    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.

  5. class DefaultSocialStateHandler extends SocialStateHandler

    Permalink

    The base implementation of the SocialStateHandler.

  6. trait OAuth1Constants extends AnyRef

    Permalink

    The OAuth1 constants.

  7. case class OAuth1Info(token: String, secret: String) extends AuthInfo with Product with Serializable

    Permalink

    The OAuth1 details.

    The OAuth1 details.

    token

    The consumer token.

    secret

    The consumer secret.

  8. trait OAuth1Provider extends SocialProvider with OAuth1Constants with Logger

    Permalink

    Base implementation for all OAuth1 providers.

  9. trait OAuth1Service extends AnyRef

    Permalink

    The OAuth1 service trait.

  10. case class OAuth1Settings(requestTokenURL: String, accessTokenURL: String, authorizationURL: String, callbackURL: String, apiURL: Option[String] = None, consumerKey: String, consumerSecret: String) extends Product with Serializable

    Permalink

    The OAuth1 settings.

    The OAuth1 settings.

    requestTokenURL

    The request token URL provided by the OAuth provider.

    accessTokenURL

    The access token URL provided by the OAuth provider.

    authorizationURL

    The authorization URL provided by the OAuth provider.

    callbackURL

    The callback URL to the application after a successful authentication on the OAuth provider. The URL can be a relative path which will be resolved against the current request's host.

    apiURL

    The URL to fetch the profile from the API. Can be used to override the default URL hardcoded in every provider implementation.

    consumerKey

    The consumer ID provided by the OAuth provider.

    consumerSecret

    The consumer secret provided by the OAuth provider.

  11. trait OAuth1TokenSecret extends AnyRef

    Permalink

    The OAuth1 token secret.

    The OAuth1 token secret.

    This represents the oauth_token_secret returned from the provider with the request token and which is then needed to retrieve the access token. The secret must be stored between two requests and this implementation provides an abstract way to store the secret in different locations.

  12. trait OAuth1TokenSecretProvider extends AnyRef

    Permalink

    Provides the token secret for OAuth1 authentication providers.

  13. trait OAuth2Constants extends AnyRef

    Permalink

    The OAuth2 constants.

  14. case class OAuth2Info(accessToken: String, tokenType: Option[String] = None, expiresIn: Option[Int] = None, refreshToken: Option[String] = None, params: Option[Map[String, String]] = None) extends AuthInfo with Product with Serializable

    Permalink

    The OAuth2 info.

    The OAuth2 info.

    accessToken

    The access token.

    tokenType

    The token type.

    expiresIn

    The number of seconds before the token expires.

    refreshToken

    The refresh token.

    params

    Additional params transported in conjunction with the token.

  15. trait OAuth2Provider extends SocialStateProvider with OAuth2Constants with Logger

    Permalink

    Base implementation for all OAuth2 providers.

  16. case class OAuth2Settings(authorizationURL: Option[String] = None, accessTokenURL: String, redirectURL: Option[String] = None, apiURL: Option[String] = None, clientID: String, clientSecret: String, scope: Option[String] = None, authorizationParams: Map[String, String] = Map.empty, accessTokenParams: Map[String, String] = Map.empty, customProperties: Map[String, String] = Map.empty) extends Product with Serializable

    Permalink

    The OAuth2 settings.

    The OAuth2 settings.

    authorizationURL

    The authorization URL provided by the OAuth provider.

    accessTokenURL

    The access token URL provided by the OAuth provider.

    redirectURL

    The redirect URL to the application after a successful authentication on the OAuth provider. The URL can be a relative path which will be resolved against the current request's host.

    apiURL

    The URL to fetch the profile from the API. Can be used to override the default URL hardcoded in every provider implementation.

    clientID

    The client ID provided by the OAuth provider.

    clientSecret

    The client secret provided by the OAuth provider.

    scope

    The OAuth2 scope parameter provided by the OAuth provider.

    authorizationParams

    Additional params to add to the authorization request.

    accessTokenParams

    Additional params to add to the access token request.

    customProperties

    A map of custom properties for the different providers.

  17. trait OpenIDConstants extends AnyRef

    Permalink

    The OpenID constants.

  18. case class OpenIDInfo(id: String, attributes: Map[String, String]) extends AuthInfo with Product with Serializable

    Permalink

    The OpenID details.

    The OpenID details.

    id

    The openID.

    attributes

    The attributes returned from the provider.

  19. trait OpenIDProvider extends SocialProvider with OpenIDConstants with Logger

    Permalink

    Base implementation for all OpenID providers.

  20. trait OpenIDService extends AnyRef

    Permalink

    The OpenID service trait.

  21. case class OpenIDSettings(providerURL: String, callbackURL: String, axRequired: Map[String, String] = Map.empty, axOptional: Map[String, String] = Map.empty, realm: Option[String] = None) extends Product with Serializable

    Permalink

    The OpenID settings.

    The OpenID settings.

    providerURL

    The OpenID provider URL used if no openID was given. @see https://willnorris.com/2009/07/openid-directed-identity-identifier-select

    callbackURL

    The callback URL to the application after a successful authentication on the OpenID provider. The URL can be a relative path which will be resolved against the current request's host.

    axRequired

    Required attributes to return from the provider after a successful authentication.

    axOptional

    Optional attributes to return from the provider after a successful authentication.

    realm

    An URL pattern that represents the part of URL-space for which an OpenID Authentication request is valid.

  22. trait PasswordProvider extends Provider with ExecutionContextProvider

    Permalink

    Base provider which provides shared functionality to authenticate with a password.

  23. trait PublishableSocialStateItemHandler extends AnyRef

    Permalink

    A state item handler which can publish its internal state to the client.

    A state item handler which can publish its internal state to the client.

    Some state item handlers, like the CSRF state handler, needs the ability to publish state to a cookie. So if you have such a state item handler, then mixin this trait, to publish the state item to the client.

  24. trait SocialProfile extends AnyRef

    Permalink

    The social profile contains all the data returned from the social providers after authentication.

  25. trait SocialProfileBuilder extends AnyRef

    Permalink

    Builds the social profile.

  26. trait SocialProfileParser[C, P <: SocialProfile, A <: AuthInfo] extends AnyRef

    Permalink

    Parses a social profile.

    Parses a social profile.

    A parser transforms the content returned from the provider into a social profile instance. Parsers can be reused by other parsers to avoid duplicating code.

    C

    The content type to parse a profile from.

    P

    The type of the profile to parse to.

    A

    The type of the auth info.

  27. trait SocialProvider extends Provider with SocialProfileBuilder with ExecutionContextProvider

    Permalink

    The base interface for all social providers.

  28. case class SocialProviderRegistry(providers: Seq[SocialProvider]) extends Product with Serializable

    Permalink

    A registry that holds and provides access to all social provider implementations.

    A registry that holds and provides access to all social provider implementations.

    providers

    The list of social providers.

  29. case class SocialState(items: Set[SocialStateItem]) extends Product with Serializable

    Permalink

    Represents the state a social provider can handle.

    Represents the state a social provider can handle.

    The state consists of a Set containing different state items.

    items

    The list of social state items.

  30. trait SocialStateHandler extends AnyRef

    Permalink

    Provides a way to handle different types of state for providers that allow a state param.

    Provides a way to handle different types of state for providers that allow a state param.

    Some authentication protocols defines a state param which can be used to transport some state to an authentication provider. The authentication provider sends this state back to the application, after the authentication to the provider was granted.

    The state parameter can be used for different things. Silhouette provides two state handlers out of the box. One state handler can transport additional user state to the provider. This could be an URL were the user should be redirected after authentication to the provider, or any other per-authentication based state. An other important state handler protects the application for CSRF attacks.

  31. trait SocialStateItem extends AnyRef

    Permalink

    An item which can be a part of a social state.

    An item which can be a part of a social state.

    The social state consists of one state item per handler. So this item describes the state an handler can handle. A state item can be of any type. The handler to which the state item pertains, must be able to serialize/deserialize this state item.

  32. trait SocialStateItemHandler extends AnyRef

    Permalink

    Handles state for different purposes.

  33. trait SocialStateProvider extends SocialProvider

    Permalink

    Extends the SocialProvider with the ability to handle provider specific state.

  34. case class StatefulAuthInfo[+A <: AuthInfo, +S <: SocialStateItem](authInfo: A, userState: S) extends Product with Serializable

    Permalink

    A stateful auth info, wraps the AuthInfo with user state.

    A stateful auth info, wraps the AuthInfo with user state.

    A

    The type of the auth info.

    S

    The type of the user state.

    authInfo

    The auth info.

    userState

    The user state.

Value Members

  1. object BasicAuthProvider

    Permalink

    The companion object.

  2. object CredentialsProvider

    Permalink

    The companion object.

  3. object DefaultSocialStateHandler

    Permalink

    The companion object for the DefaultSocialStateHandler class.

  4. object OAuth1Provider extends OAuth1Constants

    Permalink

    The OAuth1Provider companion object.

  5. object OAuth2Info extends OAuth2Constants with Serializable

    Permalink

    The Oauth2 info companion object.

  6. object OAuth2Provider extends OAuth2Constants

    Permalink

    The OAuth2Provider companion object.

  7. object OpenIDProvider extends OpenIDConstants

    Permalink

    The OpenIDProvider companion object.

  8. object PasswordProvider

    Permalink

    The companion object.

  9. object SocialProfileBuilder

    Permalink

    The companion object.

  10. object SocialStateItem

    Permalink

    The companion object of the SocialStateItem.

  11. package oauth1

    Permalink
  12. package oauth2

    Permalink
  13. package openid

    Permalink
  14. package state

    Permalink

Inherited from AnyRef

Inherited from Any

Ungrouped