Add public container facility
Bug #620628 reported by
gholt
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Object Storage (swift) |
Fix Released
|
Undecided
|
gholt |
Bug Description
Add a public container facility to Swift so that a user could grant GET and HEAD access without needing to auth.
Proposed solution:
POST an X-Container-Public header to the container to control access.
X-Container-Public: true
Any one can GET and HEAD the container and its objects without needing to auth.
X-Container-Public: referer:
Grant GET and HEAD access if the Referer header in the request is from the specific.host or a host ending with .host.ending.with.
Related branches
lp:~gholt/swift/acls2
- Chuck Thier (community): Approve
-
Diff: 6866 lines (+2927/-890)40 files modifiedbin/st (+344/-134)
bin/swift-auth-add-user (+27/-15)
bin/swift-stats-populate (+2/-1)
bin/swift-stats-report (+22/-19)
doc/source/auth.rst (+1/-1)
doc/source/development_auth.rst (+484/-0)
doc/source/development_saio.rst (+8/-16)
doc/source/howto_cyberduck.rst (+2/-2)
doc/source/index.rst (+1/-0)
doc/source/misc.rst (+9/-0)
doc/source/overview_auth.rst (+16/-11)
etc/proxy-server.conf-sample (+6/-0)
setup.py (+1/-1)
swift/account/reaper.py (+1/-1)
swift/auth/server.py (+145/-85)
swift/common/client.py (+148/-75)
swift/common/direct_client.py (+40/-31)
swift/common/middleware/acl.py (+160/-0)
swift/common/middleware/auth.py (+80/-75)
swift/container/server.py (+7/-2)
swift/proxy/server.py (+140/-21)
test/functional/sample.conf (+15/-5)
test/functional/tests.py (+10/-6)
test/functionalnosetests/swift_testing.py (+51/-16)
test/functionalnosetests/test_account.py (+4/-3)
test/functionalnosetests/test_container.py (+229/-8)
test/functionalnosetests/test_object.py (+91/-0)
test/probe/test_account_failures.py (+30/-16)
test/probe/test_container_failures.py (+52/-52)
test/probe/test_object_async_update.py (+2/-2)
test/probe/test_object_handoff.py (+14/-15)
test/probe/test_running_with_each_type_down.py (+18/-9)
test/unit/auth/test_server.py (+128/-93)
test/unit/common/middleware/test_acl.py (+126/-0)
test/unit/common/middleware/test_auth.py (+149/-32)
test/unit/common/test_client.py (+6/-3)
test/unit/common/test_direct_client.py (+0/-1)
test/unit/container/test_server.py (+43/-0)
test/unit/obj/test_server.py (+22/-21)
test/unit/proxy/test_server.py (+293/-118)
Changed in swift: | |
status: | In Progress → Fix Committed |
Changed in swift: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.