第五章 元件進階設計第五章 元件進階設計\5-6 Security與SecurityColumn

5-6 SecuritySecurityColumn

權限管控的功能,一般我們會將它劃分為資料的編輯權限以及查看權限。對於這兩個功能,我們可以通過JQSecurity以及JQSecColumns兩個元件來配合完成。

Step1>        首先,從工具箱中找到JQSecurity,將它拖拉到畫面中,請注意將這個元件貼在bOrder1整個web網頁的最上面。

Step2>        設定JQSecurity的屬性,這裡DBAlias設定為登入的這個DB,這裡以ERPS為例,同時將MenuID設定為bOrders1EEPManager中設定的菜單項的ID

Step3>        選中JQSecurity這個元件,右上角會出現一個Export的選項。將畫面中的元件做輸出,這部分内容的輸出用於在EEPManager上可以控制每個用戶或者群組對畫面上的按鈕包括資料内容的新增、修改以及可操作性的控制。在Security Control Export畫面中點擊Add All,將畫面中的元件全部添加,點擊OK完成輸出。

Step4>        這樣完成后,打開EEPManager,打開System -> SecurityManager -> MenuUtility。選中bOrders1這個Menu后,點擊下方的AccessUser來設定用戶的操作權限。

Step5>        在打開窗口中選中001這個User,然後點擊AccessControl按鈕,這樣就可以AccessControlForUser

Step6>        點擊窗口中的Add All,將前面導入的所有控件添加進來,我們設定dataGridDetailAllowAdd/AllowUpdate/AllowDeleteN表示Detail不可編輯。同時將dataGridMasterAllowAdd設定為N,表示不能新增。Excel輸出的按鈕將它的VisibleN。完成后點擊Update

Step7>        設定完成后,在run程式后會發現Master的新增按鈕被隱藏了。同時Detail的新增、修改以及刪除按鈕也被隱藏。

前面介紹了如何控制資料的編輯以及按鈕的操作面的權限。下面我們來介紹一下,以欄位為單位的權限設定,來控制某些欄位的可見以及編輯權限。

Step1>        首先在畫面中貼入一個JQSecColumns,請注意,這個元件也同,將它的BindingObjectID設定為dataFormMaster表示控制Master編輯時的欄位。

Step2>        點擊Columns屬性后的按鈕,打開欄位設定的對話框,設置CustomerID以及Freight欄位。

Step3>        上面的設定完成后,重新選中JQSecurity元件,並點擊它的Export功能。

Step4>        在打開窗口點擊Add按鈕,勾選到JQSecColumn1,點擊OK,這樣就添加了新的元件了

Step5>        上面的步驟完成后,保存一下修改的頁面,我們就來設計權限了。同樣打開EEPManager->System->SecurityManager。同樣選中一個Menu,選中下方的AccessUser。在打開窗口中選擇002這個User,然後點擊AccessControl.

Step6>        AccessControlForUser畫面中將JQSecColumns1Enabled設定為N。最後點擊Update按鈕更新修改。

Step7>        重新以002來登入后,編輯資料會發現客戶編號以及費用是只讀的狀態。


 

Top of Page