Apache module providing secure downloading functionality, just like Mongrel Secure Download does for mongrel.
Ruby
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
lib/apache
spec
.gitignore
COPYING
ChangeLog
README
Rakefile
apache_secure_download.gemspec

README

= apache_secure_download - Apache module providing secure downloading functionality, just like Mongrel Secure Download does for mongrel.

== VERSION

This documentation refers to apache_secure_download version 0.2.2


== DESCRIPTION

Place the following snippet in your Apache config:

  # protect files by Apache Secure Download
  <IfModule mod_ruby.c>
    RubyRequire apache/ruby-run

    RubyRequire /path/to/apache_secure_download
    # or
    #RubyRequire rubygems
    #RubyRequire apache/secure_download

    <Location /secure>
      # pass your shared secret string to the handler -- secret means SECRET!
      RubyAccessHandler Apache::SecureDownload.new("secret")
    </Location>
  </IfModule>

And create links to your resources with timestamp and token:

  require 'apache/secure_download/util'

  timestamp = 1.minute.from_now  # e.g.
  token     = Apache::SecureDownload::Util.token("secret", path, timestamp)

  url = path + "?timestamp=#{timestamp}&token=#{token}"

  # or simply use the provided helper:
  url = Apache::SecureDownload::Util.secure_url("secret", path, 1.minute.from_now)

  # make resulting URL cacheable for 30 seconds (on average):
  url = Apache::SecureDownload::Util.secure_url("secret", path, :expires => 1.minute.from_now, :cache => 30)

  # specify expiration time using an offset (results in Time.now + 60; also includes caching for 60 seconds):
  url = Apache::SecureDownload::Util.secure_url("secret", path, :offset => 60)

See Apache::SecureDownload::Util.secure_url for more examples.


== LINKS

<b></b>
Documentation:: http://blackwinter.github.com/apache_secure_download
Source code::   http://github.com/blackwinter/apache_secure_download
RubyGem::       http://rubygems.org/gems/apache_secure_download


== AUTHORS

* Jens Wille <mailto:jens.wille@gmail.com>


== LICENSE AND COPYRIGHT

Copyright (C) 2008-2012 University of Cologne,
Albertus-Magnus-Platz, 50923 Cologne, Germany

Copyright (C) 2013 Jens Wille

apache_secure_download is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at your
option) any later version.

apache_secure_download is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
for more details.

You should have received a copy of the GNU Affero General Public License along
with apache_secure_download. If not, see <http://www.gnu.org/licenses/>.