存取控制

存取控制可讓您的組織依「工廠」、各種工作地點或工作功能來限制或分類記錄資訊。例如,您可能有僅在北部位置使用的資產類型,因此您會將這些資產類型指定為僅限於該位置。同樣地,您也可以運用存取控制來防止南部位置的使用者存取與北部位置相關的工單 (反之亦然)。這在應用程式架構中稱為「資料列等級安全性」。

每個位置都代表一個存取權群組,而應用程式中的物件則可由特定的存取權群組所擁有。存取權群組是在存取權群組入口中定義,並以所屬組織的形式指派給記錄。

如需有關資料存取權角色及其如何與存取權群組搭配運作的詳細資訊,請參考 Oracle Utilities Application Framework 文件中的資料列安全性

備註:這是選擇性功能,預設為未啟用。如果您的實作需要依所屬組織限制存取,則您必須如下方所述明確啟用該功能。

下列幾點提供該功能的概略描述:

  • 有些實體會透過在實體本身指派的所屬組織值直接受到保護。例如,工單實體會直接受到保護,因此會植入其所屬組織欄位。

  • 有些實體是透過與其他直接受保護的相關實體建立關聯受到保護。以此方式保護的實體不會被指派所屬組織。例如,工作活動會透過與其工單建立關聯間接受到保護。如果允許使用者檢視工單,則也會允許他們檢視其所有工作活動。個別活動沒有所屬組織資料安全性。

  • 所有其他實體都不支援此類型的安全性。例如,業務使用者不使用作業與技術實體,因此不應該受到資料限制侷限。系統管理員必須能夠複查這些實體中的所有資料 (不依所屬組織進行篩選),以便妥善處理問題與例外。 

下列各節進一步描述與依所屬組織區分的資料安全性相關的概念。

哪些實體受到保護?

並非所有實體都支援此類型的資料安全性。下列業務實體直接支援依所屬組織區分的安全性:

  • 資產

  • 相容單位

  • 工班

  • 位置。這包括儲存在「節點」維護物件中的所有位置類別,例如資產位置、庫房等等。

  • 採購單標頭

  • 請購單標頭

  • 工單範本

  • 工作設計

  • 工作位置

  • 工單

  • 工作要求

下列業務實體可透過關聯來間接支援依所屬組織區分的安全性:

  • 工作活動。透過與工單建立關聯受到保護

  • 活動調節。透過與工單建立關聯受到保護

  • 設計元素。透過與工作設計建立關聯受到保護。

  • 加速處理採購單。透過與採購單標頭建立關聯受到保護。

  • 發票標頭。透過與採購單標頭建立關聯受到保護。

  • 材料要求標頭。透過與庫房 (節點) 建立關聯受到保護。

  • 材料退回標頭。透過與庫房 (節點) 建立關聯受到保護。

  • 測量。透過與資產建立關聯受到保護。

  • 實際存貨盤點標頭。透過與庫房 (節點) 建立關聯受到保護。

  • 保固。透過與資產建立關聯受到保護。

下列管理實體直接支援依所屬組織區分的安全性:

  • 活動類型

  • 核准設定檔

  • 資產類型

  • 業務單位

  • 檢查列表類型

  • 成本調整類型

  • 成本中心

  • 分配代碼

  • 費用代碼

  • 勞務所得類型

  • 位置類型。這包括儲存在「節點類型」維護物件中的所有位置類型類別,例如資產位置類型、存貨位置類型等等。

  • 規劃員

  • 服務類目

  • 服務類別

  • 服務代碼

  • 服務歷史記錄問題

  • 服務歷史記錄類型

  • 規格

  • 工作類目

  • 工作類別

共用存取

依所屬組織區分的安全性是選擇性功能,但啟用時,應用程式會假設直接受保護實體上的每筆記錄都已被指派所屬組織值。

當記錄遺漏值時,應用程式無法強制執行資料限制,因此會讓所有使用者都能夠存取這些記錄。雖然應用程式會將這些記錄視為無限制,但會假設只是在使用者或某個預設規則為它們指派值之前暫時無限制。

若有意跨所屬組織共用記錄,正確的方法是指定一或多個共用存取權群組,然後將它們指派給適當的使用者。例如,若要在北部與南部所屬組織之間共用某些實體,您可以指定「北部與南部」所屬組織、將共用實體指派給此所屬組織,然後讓來自這兩個位置的使用者都能夠存取它。

預設所屬組織指派規則

已啟用所屬組織安全性時,直接受保護的實體必須由建立它們的使用者或處理為它們植入其所屬組織欄位,或在沒有明確值的情況下,則由預設規則為其植入。應用程式會利用實體業務物件上設定的稽核演算法,為其指定預設值。雖然管理實體的一般預設規則是從使用者的預設存取權群組預設所屬組織,但為主要實體與交易實體指派值時需要更複雜的規則。若要尋找用於直接受保護實體的規則,請尋找在其業務物件上設定的對應稽核演算法。

