安全管理是每個工程中必不可少的一部分,它的主要的功能是對訪問權限的限制,增加安全性。紫金橋軟件的聯機幫助中有初步的介紹,下面主要分享一下本人在使用中總結出的使用方法。
我們首先需要建幾個用戶,如下圖:

定義用戶組時,需要對該用戶組的安全區和操作權限進行勾選,定義用戶時也會有這樣一個選擇,最終用戶定義時所能控制的安全區和操作權限為用戶組和該用戶所勾選的合集。下面有個提示“用戶列表:(拖拽改變用戶組)”,需要注意的是,將用戶拖拽其他用戶組可能會改變該用戶權限,比如,將上圖中的“阿三”用戶拖拽到“系統管理員”用戶組內,“阿三”此時擁有所有權限,再將“阿三”拖拽回“新增用戶”,該用戶依然擁有所有權限,也就是說,進過拖拽后的權限為該用戶原有權限與新用戶組權限的合集,這種權限的改變是權限必然增大。很多不了解的人會誤認為拖拽后權限不變。
用戶建好后,點擊“啟動”按鈕,安全管理功能啟用,一般情況下不指定缺省用戶。保存退出,再運行紫金橋軟件時,會彈出系統登錄窗口,輸入正確用戶名和密碼即可登錄。很多時候系統的登錄窗口不能滿足正常需求,那就需要我們自己動手做登錄頁面。我自己做了兩個畫面——登錄頁面和修改密碼頁面,如下圖。


登錄畫面比較簡單,腳本都在“登錄”按鈕中,腳本如下:

使用LoginDirect()函數直接登錄可以簡化腳本,“1”表*示登錄成功,這里所輸入的用戶名和密碼必須是安全管理中有的用戶,即使安全管理未啟用也仍然有效。為了不讓他人看到密碼,可以對文本框進行設置,把屬性中的口令復選框勾上。

密碼就會如這樣顯示:
。
修改密碼頁面腳本都在“確認”按鈕中,腳本如下:

把“不能為空”勾上,運行時如果文本框為空,就會有如下提示:

下面是幾個判斷句,符合條件就進行下一步,否則彈出相應錯誤對話框,這樣寫就比較清楚。
幾乎每一個對象或組件都有安全區設置,安全區可以使保護精確到單個對象(未設置安全區的對象可以隨意操作),無權限的用戶能看見卻不能操作,通常無權限瀏覽也就是沒有權限操作,所以頂多會對畫面設置安全區甚至不用安全區。
每個用戶都有操作時限的設置,用戶登陸后,超過時限會自動退出,也就喪失了所有的權限,此處通常不設置,默認為無時間限制。
工程加密與安全管理有些不同,它主要是保護工程文件不被修改,啟用工程加密后,可以正常運行,但進入組態時需要輸入口令,如果忘記口令,工程將無法進入,即使把工程下的文件(如畫面)拷到其他工程中,也打不開,提示“無法打開加密窗口”。

運行時如果想對安全管理進行操作,可以利用相關函數,所有的函數在安裝目錄下SysGen.exe中。雙擊打開SysGen.exe,點擊“畫面”按鈕,名稱處選擇“ObSecuArea”,所有相關函數都在這里,有說明有示例。