com.malliina.web
package com.malliina.web
Type members
Classlikes
case class AuthCodeConf(brandName: String, conf: AuthConf, client: KeyClient, extraStartParams: Map[String, String], extraValidateParams: Map[String, String])
case class AuthEndpoints(authorizationEndpoint: FullUrl, tokenEndpoint: FullUrl, jwksUri: FullUrl) extends OpenIdConf
- Companion:
- object
case class Callback(requestState: Option[String], sessionState: Option[String], codeQuery: Option[String], requestNonce: Option[String], redirectUrl: FullUrl)
class CognitoAccessValidator(keys: Seq[KeyConf], issuer: Issuer, clientId: ClientId) extends CognitoValidator[AccessToken, CognitoUser]
class CognitoAuthFlow(host: String, identityProvider: IdentityProvider, validator: CognitoIdValidator, val oauth: GenericAuthConf) extends CallbackValidator[CognitoUser] with StaticFlowStart
- Companion:
- object
class CognitoIdValidator(keys: Seq[KeyConf], issuer: Issuer, val clientIds: Seq[ClientId]) extends CognitoValidator[IdToken, CognitoUser]
case class CognitoTokensJson(access_token: AccessToken, id_token: IdToken, refresh_token: RefreshToken)
- Companion:
- object
case class CognitoUser(username: Username, email: Option[Email], groups: Seq[String], verified: Verified) extends JWTUser
case class CognitoValidation(issuer: Issuer, tokenUse: String, clientIdKey: String, clientId: ClientId)
abstract class CognitoValidator[T <: TokenValue, U](keys: Seq[KeyConf], issuer: Issuer) extends StaticTokenValidator[T, U]
- Companion:
- object
class FacebookAuthFlow(authConf: AuthConf, http: HttpClient[IO]) extends StaticFlowStart with CallbackValidator[Email]
- Companion:
- object
class GitHubAuthFlow(authConf: AuthConf, http: HttpClient[IO]) extends StaticFlowStart with CallbackValidator[Email]
- Companion:
- object
case class GitHubEmail(email: Email, primary: Boolean, verified: Boolean, visibility: Option[String])
- Companion:
- object
case class GoogleTokens(idToken: IdToken, accessToken: AccessToken, expiresIn: Duration, tokenType: String) extends TokenSet
- Companion:
- object
case class KeyConf(n: Base64URL, kid: String, use: KeyUse, e: Base64URL, alg: JWSAlgorithm, kty: String)
- Companion:
- object
class LiberalValidator(conf: KeyConf, issuer: Issuer) extends StaticTokenValidator[AccessToken, Verified]
Accepts any claims, provides user as-is.
Accepts any claims, provides user as-is.
case class MicrosoftOAuthConf(authorizationEndpoint: FullUrl, tokenEndpoint: FullUrl, jwksUri: FullUrl, endSessionEndpoint: FullUrl, scopesSupported: Seq[String], issuer: Issuer, claimsSupported: Seq[String]) extends OpenIdConf
- Companion:
- object
case class MicrosoftTokens(idToken: IdToken, accessToken: Option[AccessToken], refreshToken: Option[RefreshToken], tokenType: Option[String], expiresIn: Option[Duration], scope: Option[String]) extends TokenSet
https://docs.microsoft.com/en-us/azure/active-directory/develop/active-directory-v2-protocols-oauth-code
- Value parameters:
- expiresIn
seconds
- idToken
only returned if scope "openid" is requested
- refreshToken
only returned if scope "offline_access" is requested
- tokenType
Bearer
- Companion:
- object
case class OAuthParams(client: KeyClient, conf: AuthConf, extraStartParams: Map[String, String], extraValidateParams: Map[String, String])
abstract class StandardAuthFlow[V](conf: AuthCodeConf) extends DiscoveringAuthFlow[V] with LoginHint[IO]
case class Start(authorizationEndpoint: FullUrl, params: Map[String, String], nonce: Option[String])
case class StaticConf(scope: String, authorizationEndpoint: FullUrl, tokenEndpoint: FullUrl, authConf: AuthConf)
abstract class StaticTokenValidator[T <: TokenValue, U](keys: Seq[KeyConf], issuer: Issuer) extends TokenValidator
- Type parameters:
- T
type of token
- U
type of user
- Value parameters:
- issuer
issuer
- keys
public keys used to validate tokens
- Companion:
- object
case class TwitterTokens(oauthToken: AccessToken, oauthTokenSecret: String, oauthCallbackConfirmed: Boolean)
- Companion:
- object