建立直接由所屬組織保護的新管理實體時,會在儲存記錄前,先在使用者介面上顯示使用者的預設存取權群組,以便讓使用者在建立記錄前視需要變更值。請注意,如果使用者故意清除預設值,應用程式仍會強制執行預設規則,且會以使用者的預設存取權群組儲存記錄。

主要物件與交易物件的預設規則較為複雜,因此需要支援一個可讓您組織自訂這些規則的方式,以滿足您的業務需求。因此,在建立這類實體之前,會刻意不在使用者介面上預設使用者的預設存取權群組,以便讓業務物件稽核規則視需要植入值。

依預設,產品所提供來預設實體所屬組織的演算法,只會在建立記錄時使用使用者的預設存取權群組。不過,它們都支援演算法參數,您可以設定此參數以強制在更新未植入所屬組織值的現有記錄時,也從使用者的預設存取權群組進行預設設定。

備註:如果在套用任何物件的預設規則後,尚未進行指派,也就是記錄的所屬組織欄位仍然空白,應用程式就無法限制對此記錄的存取,因此會讓所有使用者都能存取。這不應與刻意將實體與共用所屬組織建立關聯的組態混淆。

明確的所屬組織指派規則

有時實體的預設規則會無法決定適當的所屬組織值。在這些獨特的情況下,建立受保護實體的處理會在新增該實體時,為該實體預先植入適當的所屬組織值。以下是這類處理的範例:
  • 產生預防性維護工單時,應用程式會從它們的建立對象資產繼承它們的所屬組織。資產會在活動上被參考,因此工單的預設規則將無法在建立時存取該資產。

  • 當產生或連接其他直接費用時,應用程式會從它們的活動工單繼承它們的所屬組織。此處,活動同樣只是在明細記錄中被參考,在建立費用標頭記錄時並無法使用該活動。

  • 根據服務歷史記錄類型組態產生後續追蹤工單時,應用程式會從服務歷史記錄的活動工單繼承它們的所屬組織。

如需詳細資訊,請參考與這類處理相關的演算法。

透過整合或批次建立實體

一般而言,用來處理 Web 服務呼叫或執行批次處理的使用者是不屬於任何所屬組織的通用使用者記錄。因此,此通用使用者所建立的實體不應依賴使用者記錄的預設存取權群組,來進行適當的所屬組織指派。因此,不應為這些通用使用者定義任何預設存取權群組,但應允許他們存取所有存取權角色。

針對透過 Web 服務或批次建立的直接受保護物件,其設計上是要以明確方式提供其值,而非依賴使用者的預設值。例如,當使用者在線上建立資產時,可明確植入資產所屬組織,或讓應用程式將其預設為使用者的預設存取權群組。不過,從外部系統連接資產時,則應明確植入其所屬組織。

依所屬組織篩選

受保護實體 (不論是直接還是間接) 可在其個別查詢入口上支援所屬組織篩選。此篩選可讓使用者複查屬於特定所屬組織的資料,但這不應與資料限制混淆。已啟用依所屬組織區分的安全性時,應用程式會限制使用者可存取的資料,不論他們是否已使用篩選。如果使用者具有多個所屬組織的存取權,則篩選可用來將結果範圍縮小至選取的群組。不過,未啟用依所屬組織區分的安全性時,資料便無限制,使用者可以存取任何記錄。

啟用依所屬組織區分的資料安全性

下列各點強調啟用依所屬組織客戶區分之資料安全性所需的整體步驟:

  • 設計並設定存取權群組與存取權角色,以符合您的業務需求。如果應在所有所屬組織之間共用某些實體,請定義一個連結至所有存取權角色的客戶共用存取權群組。 

  • 將使用者與存取權群組和角色建立關聯:

    • 存取應用程式之個人的所有使用者記錄都必須獲指派預設存取權群組,且可屬於一或多個存取權角色。此存取權群組是用來作為各種商業規則指派給某些受保護物件的預設值。

    • 用於整合與批次處理的所有使用者記錄不應與預設存取權群組相關聯,但必須具有所有存取權角色的存取權。如此一來,這些共用使用者記錄所建立的資料上就不會標記任意所屬組織,但所有資料都可供這些處理存取。   

  • 針對升級客戶,請確認直接受保護實體之主要資料表中現有記錄的所屬組織欄位中有正確的值。視每個資料表的資料量及每個資料表中可能需要更正的記錄數而定,您可以選擇在線上或透過自訂外掛程式導向的批次處理進行這些更新。

  • 執行套用存取權群組 VPD 原則 (W1APLVPD) 批次處理,以在直接由所屬組織保護的主要物件與交易物件上強制執行資料列等級安全性。如需有關此批次處理的詳細資訊,請參考批次控制定義。