Trait

scalaoauth2.provider

AuthorizationHandler

Related Doc: package provider

Permalink

trait AuthorizationHandler[U] extends AnyRef

Provide Authorization phases support for using OAuth 2.0.

[Authorization phases]
Authorization Code Grant
Refresh Token Grant
Resource Owner Password Credentials Grant
Client Credentials Grant
Implicit Grant
Linear Supertypes
AnyRef, Any
Known Subclasses
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. AuthorizationHandler
  2. AnyRef
  3. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Abstract Value Members

  1. abstract def createAccessToken(authInfo: AuthInfo[U]): Future[AccessToken]

    Permalink

    Creates a new access token by authorized information.

    Creates a new access token by authorized information.

    authInfo

    This value is already authorized by system.

    returns

    Access token returns to client.

  2. abstract def deleteAuthCode(code: String): Future[Unit]

    Permalink

    Deletes an authorization code.

    Deletes an authorization code.

    Called when an AccessToken has been successfully issued via an authorization code.

    If you don't support Authorization Code Grant, then you don't need to implement this method.

    code

    Client-sent authorization code

  3. abstract def findAuthInfoByCode(code: String): Future[Option[AuthInfo[U]]]

    Permalink

    Find authorized information by authorization code.

    Find authorized information by authorization code.

    If you don't support Authorization Code Grant then doesn't need implementing.

    code

    Client sends authorization code which is registered by system.

    returns

    Return authorized information that matched the code.

  4. abstract def findAuthInfoByRefreshToken(refreshToken: String): Future[Option[AuthInfo[U]]]

    Permalink

    Find authorized information by refresh token.

    Find authorized information by refresh token.

    If you don't support Refresh Token Grant then doesn't need implementing.

    refreshToken

    Client sends refresh token which is created by system.

    returns

    Return authorized information that matched the refresh token.

  5. abstract def findUser(maybeCredential: Option[ClientCredential], request: AuthorizationRequest): Future[Option[U]]

    Permalink

    Authenticate the user that issued the authorization request.

    Authenticate the user that issued the authorization request. Client credential, Password and Implicit Grant call this method.

    maybeCredential

    client credential parsed from request

    request

    Request sent by client.

  6. abstract def getStoredAccessToken(authInfo: AuthInfo[U]): Future[Option[AccessToken]]

    Permalink

    Returns stored access token by authorized information.

    Returns stored access token by authorized information.

    If want to create new access token then have to return None

    authInfo

    This value is already authorized by system.

    returns

    Access token returns to client.

  7. abstract def refreshAccessToken(authInfo: AuthInfo[U], refreshToken: String): Future[AccessToken]

    Permalink

    Creates a new access token by refreshToken.

    Creates a new access token by refreshToken.

    authInfo

    This value is already authorized by system.

    returns

    Access token returns to client.

  8. abstract def validateClient(maybeCredential: Option[ClientCredential], request: AuthorizationRequest): Future[Boolean]

    Permalink

    Verify proper client with parameters for issue an access token.

    Verify proper client with parameters for issue an access token. Note that per the OAuth Specification, a Client may be valid if it only contains a client ID but no client secret (common with Public Clients). However, if the registered client has a client secret value the specification requires that a client secret must always be provided and verified for that client ID.

    maybeCredential

    client credential parsed from request

    request

    Request sent by client.

    returns

    true if request is a regular client, false if request is a illegal client.

Concrete 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 clone(): AnyRef

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  11. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  12. final def ne(arg0: AnyRef): Boolean

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

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

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

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

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

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

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

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

Inherited from AnyRef

Inherited from Any

Ungrouped