Capability (Core RBAC)
Capability (zdolność / uprawnienie) to zasób reprezentujący definicję pojedynczej zdolności w modelu uprawnień: identyfikator, nazwa oraz typ/kategoria (np. approval, access, administration). Przypisanie „komu i co" realizuje GrantAssignment.
Cross-module use: HR (employee permissions), FK (ledger approval authority), WMS (warehouse operations), CRM (order management), etc.
Extends DomainResource.
1. Zakres i Zastosowanie
Capability = pojedyncze uprawnienie/zdolność zdefiniowana w katalogu: identifier (kod systemowy), name (opis), type lub category (CodeableConcept – kategoria uprawnienia, np. approval, access, admin, operation). NE zawiera informację „kto to ma" – to zarządzane przez GrantAssignment.
- Katalog uprawnień – rejestr Capability w organizacji (identifier, name, type/category); używane w GrantAssignment.granted.
2. Strukturą (Pola)
Dodatkowo do DomainResource (id, meta, text, comment, category, status, type, contained, attribute):
| Nazwa | Kar. | Typ | Opis |
|---|---|---|---|
| identifier | 0..* | Identifier | Identyfikatory uprawnienia (kod systemowy, id ze źródła) |
| name | 0..1 | string | Nazwa uprawnienia (np. „Zatwierdź Fakturę", „Wydaj Towary", „Dostęp do Raportu Płac") |
| type | 0..1 | CodeableConcept | Typ/kategoria uprawnienia (system https://api-erp.kamsoft.pl/ns/capability-type: approval, access, operation, admin, itp.) |
| category | 0..* | CodeableConcept | Dodatkowa klasyfikacja (np. domena: FK, HR, WMS, CRM) – z DomainResource |
| description | 0..1 | string | Szczegółowy opis (np. „Zatwierdź faktury do €10.000") |
| validFrom | 0..1 | dateTime | Początek ważności uprawnienia (opcjonalnie) |
| validTo | 0..1 | dateTime | Koniec ważności uprawnienia (opcjonalnie; null = bez wygaśnięcia) |
Uwagi: - status (z DomainResource) – np. active, retired, draft - type lub category grupują uprawnienia (np. approval, access, operation) - validFrom/To – opcjonalnie; zwykle zarządzane na poziomie GrantAssignment
3. Przykłady Across Modułów
HR (Uprawnienia pracownicze)
approve-leave— Zatwierdź wnioski urlopoweapprove-expense-report— Zatwierdź raporty kosztów (kwota ≤ €5.000)submit-timesheet— Prześlij rejestr godzinmanage-employee-data— Czytaj/edytuj dane pracownika
FK (Finanse-Księgowanie)
approve-invoice— Zatwierdź faktury (kwota ≤ €10.000)post-to-gl— Księguj transakcje w Księdze Głównejexport-mainbook— Eksportuj raport głównego rejestruview-bank-account— Czytaj salda kont bankowychapprove-payment— Autoryzuj wykonanie płatności
WMS (Magazyn)
confirm-goods-receipt— Potwierdź przyjęcie towarów (PZ)issue-goods— Wydaj towary z magazynu (WZ)adjust-inventory— Koryguj запасы (korekty)create-transfer— Utwórz transfer towaru między lokalizacjamiview-stock-level— Dostęp tylko do odczytu do zapasów
CRM / Order-to-Cash
create-sales-order— Utwórz nowe zamówienie sprzedażoweconfirm-delivery— Potwierdź dostawę zamówieniareceive-payment— Zarejestruj otrzymaną płatnośćcancel-sales-order— Anuluj ZS (reversal)
4. Wyrównanie do ERP
| System | Odpowiednik | Uwagi |
|---|---|---|
| SAP HCM / S/4HANA | Auth. object, Pfcg role component | Pojedyncze uprawnienie = authorization object; Duty = PFCG profile |
| SAP SuccessFactors | Permission | Permission jako pojedyncze uprawnienie; role łączą uprawnienia |
| Oracle HCM Cloud | Permission, role, privilege | Capability = permission; Duty = role łączący uprawnienia |
| Workday | Business process permission, domain permission | Capability = permission w kontekście domeny/procesu |
| Microsoft Dynamics 365 | Security role, privilege, role | Privilege = Capability; Role = Duty |
5. Zasoby powiązane
→ GrantAssignment — Przypisanie Capability do Party, Position lub OrganizationUnit
→ Przegląd Core RBAC — Model RBAC cross-module
→ Przykłady workflow'ów RBAC: sekcje demonstracyjne w dokumentacji Core