我的公司要建立一個雲端軟體租賃服務網站,會提供客戶租賃使用
所以這些客戶註冊後會在網站上輸入一些資料,而因應個資法即將施行,不管是輸入的個人資料,甚至於軌跡資料都要受到保護
現在我們已經規劃網站會使用SSL的憑證,但是在資料儲存這一塊,希望能做到當客戶在儲存時也一併能夠儲存簽章或憑證,以可用來證明說資料並未被竄改,而這簽章或憑證希望是由第三公正方發出(如CA),所以可能必須要我們開發商也可以發出簽章或是憑證給客戶才能做到這需求
不知道是不是有什麼CA的廠商提供這樣的服務?
fenn提到:
不知道是不是有什麼CA的廠商提供這樣的服務?
1.最簡單的方式是把該筆所有欄位資料做hash 運算, 這是一個單向的運算,
若資料被異動, 則 hash 值一定不同
2.若您的公司要發憑證給客戶, 也就是要當 RA 的角色, 去向CA 申請憑證發給客戶, 憑證可能是放在瀏覽器內或是pfx 檔案
3. 儲存資料時用客戶的私鑰對該筆所有欄位資料做簽章, 提取資料時則以公鑰做驗章, 確保資料的完整性與不可否認性
4.台灣CA或RA 可參考 台灣網路認證公司, 或 全景軟體
1.如果使用你的程式去修改資料,還能檢查的出來?
2.程式如果是使用php ruby python... 如果只是簽章,那麼hacker 不只會把你的db 複製,連程式會一併
3.發憑證給客戶....., 那麼代表這個服務只有少數人可使用服務,只能對admin
4.去找kms(密鑰管理系統) 就能發憑證,但資安的問題不是單點
singlong 大的解答是我知不須額外授權的最佳解. 一般正常有兩種方法可以在有限的程度上控制/監視有權限的人更改資料的方法. 其一是利用稽核產品 (如 Oracle Audit Valut) 另一種是使用 Change data capture 的機制. (如 SQL EE 版的 CDC, 或是 Oracle 的 Total Recal) 只要 Data 有變動, 不管是有權限的帳號直接更改或是經過正常程式更新的資料都會 Log 起來.
當然能 log 起來並不能保證所有資料都沒有被變更過. 有權限的人還是可以去清 log. 資安要求分工也是一層額外的保險.
CA 說起來應該算 Authentication, 能否改資料應該算是 Authorization 吧.