You are here: Foswiki>Tasks Web>Item1551 (19 Mar 2011, GeorgeClark)Edit Attach

Item1551: Enhancements for Sudo feature

pencil
Priority: Enhancement
Current State: Proposal Required
Released In: n/a
Target Release: n/a
Applies To: Engine
Component: FoswikiLoginManager, FoswikiUsability
Branches:
Reported By: GeorgeClark
Waiting For:
Last Change By: GeorgeClark
There are a few enhancements needed to improve the security of the sudo login.

  • sudo login should have a configurable session life shorter than the regular user defaults.
  • sudo login should be optionally restricted to a list of authorized sudoers
    • Requires that sudo should only be allowed by an authenticated user.
    • sudo list should be specified in configure
  • sudo should ideally elevate privilege without changing user identity.

With the current implementation we could possibly improve usability by shipping an AdminUserLeftBar topic by default that includes a "logout" link along with a clearly visible indicator that the user is logged in as the admin.

(10:37:13 PM) SvenDowideit_: sudo is implemented as a sneaky LoginMgr trick
(10:37:23 PM) SvenDowideit_: where by the sessions can be stacked
(10:37:50 PM) Lynnwood left the room (quit: ).
(10:38:00 PM) SvenDowideit_: the downside is that part of what makes it useful is when the real user mgr doesn't work
(10:38:18 PM) SvenDowideit_: but still - make a feature req
(10:38:43 PM) SvenDowideit_: i recon it might be safer to define the sudoer's list in configure
(10:39:04 PM) SvenDowideit_: so like /etc/sudoers its outside the first compromise list
(10:39:23 PM) SvenDowideit_: and in that case, it will be ~4 lines of code?
(10:39:30 PM) SvenDowideit_: ie, more docco needed than code
(10:39:33 PM) gac410: I've been trying to follow the tweaks in LoginManager,  etc.  grepping around for admin,  sudo, etc.
(10:39:56 PM) SvenDowideit_: iirc the sudo func is all in one place in the login mgr
(10:40:01 PM) gac410: So some cfg variable is list of users, instead of pointer to sudoers topic.
(10:40:05 PM) SvenDowideit_: ya
(10:40:38 PM) gac410: Yes - one place in LoginManager but a few other mentions here and there in other modules.
(10:40:45 PM) SvenDowideit_: :)
(10:42:24 PM) gac410: If LoginManager is not working, user could still access configure to remove list, restoring default operation,  or if necessary edit LocalSite.cfg.  
(10:42:42 PM) gac410: I figure default should be if no list configured, it works exactly as-is today.
(10:42:50 PM) SvenDowideit_: yup, me too
(10:42:55 PM) ***SvenDowideit_ can leave you to it :P
(10:43:31 PM) gac410: Some future thinking might be to elevate privilege without changing identity.    So topic still show *who* changed them 
(10:43:52 PM) gac410: But that is getting much more complex I suspect.
(10:44:37 PM) SvenDowideit_: er, yes - ish
(10:45:00 PM) SvenDowideit_: the original proposla was to keep the ID, with a (admin) postfix
(10:45:15 PM) SvenDowideit_: but start the feature req
(10:45:18 PM) gac410: Hack might be to have sudo temporarily add user to AdminGroup  maybe in session, but not in topic.
(10:45:24 PM) SvenDowideit_: i ca't entirely recal why i didn't implement it
(10:45:32 PM) SvenDowideit_: exactly
(10:46:20 PM) SvenDowideit_: actually
(10:46:29 PM) gac410: And another request would be a timeout for sudo.   I finally added a big red flag to the Admin user WebLeftBar, so I had a hope of remembering that I had sudo'd in (or sudude?)
(10:46:43 PM) SvenDowideit_: you culd probly do that by using the server side session and tweaking the isAdmin method
(10:47:15 PM) SvenDowideit_: timeout - reduce the session timeout by X is sudo?
(10:47:41 PM) gac410: I'll put all this in a feature request and then maybe try my hand at the simpler stuff.     We probably need it where I work, and would be good incentive to light a fire on the FW migration.
(10:48:04 PM) SvenDowideit_: yup :)
(10:48:11 PM) SvenDowideit_: thats how i sneak it in too

ItemTemplate edit

Summary Enhancements for Sudo feature
ReportedBy GeorgeClark
Codebase
SVN Range Foswiki-1.0.0, Thu, 08 Jan 2009, build 1878
AppliesTo Engine
Component FoswikiLoginManager, FoswikiUsability
Priority Enhancement
CurrentState Proposal Required
WaitingFor
Checkins
TargetRelease n/a
ReleasedIn n/a
Topic revision: r3 - 19 Mar 2011, GeorgeClark - This page was cached on 23 Jan 2021 - 16:41.

The copyright of the content on this website is held by the contributing authors, except where stated elsewhere. See Copyright Statement. Creative Commons License    Legal Imprint    Privacy Policy