1. 22 Mar, 2010 1 commit
    • Leigh Stoller's avatar
      Finish up user deletion. The big visible change is that when a user is · 2965922b
      Leigh Stoller authored
      deleted, they still remain in the user table with a status of
      "archived", but since all the queries in the system now use uid_idx
      instead of uid, it is safe to reuse a uid since they are no longer
      ambiguous. 
      
      The reason for not deleting users from the users table is so that the
      stats records can refer to the original record (who was that person
      named "mike"). This is very handy and worth the additional effort it
      has taken.
      
      There is no way to ressurect a user, but it would not be hard to add.
      2965922b
  2. 30 Oct, 2008 1 commit
  3. 12 Nov, 2007 1 commit
  4. 01 Nov, 2007 1 commit
  5. 10 Jan, 2007 1 commit
  6. 25 Oct, 2006 1 commit
    • Leigh Stoller's avatar
      Makefile Whacking! Try to deal with the problem caused by the delay · 7590f9c5
      Leigh Stoller authored
      between when something is installed and when post-install runs. Short
      of a global lock (which we probably need anyway someday), my solution
      is this. In your makefiles, add these variables before the line that
      has the include of $(TESTBED_SRCDIR)/GNUmakerules:
      
      	SETUID_BIN_SCRIPTS   =
      	SETUID_SBIN_SCRIPTS  =
      
      I have added three new rules to GNUmakerules that look like this:
      
      	$(addprefix $(SBINDIR)/, $(SETUID_SBIN_SCRIPTS)): $(SBINDIR)/%: %
      		echo "Installing (setuid) $<"
      		-mkdir -p $(INSTALL_SBINDIR)
      		$(SUDO) $(INSTALL) -o root -m 4755 $< $@
      
      Yep, your eyes ain't lying to you; use sudo to run the target so that
      install does the right thing (which is that the old file is not
      replaced until the new one has the proper attributes on it).
      
      Note that post-install is still needed for the initial install, but
      should no longer be needed for day to day installs since all that other
      stuff post-install does is mkdir/chmod on directories.
      7590f9c5
  7. 13 Jun, 2006 1 commit
  8. 14 Mar, 2006 1 commit
  9. 07 Mar, 2006 1 commit
  10. 06 Mar, 2006 4 commits
  11. 04 Oct, 2005 1 commit
  12. 30 Sep, 2005 1 commit
  13. 13 Sep, 2005 1 commit
  14. 01 Sep, 2005 1 commit
  15. 18 Aug, 2005 1 commit
  16. 22 Jun, 2005 1 commit
  17. 28 Mar, 2005 1 commit
    • Leigh Stoller's avatar
      Implement a cross machine login so that user is automatically logged · 9310dedb
      Leigh Stoller authored
      into the Wiki when clicking on the My Wiki's link. Works like this:
      
      * The My Wiki's link points to new page, gotowiki.php3, on boss.
      
      * The gotowiki page looks for a new cookie in the user's browser
        which holds a key (the usual random data run through md5).
      
      * If the key does not exist, generate it and store it in the user
        browser (expires when browser is closed or emulab login times out).
        Also invoke backend script wikixlogin, which will send the key over
        to the wiki server (via ssh), which will write the key into a file
        named by the user account.
      
      * The user's browser is redirected to the wiki server's login script
        (twiki/bin/newlogon), but instead of username and password, we send
        over username and key (as well as redurl= parameter which is the
        page on the wiki server to redirect to later).
      
      * The new login script looks for this case, and opens the file named
        by the user and compares the key it gets with what is in the file.
        If they match, the user login succeeds and the browser is once again
        redirected, but this time to the page it wants on the wiki server.
        If the key does not match, the browser is redirected to the login
        page (so user can enter username password normally). The redurl
        parameter is passed along as well.
      
      * Subsequent clicks on My Wiki's will not need to invoke the backend
        script, since the cookie will be in the browser.
      9310dedb
  18. 26 Mar, 2005 2 commits
  19. 25 Mar, 2005 4 commits
    • Leigh Stoller's avatar
      Okay, I think I am finally done with WikiWhacking (or WhackingTheWiki?) · 90dcbbe2
      Leigh Stoller authored
      for the near future. Two big changes:
      
      * Add WikiOnly accounts. An external user can register for an account on
        the wiki. Rather then use the registration stuff that comes with TWiki,
        redirect to new Emulab web page so we can manage all of the wiki accounts
        from one place. I modified the joinproject page to spit out a subset of
        the required fields so that its simple to get a wiki only account (just a
        few things to fill in).
      
        In keeping with current security practices, we still generate a
        verification email message to ensure the email address works. However,
        when the user completes the verification, the wiki account is created right
        away, rather then waiting for someone to approve it (since that would
        defeat the entire point of the wiki).
      
        Aside: I have not thought much about the conversion from a wiki-only
        account to a real account. That is going to happen, and it would be nice
        if that step did not require one of use to go in and hack the DB. Will
        cross that moat later.
      
        Aside: Rather beat up on the modify user info page too much, I continue
        to spit out the same form, but mark most of the fields as not required,
        and allow wiki-only people to not specify them.
      
      * Both the joinproject and newproject pages sport a new WikiName field so
        that users can select their own WikiName. I added some JavaScript to
        both pages that generate a suitable wikiname from the FullName field, so
        that as soon as the user clicks out of the FullName, a default wikiname is
        inserted in the field.
      
        Both pages verify the wikinames by checking to make sure it is not
        already in use, and that it meets the WikiRules for WikiTopic names.
        (someone please shoot me if I continue to use WikiNotation).
      90dcbbe2
    • Leigh Stoller's avatar
      Minor formatting tweaks and fixes. · 1b22ebcc
      Leigh Stoller authored
      1b22ebcc
    • Leigh Stoller's avatar
      Commit final version of wikisetup, which is used to initialize the · 0f86b38d
      Leigh Stoller authored
      wiki pages for projects and users on an existing testbed. This
      assumes I can easily partition the actual twiki code into a
      distribution that we can give people. I haven't really thought much
      about that, but I assume its not too hard.
      0f86b38d
    • Leigh Stoller's avatar
      Move the permission notes into separate wiki "include" files so that I · ee499cb1
      Leigh Stoller authored
      do not replicate the notes into 1200 files (and of course, so we
      easily change the notes later).
      ee499cb1
  20. 24 Mar, 2005 3 commits
  21. 21 Mar, 2005 3 commits
    • Leigh Stoller's avatar
      Aside from some cosmetic changes and some bug fixes. · 9137350e
      Leigh Stoller authored
      The main change is that I now add an .htpasswd entry for the user's
      emulab ID (stoller) in addition to the wikiname (LeighStoller). I also
      create a mapping file (with perl dbmopen) to map from the Emulab ID to
      the WikiName. This lets people log in using their Emulab ID, which is
      pretty much required since we cannot pass the token to http basic auth
      when it puts up the dialog box. Without this, we will forever be
      answering questions from confused users.
      
      TWiki already had something of a mapping mechanism, but it was broken
      and horribly inefficient, so I ended up whacking the twiki code to
      make it work with the above mentioned dbm file.
      9137350e
    • Leigh Stoller's avatar
      Add serialization (the usual locking code) to prevent corruption of · 21b37a35
      Leigh Stoller authored
      the .htpasswd file on ops. Note that I have disabled registration and
      password changes from the twiki interface on ops for now. I'll think
      about this as needed.
      21b37a35
    • Leigh Stoller's avatar
      Minor cosmetic changes. · 98ad1058
      Leigh Stoller authored
      98ad1058
  22. 20 Mar, 2005 1 commit