我真的很難弄明白這一點。花了大約4小時爬網沒有SO帖子來救我。我如何從Chrome擴展內部安全地更新遠程數據庫?
想象一個場景:
我已經寫了一個Chrome擴展,捕獲網頁上(主要是點擊一個按鈕)一些特定的動作。該動作觸發一個函數,捕獲一些用戶信息和按鈕信息(全部出現在頁面本身)並顯示它
現在我希望插件應該能夠更新到遠程的數據庫設置服務器。
因爲我精通PHP(因此MySQL是不錯的選擇),我在尋找一個解決方案,以確保更新從擴展本身,並僅製造。
對此,我認爲最好的選擇是運行GET/POST請求,比如http://remoteserver.tld/update-db.php?id=XXXX&action=YYYYY&foo=bar ....等。但是如果用戶打開/傳遞post vars到外部插件以外的地址會發生什麼?
數據仍會更新,完整性將會丟失!
下一個最好的想法是將請求包含在密鑰中,但再次使用JS編寫擴展,幾乎任何人都可以嗅出密鑰。
指導我找到更新遠程服務器上數據庫的最佳方法,並確保操作已通過身份驗證。
乾杯!
任何人都可以嗅到鑰匙,任何人都可以嗅出擴展的做法。完美的安全性基本上是不可能的挑出你願意合作的風險水平,並保證事情到達這一點,沒有進一步 –
這是真的......但是我會在服務器端做一個方法,檢查是否需要更新數據庫來自插件,還是來自僞造的頁面?...您認爲我擁有@MarcB的哪些選項?...您對此有何看法?...請記住它需要儘快儘可能...因爲將有100多名用戶在Intranet上工作更新主機... – whizzzkid
讓我們說我正在爲一個技術先驅工作,並需要一個堅實的方法來保護這些數據的僞造...因爲我相信這裏的書呆子會嘗試並將這些數據轉化爲最佳...感謝您的意見@MarcB – whizzzkid