interface SecurityCtx<USER, ROLE>
abstract fun getCurrentUser(): Out<SecurityError, USER>
abstract fun hasRole(role: ROLE): Boolean