2015-05-19 53 views
1

我想在iriscouch.com上運行couchdb服務器的多個設備和用戶之間共享數據,並在ios和android上使用couchbase-lite。用戶應該能夠通過Facebook和電子郵件登錄。我如何處理用戶對特定文檔的訪問?我不想讓任何人能夠訪問文檔和數據庫。我想過使用HTTP基本身份驗證(replication security),將用戶名和密碼硬編碼到應用程序代碼中。不幸的是,它以純文本形式發送,看起來完全不安全。你能幫我解釋一下關於這種情況的一些想法嗎?Couchbase lite - 用戶訪問控制

+0

我正在開發一個類似的APP(CouchDB + Couchbase Lite for Android),我想知道你是如何設法用Facebook和/ email登錄的。這是否也意味着_register_新用戶?任何幫助表示讚賞。 – kazbeel

回答

2

您可以使用SSL ecncryption來確保安全性。請參閱啓用SSL https://wiki.apache.org/couchdb/How_to_enable_SSL的鏈接。

我在使用Basic Auth時遇到了類似的問題,因此我們不得不使用SSL來使其更安全。

如果可以按照這種方法如果你想使用Basic AUth。 1.編碼用戶名和密碼 例如:用戶名@密碼,編碼後變爲dXNlcm5hbWVAcGFzc3dvcmQ = (使用https://www.base64encode.org/進行編碼)。

  • 使用curl嘗試驗證

    捲曲-v -H 「授權:基本dXNlcm5hbWVAcGFzc3dvcmQ =」 -H 「內容類型:應用/ JSON」 -X GET IP_Address_and_DatabaseName

  • 這樣可以隱藏用戶名和密碼,但還是每個人都可以有編碼的字符串。因此,如果可能的話,嘗試實施SSL。

    +0

    聽起來不錯!非常感謝。我唯一不知道的是如果couchbase lite for iOS和Android支持這種類型的認證。我會嘗試這個並留下評論! – Johannes

    +0

    我真的不知道如何在couchdb中做到這一點,但與Couchbase移動精簡版是可能的。看到這個鏈接:http://ti.eng.br/couchbase-mobile-with-jwt-tokens/ –