hamstar / Braincase

A personal knowledge base system for expansion of the mind in a virtual space.
4 stars 1 forks source link

Initialize DropBox from a web interface #229

Closed hamstar closed 12 years ago

hamstar commented 12 years ago

Dropbox needs to be initialized from a web interface.

This is blocked by #230

hamstar commented 12 years ago

This will be tricky because the dropbox setup needs to be run as the user that is going to be interfacing with it. However it is very insecure to run a script as another user with the PHP/Apache setup.

The best way I can think of is:

  1. User selects to enable dropbox backups on web interface
  2. Web interface saves the username to a queue of users that need dropbox enabled
  3. Web interface tells user to check their emails soon
  4. Cron runs script as root that runs through the queue (runs every 5 mins)
  5. Script does SU into user account, runs dropbox setup
  6. Script records the URL reported for each user dropbox setup
  7. Script emails user the URL
hamstar commented 12 years ago

The user setup will be managed by pages in the wiki. These pages are accessible in the wiki and the filesystem.

A dokuwiki plugin called autobackup will manage these lists (but the admin will be able to edit them). Access will need to be restricted using the ACL plugin to make the braincase namespace admin only.