多系統間介面的問題

來源:互聯網
上載者:User

在系統實施的過程中,經常遇到與別的系統做介面的情況。如果業務比較簡單,就是發送訊息等那比較好解決,但如果是資料庫操作就比較麻煩,因涉及到多個資料庫之間的安全問題。

比如A系統中需要修改B系統的資料庫中的資料,就這種情況有很多種的解決方案。比如
1、A系統在瞭解B系統的資料庫結構的前提下,在A系統的許可權管理中直接設定作業B系統資料庫的許可權。
      這種方式從安全的角度來說應該是比較高的,但是帶來很多的問題,特別系統的健壯性比較差,當B系統的資料庫結構更改時,直接影響到A系統的系統介面和許可權管理部分。  何況,還需要去熟悉別的資料庫結構。
2、B系統提供介面,供A系統調用。這種方式的好外是兩個系統之間的耦合度降低,系統方便維護和擴充,但是帶來的問題是:當A系統調用B系統時,如何儲存A系統調用時的安全?  比如B系統介面中有一個這樣的方法 bool InsertData(...) ,用於向資料庫中插入一條記錄,這樣在A系統中可以直接調用這個方法。但是問題是 A系統通過什麼方式登入B系統的資料庫?B系統如何驗證A系統合法性?是不是其它的系統也能隨意使用這個介面,操作資料庫中的資料?

那問題怎麼解決呢? 

第一種方案基本上不考慮,在第二種方案中我想了加一個驗證來解決。
   B系統中提供一個調用驗證,使用不對稱式加密的方式,B系統中儲存公開金鑰,A系統在執行B系統的驗證時,提供一個私密金鑰,與B系統的公開金鑰驗證,如果驗證通過,則B系統初始化資料庫,供A調用相關方法,否則,在A調用方法時,給出驗證不通過的提示。

這是剛剛想到的辦法,可能不是很成熟,不知道哪位有沒有更理想的方法?

   

   

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.