CODESYS OPC UA 憑證怎麼設?Security Screen 沒有 Devices 分頁的解法
目錄6 個章節
最近在自己電腦上用 CODESYS 的軟體 PLC 做測試,想幫它的 OPC UA Server 設憑證,讓 SCADA 軟體用加密的方式連進來。
照著印象打開 View → Security Screen,結果只有 User 和 Project 兩個分頁,怎麼點都找不到管 PLC 憑證的地方…
不同版本的 CODESYS,這塊長得不太一樣,我找了一下才搞懂:管 PLC 憑證的 Devices 分頁,要另外裝一個 Add-on 才會出現。
下面照順序記下整個過程:安裝 Add-on、幫 OPC UA Server 產生憑證、讓 SCADA 的憑證被信任,最後是設壞了怎麼還原。
為什麼找不到 Devices 分頁?
因為 Devices 分頁是 CODESYS Security Agent 這個 Add-on 加上去的,預設沒裝。
沒裝的時候,Project 分頁底下雖然看得到 Device,但只能設定 Application 要不要加密,PLC 上有哪些憑證完全看不到。

CODESYS 官方的 Security Agent 資料表寫得很清楚:裝了它,Security Screen 會多一個 Devices 分頁,可以直接管理 PLC 上的 Own、Trusted、Untrusted、Quarantined 四種憑證。
我的環境
- 開發環境:CODESYS 64 3.5.18.40
- PLC:CODESYS Control Win V3 x64(裝在自己電腦上的軟體 PLC,純測試用)
- Add-on:CODESYS Security Agent 1.5.0.0
- 連進來的那端:一套 SCADA 軟體,當 OPC UA Client
用 CODESYS Installer 安裝 Security Agent
- 在 CODESYS 選單點
Tools → CODESYS Installer。 - 切到 Browse 分頁,搜尋框打
Security。 - 勾選
CODESYS Security Agent,按右邊的 Install。 - 裝完之後,把 CODESYS 整個關掉重開。

Installer 左下角如果寫著 Read-Only Mode,代表現在沒有權限裝東西,先點旁邊的 Restart as Administrator 用系統管理員身分重開,再按 Install。
重開 CODESYS 之後,Devices 分頁出現了,但裡面空空的。

別急,這是正常的。
它要讀的是 PLC 上的憑證,所以要先 Online → Login 連上 PLC,再按 Devices 分頁左上角那顆綠色的 Refresh,左邊的樹狀圖才會長出來。

四個憑證資料夾各是什麼?
Own 放 PLC 自己的憑證,另外三個放”別人”的憑證,差別在你信不信任它。
憑證(Certificate) 是設備的電子身分證。OPC UA 連線時,Server 跟 Client 會互相出示憑證,確認對方是誰,之後才能簽章或加密傳輸。
| 資料夾 | 放什麼 |
|---|---|
| Own | PLC 自己的憑證,等一下幫 OPC UA Server 建的那張就在這裡 |
| Trusted | 信任名單,SCADA 的憑證放進來才准連線 |
| Untrusted | 明確不信任的憑證 |
| Quarantined | 來連過線、但還沒被你決定要不要信任的憑證,先隔離在這裡 |
講白一點,就像工廠門口的警衛室。
第一次來的訪客(Quarantined)先在門口等,你點頭了才換上員工證(Trusted),列入黑名單的(Untrusted)就直接擋掉。
另外,點樹狀圖裡的 Use Cases,右邊會列出這台 PLC 上會用到憑證的功能:OPC UA Server、Redundancy、Encrypted Application、Encrypted Communication。
後面標著 (not available),代表這個功能還沒有憑證。
怎麼幫 OPC UA Server 產生憑證?
在 Use Cases 選 OPC UA Server,按 New Certificate,確認金鑰長度和效期就好。
- 點左邊樹狀圖最上面的 Device,右邊會顯示可用的 Certificate Use Case。
- 選 OPC UA Server 那一列。
- 按中間那排圖示最上面的那顆 New Certificate。
- 跳出
Certificate Settings對話框,確認數值後按 OK。
對話框帶出來的是 Key length 3072 bit、Validity period 365 天,我沒改,直接按 OK。

OK 之後,OPC UA Server 那一列的圖示變了,(not available) 也不見了。
Issued for 跟 Issued by 兩欄都填上 OPCUAServer@ 加上電腦名稱,兩欄一模一樣,因為這是 PLC 自己簽給自己的憑證(也就是自簽憑證)。

PLC 這邊的身分證辦好了。
怎麼讓 SCADA 的憑證被信任?
讓 SCADA 先連一次,它的憑證會出現在 Quarantined,拖到 Trusted 就好。
- 在 SCADA 軟體設定好 OPC UA 連線,實際連一次。這時 PLC 還不認識它,它的憑證會先被丟進隔離區。
- 回到 CODESYS,點左邊樹狀圖的 Quarantined,右邊清單會出現一張憑證,Issued for 就是那套 SCADA 軟體。
- 把這張憑證拖曳到左邊樹狀圖的 Trusted 上放開。
- 點左邊的 Trusted,右邊看得到那張憑證,就代表搬過去了。

我這張 SCADA 憑證的效期是 2026/09/14 到 2027/09/14,後面的 357 days 是還剩幾天,綠色底代表還在效期內。

搬進 Trusted 之後,SCADA 那端再連一次就可以了。
設壞了怎麼還原?
把 OPC UA Server 那張憑證刪掉,再重開 runtime,就回到沒有憑證的狀態。
Security Screen
→ Devices
→ Use Cases
→ 選 OPC UA Server 那一列
→ 按 ✕ 刪除憑證
→ 重開 runtime
✕ 在中間那排圖示裡,滑鼠移上去會顯示 Delete the selected certificate from the device.。

刪完記得重開 runtime,設定才會生效。
我用的是 CODESYS Control Win V3,從工作列右下角的 CODESYS 圖示按 Stop PLC,再按 Start PLC 就好。
目前我只驗過 OPC UA Server 這個 Use Case,Redundancy、Encrypted Application、Encrypted Communication 那三列都還是 (not available),之後有用到再補一篇😆
常見問題
Q:裝完 Security Agent,Devices 分頁為什麼是空的?
A:因為還沒連上 PLC。先 Online → Login,再按 Devices 分頁左上角的 Refresh,樹狀圖和 Use Cases 才會出現。
Q:Quarantined 裡面一直沒有 SCADA 的憑證怎麼辦?
A:SCADA 那端要實際發起一次 OPC UA 連線,憑證才會送到 PLC。安全模式選 None 的話不一定會交換憑證,要選有簽章或加密的模式。連完回 CODESYS 按一次 Refresh 再看。
Q:憑證效期 365 天,到期會怎樣?
A:我這張 2026/09/22 才建,還沒遇到到期。照 OPC UA 的規則,過期的憑證會被視為無效,到期前要重新產生,SCADA 那端也可能要重新信任一次。
Q:刪掉 OPC UA Server 的憑證之後,一定要重開 runtime 嗎?
A:要。刪除只是把憑證從 PLC 上拿掉,重開 runtime 之後設定才會生效。
你們現場的 OPC UA 有開加密,還是都用 None 直接連?