Package-level declarations
Types
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
interface IModelixAuthorizationConfig
Reduced interface exposed to users of the plugin.
Link copied to clipboard
Link copied to clipboard
data class KeycloakResourceType(val name: String, val scopes: Set<KeycloakScope>, val createByUser: Boolean = false)
Link copied to clipboard
Link copied to clipboard
object KeycloakUtils
Link copied to clipboard
object ModelixAuthorization : BaseRouteScopedPlugin<IModelixAuthorizationConfig, ModelixAuthorizationPluginInstance>
JWT based authorization plugin.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
class NoPermissionException(val user: AccessTokenPrincipal?, val resourceId: String?, val scope: String?, message: String) : RuntimeException
Link copied to clipboard
Link copied to clipboard
class UnknownPermissionException(val permissionId: String, val unknownElement: String?, cause: Exception? = null) : Exception
Functions
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun createModelixAccessToken(algorithm: Algorithm, user: String, grantedPermissions: List<String>, additionalTokenContent: (JWTCreator.Builder) -> Unit = {}): String
Creates a valid JWT token that is compatible to servers with the ModelixAuthorization plugin installed.
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
fun Route.requiresPermission(resource: KeycloakResource, permissionType: EPermissionType, body: Route.() -> Unit)
fun Route.requiresPermission(resource: KeycloakResource, scope: KeycloakScope, body: Route.() -> Unit)
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard