Package

com.gu

googleauth

Permalink

package googleauth

Visibility
  1. Public
  2. All

Type Members

  1. trait Actions extends UserIdentifier

    Permalink
  2. case class DiscoveryDocument(authorization_endpoint: String, token_endpoint: String, userinfo_endpoint: String) extends Product with Serializable

    Permalink
  3. case class Error(errors: Seq[ErrorInfo], code: Int, message: String) extends Product with Serializable

    Permalink
  4. case class ErrorInfo(domain: String, reason: String, message: String) extends Product with Serializable

    Permalink
  5. case class FilterExemption(path: String) extends Product with Serializable

    Permalink
  6. trait Filters extends UserIdentifier

    Permalink
  7. case class GoogleAuthConfig(clientId: String, clientSecret: String, redirectUrl: String, domain: Option[String], maxAuthAge: Option[Duration] = None, enforceValidity: Boolean = true, prompt: Option[String] = None) extends Product with Serializable

    Permalink

    The configuration class for Google authentication

    The configuration class for Google authentication

    clientId

    The ClientID from the developer dashboard

    clientSecret

    The client secret from the developer dashboard

    redirectUrl

    The URL to return to after authentication has completed

    domain

    An optional domain to restrict login to (e.g. guardian.co.uk)

    maxAuthAge

    An optional duration after which you want a user to be prompted for their password again

    enforceValidity

    A boolean indicating whether you want a user to be re-authenticated when their session expires

    prompt

    An optional space delimited, case sensitive list of ASCII string values that specifies whether the Authorization Server prompts the End-User for reauthentication and consent

  8. class GoogleAuthException extends Exception

    Permalink
  9. class GoogleGroupChecker extends AnyRef

    Permalink

    The Directory API can tell you what groups (ie Google Group) a user is in.

    The Directory API can tell you what groups (ie Google Group) a user is in.

    You can use a Service Account to access the Directory API (in fact, non-Service access, ie web-user, doesn't seem to work?). The Service Account needs the following scope: https://www.googleapis.com/auth/admin.directory.group.readonly

    You also need a separate domain user account (eg [email protected]), which will be 'impersonated' when making the calls.

  10. case class GoogleServiceAccount(email: String, privateKey: PrivateKey, impersonatedUser: String) extends Product with Serializable

    Permalink

    A Service Account calls Google APIs on behalf of your application instead of an end-user.

    A Service Account calls Google APIs on behalf of your application instead of an end-user. https://developers.google.com/identity/protocols/OAuth2#serviceaccount

    You can create a service account in the Google Developers Console:

    https://developers.google.com/identity/protocols/OAuth2ServiceAccount#creatinganaccount

    email

    email address of the Service Account

    privateKey

    the Service Account's private key - from the P12 file generated when the Service Account was created

    impersonatedUser

    the email address of the user the application will be impersonating

  11. case class JsonWebToken(jwt: String) extends Product with Serializable

    Permalink
  12. case class JwtClaims(iss: String, sub: String, azp: String, email: String, at_hash: String, email_verified: Boolean, aud: String, hd: Option[String], iat: Long, exp: Long) extends Product with Serializable

    Permalink
  13. case class Token(access_token: String, token_type: String, expires_in: Long, id_token: String) extends Product with Serializable

    Permalink
  14. trait UserIdentifier extends AnyRef

    Permalink
  15. case class UserIdentity(sub: String, email: String, firstName: String, lastName: String, exp: Long, avatarUrl: Option[String]) extends Product with Serializable

    Permalink
  16. case class UserInfo(gender: Option[String], sub: Option[String], name: String, given_name: String, family_name: String, profile: Option[String], picture: Option[String], email: String, locale: String, hd: Option[String]) extends Product with Serializable

    Permalink

Value Members

  1. object AuthenticatedRequest

    Permalink
  2. object DiscoveryDocument extends Serializable

    Permalink
  3. object Error extends Serializable

    Permalink
  4. object ErrorInfo extends Serializable

    Permalink
  5. object GoogleAuth

    Permalink
  6. object GoogleAuthFilters

    Permalink
  7. object JwtClaims extends Serializable

    Permalink
  8. object Token extends Serializable

    Permalink
  9. object UserIdentity extends Serializable

    Permalink
  10. object UserInfo extends Serializable

    Permalink

Ungrouped