TOP Server OPC Server教程:探索OPC UA之分層安全模型的關(guān)鍵概念
TOP Server OPC Server采用業(yè)界領(lǐng)先的Kepware技術(shù),是Software Toolbox's OPC和原生HMI設(shè)備的連接軟件,也是一款多線程應(yīng)用程序,能夠利用最新的雙核處理器和多處理器技術(shù)最大化您的性能。其靈活而強大的功能可最大程度降低項目的生命周期成本;模塊化架構(gòu)和通用用戶界面可以降低您的培訓成本,因為在不同的驅(qū)動程序中使用了100種常用方法,幫助您學習TOP Server,并快速應(yīng)用與其他驅(qū)動程序相同的知識。
點擊下載TOP Server OPC Server最新試用版
到目前為止,在我們正在進行的“ 探索OPC UA”系列文章中,我們對OPC UA證書以及OPC UA客戶端和OPC UA服務(wù)器如何使用它們來保護工業(yè)數(shù)據(jù)安全進行了基本的了解。
在本系列的第三篇文章中,我們將退后一步,從總體上看OPC UA安全性,該方法涉及覆蓋身份驗證,機密性和通信完整性等方面的分層方法。
OPC UA的核心支柱是對安全性的關(guān)注,這不僅出于數(shù)據(jù)完整性原因,而且還出于服務(wù)可用性。OPC UA規(guī)范總結(jié)了安全重點應(yīng)放在三個領(lǐng)域:
- 客戶端和服務(wù)器應(yīng)用程序之間的身份驗證
- 確定用戶是否有權(quán)連接和/或執(zhí)行請求的操作的能力
- 通信的機密性和完整性。
這意味著嚴格分層的安全性方法對于OPC UA實施至關(guān)重要,其中每個層負責驗證允許連接/操作,并且任何未批準的操作都可以迅速被拒絕。
OPC UA安全模型涉及哪些層?
OPC UA規(guī)范文檔將OPC UA安全模型可視化為三層:
1、OPC UA傳輸層 –這是最低層,也是第一道防線。在這里,我們擔心計算機的IP地址以及應(yīng)用程序正在偵聽的端口(在大多數(shù)情況下,僅依賴未知的IP地址或端口并不是真正的安全性,只是等待發(fā)生的安全事件)。
該層還可以包括OPC UA范圍之外的任何防御措施(例如防火墻,訪問控制列表等),這些防御措施可能會在建立連接之前拒絕該連接。
2、OPC UA通訊層 –這是本博客系列關(guān)注的大部分活動的發(fā)生地。當OPC UA客戶端連接到OPC UA服務(wù)器時,將建立發(fā)生證書交換的安全通道。然后,該證書不僅用于對建立連接的應(yīng)用程序和主機進行身份驗證,而且還對發(fā)送的消息進行加密和簽名(本文章系列的第1部分和第2部分對此進行了詳細介紹)。
如果客戶端和/或服務(wù)器使用的證書不受信任,則OPC UA應(yīng)用程序可以在建立安全通道時拒絕連接嘗試。這很重要,因為不安全的連接嘗試應(yīng)在協(xié)議棧中盡可能低的被拒絕-避免拒絕服務(wù)或資源耗盡類型的攻擊;惡意應(yīng)用只是打開連接以消耗服務(wù)器端資源并將服務(wù)器驅(qū)動到無法為合法連接嘗試提供服務(wù)的地步。
3、OPC UA應(yīng)用層 –在此進行用戶身份驗證和OPC UA調(diào)用/命令身份驗證。當我們到達該層時,我們已經(jīng)知道進行呼叫的主機和應(yīng)用程序是受信任的,OPC UA客戶端與OPC UA服務(wù)器之間的對話是安全的,因此,唯一需要驗證的是與應(yīng)用程序交互的用戶有權(quán)訪問所討論的資源。
這通常的工作方式是在激活會話時提供用戶憑據(jù),如果授權(quán)用戶激活會話(并連接到UA服務(wù)器),則UA服務(wù)器將返回一個安全“令牌”此用戶將來進行的呼叫必須包括在內(nèi)。通過在將來的呼叫中包含此“令牌”,服務(wù)器可以拒絕對特定資源的訪問(即,并非每個用戶都可以訪問證書標簽/節(jié)點,某些用戶可能具有只讀訪問權(quán),等等)。
設(shè)計自己的OPC UA安全模型時的注意事項
考慮到這三個安全層,在設(shè)計實現(xiàn)OPC UA客戶端和服務(wù)器的系統(tǒng)時應(yīng)牢記一些注意事項和建議。
- 不要通過模糊來依靠安全性。如果在系統(tǒng)上實施的唯一安全措施是希望攻擊者無法弄清服務(wù)器IP和端口,則您將進行NMAP簡短掃描,遠離可能受到威脅的系統(tǒng)。不要做!特別是在公開的OPC UA服務(wù)器上。
- 注意您信任的證書。考慮到安全通道的重要性以及正確使用OPC UA應(yīng)用程序證書的關(guān)鍵性質(zhì),簡單地接受并信任每個證書有效地抵消了擁有該層的目的(即,如果防火墻僅允許每個連接,則防火墻無效) )。信任證書之前,請小心謹慎并仔細閱讀;尋找的東西是:
- 是我信任并希望允許與我連接的主機嗎?
- 我信任并希望允許該應(yīng)用程序連接到我嗎?
- 該證書的有效期為多長時間,并且遵守我的IT最佳實踐以確保定期更新和更新證書?
- 如果未將OPC UA服務(wù)器端點配置為使用安全性,那么所有關(guān)于證書的討論都變得毫無意義。盡管我不建議建議對每個OPC UA連接進行加密和保護,但是在設(shè)計系統(tǒng)時必須考慮這一點。
- 系統(tǒng)是要公開公開還是只能在Intranet上訪問?
- 被授權(quán)在網(wǎng)絡(luò)上但不能監(jiān)視OPC UA通信的各方是否可以訪問網(wǎng)絡(luò)?
- 該系統(tǒng)上將連接多少個客戶端?
- 我們是否還使用其他任何安全性(例如用戶授權(quán)或防火墻)?
- 我的服務(wù)器允許我配置用戶嗎?
- 如果是的話,我的OPC UA服務(wù)器支持什么級別的粒度以允許我配置用戶訪問權(quán)限(即,我可以限制讀/寫訪問,對特定標簽的訪問等)?
- 我們是否只讓用戶訪問用戶需要訪問的那些資源?還是每個用戶都是具有完全管理權(quán)限的root用戶?
規(guī)劃安全OPC UA架構(gòu)設(shè)計時要評估的注意事項列表比上面列出的要長得多,但是這些注意事項應(yīng)該提供一個易于消化的起點,以推動有關(guān)組織需求的內(nèi)部討論。
要購買該產(chǎn)品正版授權(quán),或了解更多產(chǎn)品信息請點擊