You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
my front-end application requires authentication/authorization (auth/authz) in order to do anything useful.
for users who need auth/authz, i want to redirect them in rails, so as not to force them to load all of ember just to see a 'you are not authorized' message. i want all auth/authz logic & flows to be entirely in rails, and not require coordination in the ember code.
currently the only way i can see to add a before_action to a front end build is via a monkey patch. this is brittle & a likely source for unexpected behavior
i'm not stuck on either of these. just trying to brainstorm some options.
inherit from ::ApplicationController
change FrontEndBuilds::ApplicationController to inherit from ::ApplicationController. This gives the containing application a way to add before_action & other hooks without monkey patching
this might be even nicer than the ::ApplicationController change, but i'm not sure how this would work exactly. (where/how would my :do_authentication_things method be defined?)
it would allow me to easily integrate FEB with other aspects of my application, like handling cases where i want to deny access to a resource.
re that 2nd point: i'm not doing something exactly like this, but similar. raising an exception which signals "access is denied", & which is then handed by a rescue_from in ::ApplicationController. I'd like to be able to extend this approach to my FEB endpoints also, but that's not possible w/ only a before_action.
Allowing me to add concerns into FrontEndBuilds::ApplicationController might be another acceptable option. I could encapsulate the behaviors i want in concerns, and add them to both ::ApplicationController and FrontEndBuilds::ApplicationController. afaik, I can add both before_action and rescue_from via concerns.
problem
before_action
to a front end build is via a monkey patch. this is brittle & a likely source for unexpected behaviorfor example:
possible solutions
i'm not stuck on either of these. just trying to brainstorm some options.
inherit from ::ApplicationController
change FrontEndBuilds::ApplicationController to inherit from
::ApplicationController
. This gives the containing application a way to addbefore_action
& other hooks without monkey patchingsupport a per-frontend
before_action
explicitlythis might be even nicer than the
::ApplicationController
change, but i'm not sure how this would work exactly. (where/how would my:do_authentication_things
method be defined?)cc @samselikoff
The text was updated successfully, but these errors were encountered: