我目前正在用微框架Flask編寫一個rest python的Python。 這是一個私人API,它處理用戶數據。我打算使用這個API來構建一個Web和一個Android應用程序。尋求建議,以確保用python-flask編寫的私有REST API
現在我使用digest auth來保護私人用戶數據。例如,如果您想通過用戶bob在我的服務上發佈數據,請在myapi/story/create上發佈發佈請求,並使用摘要模式提供bob的憑證。
我知道這不是一個很好的解決方案,因爲:
-Digest身份驗證並不安全
-The客戶端沒有認證(?如何保證不與當前用戶相關的請求,例如創建一個新用戶)
我讀了很多關於oAuth的內容,但是三腳認證看起來有點矯枉過正,因爲我不打算將我的API打開到第三方。
雙腿oAuth不適合,因爲它只爲客戶提供認證,而不是爲用戶提供認證。
oAuth的另一個問題是,我還沒有找到在Python中實現它的全面指南。我找到python-oauth2庫,但我不明白服務器示例,我找不到其他文檔。另外,這個例子中沒有涉及oAuth的許多方面。
所以我的問題是:
- 是否有身份驗證的替代方案(未OAuth的)客戶端和用戶安全的一個合理的水平?
- 如果oAuth是最佳解決方案:
- 如何跳過授權過程(因爲用戶不必授權第三方客戶端)?
- python-oauth2或任何其他Python庫有詳細的文檔嗎?
任何幫助或建議,將不勝感激。
至於你的問題之一,各大網站的很大一部分不會讓你通過客戶端等報名,他們讓你通過他們的網站註冊。對於那些允許這樣做的網站,他們的API調用與他們的註冊表單實際上是一樣的,所以不管它是否安全都沒關係。 –