Package-level declarations

Types

Link copied to clipboard
@Serializable(with = ClientDataSerializer::class)
sealed class ClientData : KoinComponent

OAuthクライアントデータのシールドクラス Public/Confidentialの両タイプをサポート

Link copied to clipboard
object ClientDataSerializer : JsonContentPolymorphicSerializer<ClientData>

ClientDataのJSONシリアライザ clientSecretの有無でPublic/Confidentialを判別

Link copied to clipboard
@Serializable
data class OIDCDiscoveryResponse(val issuer: String, val authorizationEndpoint: String, val tokenEndpoint: String, val userinfoEndpoint: String, val jwksUri: String, val responseTypesSupported: List<String>, val subjectTypesSupported: List<String>, val idTokenSigningAlgValuesSupported: List<String>, val scopesSupported: List<String>, val tokenEndpointAuthMethodsSupported: List<String>, val claimsSupported: List<String>, val grantTypesSupported: List<String>, val codeChallengeMethodsSupported: List<String>, val introspectionEndpoint: String, val endSessionEndpoint: String)

OpenID Connect Discovery Response OpenID Connect Discovery 1.0 準拠

Link copied to clipboard
@Serializable
data class TokenData(val accessToken: String, val tokenType: String, val expiresIn: Int, val refreshToken: String, val idToken: String? = null, val scope: String? = null)

OAuth2.0/OIDC トークンレスポンス RFC 6749 Section 5.1 および OpenID Connect Core 1.0 Section 3.1.3.3 準拠

Link copied to clipboard
@Serializable
data class UserInfoResponse(val sub: String, val name: String? = null, val picture: String? = null, val preferredUsername: String? = null, val email: String? = null, val emailVerified: Boolean? = null, val roles: List<String>? = null)

OpenID Connect UserInfo Response OIDC Core Section 5.3.2 準拠