回答
您可以通過'login:required'限制對它的訪問權限,要求使用Google帳戶登錄或'login:admin'將其限制爲僅限管理員。如果您只關心濫用行爲,則可能需要考慮DOS API。
我假設你想爲此使用web2py認證。你必須遵循一些簡單的規則。 1)app/static中的文件是公共文件。 2)你想要進行身份驗證的文件進入app/private。然後創建你自己的web2py行動,服務器的私有內容/
@auth.requires()
def private():
import os
file = os.path.join(request.folder, 'private', request.args(0))
return response.stream(open(file,'rb'))
如果你想使用,你需要在數據庫表和auth.add_permission文件名存儲到組到記錄的基於角色的訪問控制。
如果您向web2py郵件列表提問,您會得到更快的響應和更有效的響應。
我很確定這不適用於App Engine,因爲文件不在真實的文件系統中。 – 2010-09-19 16:44:06
這取決於。我在假設下回答了文件是在開發時提供的。在那種情況下,它將在GAE上工作。如果我們正在討論上傳到應用程序的文件,那麼web2py解決方案很容易。使用Field('file','upload',authorize = lambda row:row.author == auth.user_id)和Field('author',db.auth_user,default = auth.user_id)創建表並使用form = crud .create(db.thetable)將圖像上傳到表格中(受GAE文件大小限制的限制)本書第3章對此進行了廣泛討論,並且所有示例都在GAE中開箱即用。 – mdipierro 2010-09-19 21:02:01
感謝您的回覆Mossimo。我在這裏發佈而不是郵件列表,因爲我希望有一個快速的app.yaml解決方案,但是現在我決定採取一種完全不同的方法來完成我的任務,而不涉及在GAE上使用該文件。我會在未來繼續考慮您的解決方案。 – Dane 2010-09-20 04:37:05
- 1. 在Python App Engine中限制對靜態文件的訪問
- 2. 在ExpressJS中限制對靜態文件的訪問
- 3. 如何在IIS 7.5 Classic模式下限制對靜態文件的訪問
- 4. 如何使用WIF來保護對靜態文件的訪問?
- 5. 使用hapi中的相對路徑訪問靜態文件
- 6. 如何限制對靜態公衆成員的訪問?
- 7. 訪問靜態文件
- 8. 如何限制用戶訪問ExpressJS/NodeJS中的靜態html文件?
- 9. 使用NSOpenPanel限制對某些文件夾的訪問
- 10. 使用.htaccess限制對文件的訪問
- 11. 使用.htaccess限制對文件下載的訪問
- 12. 使用GAE限制對特定國家/地區用戶的訪問(Java)
- 13. 限制訪問文件
- 14. GAE Cloud中的靜態文件
- 15. 訪問SCD中的靜態文件
- 16. 在web.config中限制對文件/文件夾的訪問
- 17. 限制對sendmessage.php的訪問
- 18. 爲靜態文件配置Python GAE app.yaml
- 19. 上載單個靜態文件到GAE的app.yaml使用
- 20. 如何使用app.yaml將GAE(python)中的靜態文件上傳?
- 21. 用nginx和javascript限制文件訪問
- 22. 如何使用.htaccess文件限制PHP文件訪問?
- 23. 限制對nodejs中用戶上傳文件的訪問?
- 24. 訪問捆綁控制器/服務等內的靜態文件
- 25. 如何限制訪問的文件夾
- 26. 限制Hadoop中的文件夾訪問
- 27. 限制對某些用戶的訪問
- 28. 使用Whitenoise製作Django靜態文件
- 29. 根據登錄用戶的訪問權限限制PHP的文件訪問
- 30. 在PHP中使用靜態方法訪問私有文件
哦,這是否也適用於靜態文件? – 2010-09-19 16:43:16
是的,它的確如此。 /// – 2010-09-19 23:41:20
謝謝尼克。至於通過登錄限制靜態文件:required或login:admin,那麼是否有可能通過urllib.urlopen或類似的東西傳入登錄憑據以便在運行時下載數據? – Dane 2010-09-20 04:40:09