A jegyekkel való munka zavarba ejtő feladat lehet. Számos lehetőség van a jegyek feldolgozására vagy lezárására, még akkor is, ha ezek nem szükségesek egy jegy aktuális állapotában vagy az aktuális ügyintéző szerepe miatt. A szükségtelen bejegyzések elrejtése megtisztítja a menüsort, és egyszerűbbé teszi az azzal végzett munkát, valamint a dinamikus mezőkből származó értékek vagy a következő várólisták elrejtése csökkenti az emberi hiba esélyét.
Az OTRS hozzáférés-vezérlési listákat (ACL) használ, hogy korlátozza az ügyintézőket és az ügyfél-felhasználókat a jegyek lehetőségeiben, így csak helyes és értelmes tevékenységeket tesz lehetővé a jegyekkel. Az OTRS adminisztrátorok egyszerűen tudnak ACL-eket előállítani a grafikus felületen, hogy megakadályozzák a jegyek bezárását mindaddig, amíg megfelelnek bizonyos követelményeknek, megakadályozzák, hogy a jegyeket áthelyezzék várólistákba a meghatározott információk hozzáadása előtt és még sok mást is korlátozhatnak.
Használja ezt a képernyőt a rendszeren lévő hozzáférés-vezérlési listák kezeléséhez. Egy friss OTRS telepítés alapértelmezetten nem tartalmaz hozzáférés-vezérlési listákat. A hozzáférés-vezérlési listák kezelésének képernyője a Folyamatok és automatizálás csoport Hozzáférés-vezérlési listák (ACL) moduljában érhető el.
Hozzáférés-vezérlési listák kezelése
Megjegyzés
Ha hozzáférés-vezérlési listákat hoz létre, akkor tartsa észben, hogy azok ábécé sorrendben lesznek végrehajtva, ahogy a hozzáférés-vezérlési listák áttekintőben megjelennek.
Figyelem
Az ACL korlátozások mellőzve lesznek a rendszergazda fióknál (1-es felhasználó-azonosító).
Egy új ACL létrehozásához:
-
Kattintson az Új ACL létrehozása gombra a bal oldalsávban.
-
Töltse ki a szükséges mezőket.
-
Kattintson a Mentés gombra.
-
Át lesz irányítva az ACL szerkesztése képernyőre az ACL struktúra szerkesztéséhez.
Egy ACL szerkesztéséhez:
-
Kattintson egy ACL-re az ACL-ek listájában vagy már átirányításra került ide az Új ACL létrehozása képernyőről.
-
Módosítsa a mezőket és az ACL struktúrát.
-
Kattintson a Mentés vagy Mentés és befejezés gombra.
-
Állítsa üzembe az összes ACL-t.
Egy ACL törléséhez:
-
Kattintson egy ACL-re az ACL-ek listájában.
-
Állítsa az Érvényesség beállítás érvénytelen vagy átmenetileg érvénytelen értékre.
-
Kattintson a Mentés gombra. Egy új Érvénytelen ACL-ek törlése gomb fog megjelenni a bal oldalsávban.
-
Kattintson az Érvénytelen ACL-ek törlése gombra.
-
Kattintson a Törlés gombra a megerősítő képernyőn.
-
Állítsa üzembe az összes ACL-t.
Figyelem
Az ACL-ek a ZZZACL.pm
fájlba lesznek kiírva Perl-formátumban. Üzembe állítás nélkül az összes ACL továbbra is ebben a gyorsítótárfájlban lesz, még akkor is ha törölték azokat vagy az Érvényesség beállítást érvénytelen vagy átmenetileg érvénytelen értékre állították. Ne felejtse el üzembe állítani az összes ACL-t a módosítások után!
Az összes ACL üzembe állításához:
-
Kattintson az ACL-ek üzembe állítása gombra a bal oldalsávban.
Megjegyzés
Az új vagy módosított ACL-eket üzembe kell állítani, hogy hatással legyenek a rendszer viselkedésére. Az Érvényesség beállítás érvényes értékre állítása csak azt jelzi, hogy mely ACL-eket kell üzembe állítani.
Az összes ACL exportálásához:
-
Kattintson az ACL-ek exportálása gombra a bal oldalsávban.
-
Válasszon egy helyet a számítógépén az
Export_ACL.yml
fájl mentéséhez.
ACL-ek importálásához:
-
Kattintson a Tallózás… gombra a bal oldalsávban.
-
Válasszon egy előzőleg exportált
.yml
fájlt. -
Kattintson a Felülírja a meglévő ACL-eket? jelölőnégyzetre, ha felül szeretné írni a meglévő ACL-eket.
-
Kattintson az ACL beállítások importálása gombra.
-
Állítsa üzembe az importált ACL-eket az ACL-ek üzembe állítása gombbal.
Megjegyzés
Ha több ACL van hozzáadva a rendszerhez, akkor használja a szűrődobozt egy bizonyos ACL megkereséséhez azáltal, hogy egyszerűen begépeli a nevét a szűrőbe.
Figyelem
Nem szabad, hogy a rendszer 80 érvényes ACL-nél többet tartalmazzon. A korlát túllépése befolyásolhatja a rendszer teljesítményét.
Figyelem
Az objektum nevének megváltoztatásakor gondosan kell eljárni, az ellenőrzés csak bizonyos beállításokhoz nyújt vizsgálatot, és figyelmen kívül hagyja azokat a dolgokat, ahol a nevet nem lehet ellenőrizni. Néhány ilyen például a vezérlőpult fájljai, a hozzáférés-vezérlési listák (ACL-ek) és a folyamatok (szekvenciafolyam-műveletek), hogy egy párat említsünk. A beállítások dokumentálása kulcsfontosságú egy névváltoztatás túléléséhez.
Lehetséges adatvesztés
Figyelem
Ha egy legördülő mezőnek olyan értéke van, amelyet egy ACL tilt, akkor a jegyben tárolt érték megváltozik vagy eltávolításra kerül az űrlap elküldése után. Ez lehetséges adatvesztést okozhat!
Íme egy példa a lehetséges problémák magyarázatára:
Létrehoztak egy legördülő dinamikus mezőt négy lehetséges értékkel: BRONZ, EZÜST, ARANY és VIP. Üres érték is megengedett. Az ügyintéző csak a BRONZ, EZÜST és ARANY értékeket választhatja ki. A VIP értéket csak az általános ügyintéző állíthatja be. Ezt egy ACL korlátozza. A dinamikus mező hozzá van adva néhány jegyképernyőhöz. Az egyik képernyőn a mező kötelezőként van beállítva, de egy másik képernyőn a mező nem kötelező, és üres érték is megengedett.
-
Az ügyintéző létrehoz egy új jegyet. Az ügyintéző csak a megengedett értékeket választhatja ki, a VIP érték nem jelenik meg. EZÜST lesz kiválasztva, és a jegy létrejön.
-
Az általános ügyintéző megváltoztatja az értéket VIP értékre.
-
Az ügyintéző megnyit egy olyan jegyműveletet, ahol a mező kötelezőként van hozzáadva. Mivel a mező kötelező, az ügyintézőnek ki kell választania egy másik értéket a VIP helyett, amely egy ACL szabály miatt nem látható az ügyintéző számára. Az űrlap elküldésre kerül, és a dinamikus mező értéke megváltozik. Ez egy nem szándékos változtatás lehet.
-
Az általános ügyintéző ismét megváltoztatja az értéket VIP értékre.
-
Az ügyintéző megnyit egy olyan jegyműveletet, ahol a mező nem kötelezőként van hozzáadva. A mező üres értéket jelenít meg, mert a jelenlegi VIP érték nem látható az ügyintéző számára. Mivel a mező nem kötelező, az ügyintéző nem változtatja meg az értéket, és üresen hagyja. Az űrlap elküldésre kerül, és a dinamikus mező értéke üres értékre változik. Ez lehetséges adatvesztés lehet.
Legyen óvatos a nem szándékos adatváltoztatással! Ugyanez a helyzet állhat elő a dinamikus mezőkkel, prioritásokkal, várólistákkal, állapotokkal, típusokkal és bármely más, az ACL-ek által tiltott legördülő mezőkkel.
ACL beállítások
A következő beállítások akkor érhetők el, ha hozzáadja vagy szerkeszti ezt az erőforrást. A csillaggal jelölt mezők kitöltése kötelező.
- Név *
-
Ennek az erőforrásnak a neve. Ez a mező csak a következő karaktereket tartalmazhatja: a-z, A-Z, 0-9, +, -, *, /. A név megjelenítésre kerül az áttekintő táblázatban.
- Megjegyzés
-
Adjon további információkat ehhez az erőforráshoz. Mindig ajánlott egy teljes mondattal kitölteni ezt a mezőt az erőforrás leírásaként a jobb érthetőségért, mert a megjegyzés is megjelenik az áttekintő táblázatban.
- Leírás
-
Mint a megjegyzés, csak hosszabb szöveg adható meg ide.
- Leállítás találat után
-
Az ACL-ek ábécé sorrendben kerülnek kiértékelésre. Ez a beállítás letiltja a későbbi ACL-ek kiértékelését.
- Érvényesség *
-
Állítsa be ennek az erőforrásnak az érvényességét. Minden erőforrás csak akkor használható az OTRS-ben, ha ez a mező érvényes értékre van állítva. Ennek a mezőnek az érvénytelen vagy átmenetileg érvénytelen értékre állításával letiltja az erőforrás használatát.
ACL struktúra szerkesztése
Az ACL-meghatározás két nagy részre osztható fel: Illesztési beállítások és Változtatási beállítások.
Illesztési beállítások
Az illesztési beállításokban az ACL-ek olyan attribútumokat tartalmaznak, amelyeknek teljesülniük kell az ACL használata érdekében. Ha egy ACL egynél több attribútumot tartalmaz, akkor az összes attribútumnak teljesülnie kell. Ha az ACL-ben meghatározott attribútumok nem egyeznek meg az elküldött attribútumokkal, akkor az ACL-nek nem lesz semmilyen hatása, de bármely egyéb ACL-egyezésnek viszont hatása lesz.
Properties
-
Ez a szakasz olyan illesztési lehetőségeket tartalmaz, amelyek röptében megváltoztathatók. Például egy jegy létrehozásakor a jegy adatai dinamikusan megváltoznak, amint az ügyintéző beállítja az információkat. Ha be van állítva egy ACL egy jegyattribútum illesztéséhez, akkor az ACL csak akkor lesz aktív, ha az illesztési attribútumot kiválasztják, és csökkentheti az egyéb jegyattribútumokat, de amint egy másik érték lesz kiválasztva, az ACL-nek nem lesz semmilyen hatása.
PropertiesDatabase
-
Ez a szakasz hasonló a
Properties
szakaszhoz, de nem fogad el a jegyattribútumokban olyan változtatásokat, amelyek nincsenek elmentve az adatbázisba. Ez azt jelenti, hogy egy attribútum megváltoztatása elküldés nélkül nem fog semmilyen hatást okozni. Ez a szakasz nem használható a jegylétrehozás képernyőknél (mivel a jegyek még nincsenek létrehozva az adatbázisban).
Változás beállítások
A változtatási beállítások tartalmazzák a szabályokat egy jegy lehetséges lehetőségeinek csökkentéséhez.
Possible
-
Ez a szakasz használható kizárólag azokra az elemekre csökkentendő adatok visszaállításához, amelyek ebben a szakaszban be vannak állítva.
PossibleAdd
-
Ez a szakasz használható azon hiányzó elemek hozzáadásához, amelyek csökkentve lettek más ACL-ekben. Ez a szakasz csak egyéb olyan ACL-ekkel együtt használható, amelyek rendelkeznek
Possible
vagyPossibleNot
szakaszokkal. PossibleNot
-
Ez a szakasz adott elemek eltávolításához használható a jelenlegi adatokból. Használható önállóan vagy más
Possible
vagyPossibleAdd
szakaszokkal rendelkező ACL-ekkel együtt.
Módosítók
Azért, hogy az ACL-ek fejlesztését könnyebbé és hatékonyabbá tegye, van egy úgynevezett módosítók halmaza az attribútumokhoz minden egyes szakasznál. Ezek a módosítók az alábbiakban vannak ismertetve:
[Not]
-
Ez a módosító egy érték tagadásához használható. Például:
[Not]2 low
ebben az esetben a jegyprioritásokról beszélve ugyanaz lesz, mintha a következő lenne: 1 nagyon alacsony, 3 normál, 4 magas, 5 nagyon magas. [RegExp]
-
Egy reguláris kifejezés megadásához használható több érték illesztéséhez. Például a
[RegExp]low
a prioritásokról beszélve ugyanaz mint a következő: 1 nagyon alacsony, 2 alacsony. [regexp]
-
Nagyon hasonló a
[RegExp]
módosítóhoz, de nem érzékeny a kis- és nagybetűkre. [NotRegExp]
-
Tagadott reguláris kifejezés, például
[NotRegExp]low
a prioritásokról beszélve ugyanaz mint a következő: 3 normál, 4 magas, 5 nagyon magas. [Notregexp]
-
Nagyon hasonló a
[NotRegExp]
módosítóhoz, de nem érzékeny a kis- és nagybetűkre.
ACL példák
- Az elérhető várólisták korlátozása az aktuális várólista és prioritás alapján
-
Ez a példa azt mutatja be, hogy hogyan lehet az elérhető várólistákat az Alert várólistára korlátozni, ha a jegy jelenleg a Raw várólistán van, és a prioritása 5 nagyon magas.
Ebben a példában a
PropertiesDatabase
van használva. Ez azt jelenti, hogy a jegynek már a Raw várólistában kell lennie, és 5 nagyon magas prioritással kell rendelkeznie ahhoz, hogy ezt az ACL-t alkalmazni lehessen.Ez az ACL nem kerül alkalmazásra, ha egy felhasználó csak a Raw várólistát és az 5 nagyon magas prioritást választja ki egy párbeszédablakon. Ennek eléréséhez a
Properties
szakaszt kell használni.Ennek az ACL-nek a használatával csak a Raw várólistában lévő és 5 nagyon magas prioritású jegyeket lehet áthelyezni az Alert várólistába.
--- - Comment: Limit available queues based on current queue and priority ConfigChange: Possible: Ticket: Queue: - Alert ConfigMatch: PropertiesDatabase: Ticket: Priority: - 5 very high Queue: - Raw Description: Restrict the available queues to the “Alert” queue if the ticket is currently in the queue “Raw” and has the priority “5 very high”. Name: 010 Example ACL
- Bizonyos jegytípus nem választhatóvá tétele
-
Ez a példa azt mutatja be, hogy hogyan lehet az Osztályozatlan jegytípust nem választhatóvá tenni a felhasználók számára.
Ebben a példában az illesztési beállítások üresek. Ez azt jelenti, hogy az ACL mindig alkalmazásra kerül, mert a szűrő üres.
--- - Comment: Make certain ticket type not selectable ConfigChange: PossibleNot: Ticket: Type: - Unclassified ConfigMatch: '' Description: Make the ticket type “Unclassified” not selectable. Name: 020 Example ACL
Ne feledje, hogy továbbra is találhat Osztályozatlan jegytípusú jegyeket. Ez például olyan beérkező e-mailek esetén fordul elő, amelyek jegyekre kerülnek átalakításra.
- A jegylezárás nem lehetséges bizonyos jegytípusnál
-
Ez a példa azt mutatja be, hogy hogyan lehet megakadályozni az Osztályozatlan jegytípussal rendelkező jegyek lezárását.
--- - Comment: Ticket closing not possible for cerain ticket type ConfigChange: PossibleNot: Endpoint: - AgentFrontend::Ticket::Action::Close Ticket: State: - '[RegExp]close' ConfigMatch: PropertiesDatabase: Ticket: Type: - Unclassified Description: Prevent tickets with the ticket type "Unclassified" from being closed. Name: 030 Example ACL
Ez az ACL példa használható a korábban bemutatott ACL példával együtt.
Megjegyzés
Figyeljen az ACL-ek sorrendjére. A korábban bemutatott ACL példát az itt bemutatott ACL előtt kell végrehajtani.
- Reguláris kifejezések használta
-
Ez a példa azt mutatja be, hogy hogyan kell reguláris kifejezéseket használni a jegyek illesztéséhez és az elérhető választási lehetőségek szűréséhez.
Ezzel az ACL-lel csak azok a szolgáltatások jelennek meg az ügyintézői felületen (és ha be van állítva, akkor a külső felületen is), amelyek neve tartalmazza a
Hardware
szót, ha a jegy egy olyan várólistában van tárolva, amely neveHW
kezdetű vagy ha egyHW
-vel kezdődő nevű várólistát kiválasztottak egy felhasználói párbeszédablakban.--- - Comment: Using regular expressions ConfigChange: Possible: Ticket: Service: - '[RegExp]Hardware' ConfigMatch: Properties: Ticket: Queue: - '[RegExp]^HW' Description: Use regular expressions for matching tickets and for filtering the available selection options. Name: 040 Example ACL
- Egy dinamikus mező korlátozása egy másik dinamikus mező alapján
-
Ez a példa azt mutatja be, hogy hogyan kell korlátozni a
CarModel
dinamikus mező választható értékeit Polo, Golf és Passat lehetőségekre, ha a felhasználó a VW értéket választotta az ugyanabban a felhasználói párbeszédablakban lévőCarManufacturer
dinamikus mezőben.Győződjön meg arról, hogy a dinamikus mező nevét
DynamicField_Név
formában használja, és arról is, hogy a lehetséges értékek adatkulcsait használja és nem a felhasználónak megjelenített adatértékeket. Mindkettő a dinamikus mező meghatározásában van megadva.--- - Comment: Restrict one dynamic field based on another dynamic field ConfigChange: Possible: Ticket: DynamicField_CarModel: - Polo - Passat - Golf ConfigMatch: Properties: DynamicField: DynamicField_CarManufacturer: - VW Description: Restrict the selectable values of the dynamic field “CarModel” to “Polo”, “Golf” and “Passat”, if a user has selected the value “VW” in the dynamic field “CarManufacturer” in the same user dialog. Name: 050 Example ACL
Az Illesztési beállítások szakaszban a
Ticket
objektum használható aDynamicField
objektum alternatívájaként.--- - Comment: Restrict one dynamic field based on another dynamic field ConfigChange: Possible: Ticket: DynamicField_CarModel: - Polo - Passat - Golf ConfigMatch: Properties: Ticket: DynamicField_CarManufacturer: - VW Description: Restrict the selectable values of the dynamic field “CarModel” to “Polo”, “Golf” and “Passat”, if a user has selected the value “VW” in the dynamic field “CarManufacturer” in the same user dialog. Name: 051 Example ACL
- Egy dinamikus mező korlátozása egy másik dinamikus mező alapján egy műveletben
-
Az előző példa kiterjeszthető egy korlátozással, hogy csak a Szabad mezők megváltoztatása jegyműveletre legyen alkalmazva. Erre a célra azt a feltételt kell hozzáadni az Illesztési beállítások szakaszban, hogy a
FreeText
végpont legyen érintett.--- - Comment: Restrict one dynamic field based on another dynamic field in an action ConfigChange: Possible: Ticket: DynamicField_CarModel: - Polo - Passat - Golf ConfigMatch: Properties: Frontend: Endpoint: - AgentFrontend::Ticket::Action::FreeText Ticket: DynamicField_CarManufacturer: - VW Description: Restrict the selectable values of the dynamic field “CarModel” to “Polo”, “Golf” and “Passat”, if a user has selected the value “VW” in the dynamic field “CarManufacturer” in the “Free Fields” action. Name: 052 Example ACL
- Egy folyamat letiltása egy ügyfél-azonosítónál
-
Ez az ACL megakadályozza egy bizonyos folyamat használatát egy adott ügyfél-azonosítóhoz (ebben a példában az otrs.com ügyfél-azonosítóhoz) rendelt összes ügyfél-felhasználónak.
Mivel az ügyfél-felhasználók csak a külső felületet használják, az ACL ott lesz alkalmazva.
--- - Comment: Disallow a process for a customer ID ConfigChange: PossibleNot: Process: - Process-81b2ff5db648afa3e765785ff0193320 ConfigMatch: Properties: CustomerUser: UserCustomerID: - otrs.com Description: Prevents the use of a certain process for all customer users assigned to a certain customer ID. Name: 060 Example ACL
- A lezárás és áthelyezés jegyműveletek letiltása egy bizonyos folyamatnál
-
Ez az ACL példa azt mutatja be, hogy hogyan kell megakadályozni a Jegy áthelyezése és a Jegy lezárása jegyműveletek megjelenítését, ha egy bizonyos folyamat kerül kiválasztásra.
--- - Comment: Disallow the ticket actions close and move for a certain process ConfigChange: PossibleNot: Endpoint: - AgentFrontend::Ticket::Action::Move - AgentFrontend::Ticket::Action::Close ConfigMatch: PropertiesDatabase: Process: ProcessEntityID: - Process-81b2ff5db648afa3e765785ff0193320 Description: Stop the ticket actions “Move Ticket” and “Close Ticket” from displaying when a specific process is selected. Name: 070 Example ACL
- Felhasználói feladat tevékenység-párbeszédablakok elrejtése egy folyamatban az ügyintéző szerepe alapján
-
Tegyük fel, hogy egy folyamat olyan felhasználói feladat tevékenységet tartalmaz, amelyhez két felhasználói feladat tevékenység-párbeszédablak van hozzárendelve, és ezeket a felhasználói feladat tevékenység-párbeszédablakokat csak olyan ügyintézők hajthatják végre, akik egy adott szereppel rendelkeznek.
A cél a helyes felhasználói feladat tevékenység-párbeszédablakok megjelenítése csak azoknak az ügyintézőknek, akik a megfelelő szereppel rendelkeznek.
Felhasználói feladat tevékenység-párbeszédablak
Ügyintéző szerepe
Jóváhagyás az értékesítéstől
Értékesítési igazgató
Jóváhagyás a marketingtől
Marketingigazgató
Erre a célra három ACL szükséges.
Megjegyzés
A folyamat és a felhasználói feladat tevékenység-párbeszédablakok azonosító alapján vannak hivatkozva.
Az első ACL megakadályozza az összes felhasználói feladat tevékenység-párbeszédablak megjelenítését ezen a felhasználói feladat tevékenységen belül.
--- - Comment: Hide user task activity dialogs in a process based on the agent role ConfigChange: PossibleNot: ActivityDialog: - '[RegExp]^ActivityDialog-' ConfigMatch: PropertiesDatabase: Process: ActivityEntityID: - Activity-919fb73ed4b14087d5085f6e7f13d57d Description: Prevents the display of all user task activity dialogs within this user task activity. Name: 080 Example ACL
A következő ACL segítségével azt érjük el, hogy az Értékesítési igazgató szereppel rendelkező összes ügyintézőnek megjelenjen a Jóváhagyás az értékesítéstől felhasználói feladat tevékenység-párbeszédablak.
--- - Comment: Hide user task activity dialogs in a process based on the agent role ConfigChange: PossibleAdd: ActivityDialog: - ActivityDialog-8ff3a399b5939d1a11e87ad35f72f576 ConfigMatch: PropertiesDatabase: User: Role: - Head of Sales Description: All agents who have the role "Head of Sales" get the user task activity dialog "Approval from Sales" displayed. Name: 081 Example ACL
Az utolsó ACL segítségével azt érjük el, hogy a Marketingigazgató szereppel rendelkező összes ügyintézőnek megjelenjen a Jóváhagyás a marketingtől felhasználói feladat tevékenység-párbeszédablak.
--- - Comment: Hide user task activity dialogs in a process based on the agent role ConfigChange: PossibleAdd: ActivityDialog: - ActivityDialog-18d1bce51750be6e3adee3b5d59a94d7 ConfigMatch: PropertiesDatabase: User: Role: - Head of Marketing Description: All agents who have the role "Head of Marketing" get the user task activity dialog "Approval from Marketing" displayed. Name: 082 Example ACL
Megjegyzés
Figyeljen az ACL-ek sorrendjére. Az ebben a példában elsőként bemutatott ACL-t az utolsó két ACL előtt kell végrehajtani.
- Buktatók a tulajdonságok használata során
-
Ha a jegyattribútumok egyszerre vannak használva mind az Illesztési beállítások, mind a Változtatási beállítások szakaszban, akkor logikai probléma lép fel a
Properties
blokk használatakor, ami megakadályozhatja a jegyműveletek megfelelő használatát.Ebben a példában az Illesztési beállítások szakaszban a Raw várólistát és az 5 nagyon magas prioritást láthatja, és a Változtatási beállítások szakaszban az Alert várólista lehetséges.
--- - Comment: Pitfalls Using Properties ConfigChange: Possible: Ticket: Queue: - Alert ConfigMatch: Properties: Ticket: Queue: - Raw Description: If ticket attributes are used in both Match settings and Change settings at the same time, a logical problem occurs. Name: 090 Pitfalls
Ha üzembe állítja ezt az ACL-t, majd lefuttatja a Jegy áthelyezése jegyműveletet egy jegyen, akkor azt fogja látni, hogy nem tud rákattintani a Küldés gombra, ha kiválasztja a Raw várólistát, mert a változtatási beállítás azonnal alkalmazva lesz (a
Properties
miatt), és ez azt fogja eredményezni, hogy a kiválasztás törlésre kerül, mert a Raw várólista többé nem érvényes választás.Általában ez a logikai probléma elkerülhető, ha a
PropertiesDatabase
blokkot használja aProperties
helyett. Hasonlítsa össze a legelső megadott példával.
ACL hivatkozás
Az ACL-ekben használható tulajdonságok, kulcsok és értékek erősen függenek az OTRS telepítésétől. Például a lehetőségek kiterjeszthetők kiegészítő modulok telepítésével, valamint a Config.pm
fájlban megadott ügyfél-felhasználó leképezéstől is függhet. Emiatt nem lehetséges egy teljes ACL-hivatkozást megadni, amely az összes beállítást tartalmazza.
Az ACL-ekben használható tulajdonságok, kulcsok és értékek példájáért nézze meg a következő ACL-t YAML formátumban.
---
- ChangeBy: root@localhost
ChangeTime: 2020-04-15 16:46:23
Comment: ACL Reference.
ConfigMatch:
Properties:
# Match properties (current values from the form).
CustomerUser:
UserLogin:
- some login
UserCustomerID:
- some customer ID
Group_rw:
- some group
DynamicField:
# Names must be in DynamicField_<field_name> format.
# Values for dynamic fields must always be the untranslated internal
# data keys specified in the dynamic field definition and not the
# data values shown to the user.
# Using the key is also mandatory for dynamic field of type database
# and dynamic field of type web service.
DynamicField_Field1:
- some value
DynamicField_OtherField:
- some value
DynamicField_TicketFreeText2:
- some value
# more dynamic fields
Frontend:
Endpoint:
- AgentFrontend::PersonalPreferences
- AgentFrontend::ProcessTicketNextStep
- AgentFrontend::Ticket::Action::Close
- AgentFrontend::Ticket::Action::Customer
- AgentFrontend::Ticket::Action::EmailOutbound
- AgentFrontend::Ticket::Action::FreeText
- AgentFrontend::Ticket::Action::Link
- AgentFrontend::Ticket::Action::Lock
- AgentFrontend::Ticket::Action::Merge
- AgentFrontend::Ticket::Action::Move
- AgentFrontend::Ticket::Action::Note
- AgentFrontend::Ticket::Action::Owner
- AgentFrontend::Ticket::Action::Pending
- AgentFrontend::Ticket::Action::PhoneCallInbound
- AgentFrontend::Ticket::Action::PhoneCallOutbound
- AgentFrontend::Ticket::Action::Print
- AgentFrontend::Ticket::Action::Priority
- AgentFrontend::Ticket::Action::Process
- AgentFrontend::Ticket::Action::Redirect
- AgentFrontend::Ticket::Action::Responsible
- AgentFrontend::Ticket::Action::SmsOutbound
- AgentFrontend::Ticket::Action::TicketHistory
- AgentFrontend::Ticket::Action::Unlock
- AgentFrontend::Ticket::Action::Unwatch
- AgentFrontend::Ticket::Action::Watch
- AgentFrontend::Ticket::InlineEditing::Property::CustomerUserID
- AgentFrontend::Ticket::InlineEditing::Property::Lock
- AgentFrontend::Ticket::InlineEditing::Property::Owner
- AgentFrontend::Ticket::InlineEditing::Property::Priority
- AgentFrontend::Ticket::InlineEditing::Property::Queue
- AgentFrontend::Ticket::InlineEditing::Property::Responsible
- AgentFrontend::Ticket::InlineEditing::Property::Service
- AgentFrontend::Ticket::InlineEditing::Property::State
- AgentFrontend::Ticket::InlineEditing::Property::Type
- AgentFrontend::Ticket::InlineEditing::Property::Watch
- AgentFrontend::TicketArticle::Action::CopyLink
- AgentFrontend::TicketArticle::Action::Forward
- AgentFrontend::TicketArticle::Action::MarkAsImportant
- AgentFrontend::TicketArticle::Action::MessageLog
- AgentFrontend::TicketArticle::Action::Plain
- AgentFrontend::TicketArticle::Action::Print
- AgentFrontend::TicketArticle::Action::Redirect
- AgentFrontend::TicketArticle::Action::Reply
- AgentFrontend::TicketArticle::Action::ReplyAll
- AgentFrontend::TicketArticle::Action::ReplyToNote
- AgentFrontend::TicketArticle::Action::ReplyViaSms
- AgentFrontend::TicketArticle::Action::Split
- AgentFrontend::TicketArticle::Action::UnmarkAsImportant
- AgentFrontend::TicketCreate::Email
- AgentFrontend::TicketCreate::Phone
- AgentFrontend::TicketCreate::Process
- AgentFrontend::TicketCreate::SMS
- AgentFrontend::TicketDetailView
- AgentFrontend::TicketDetailView::Property
- AgentFrontend::TicketList::Bulk
- AgentFrontend::TicketList::Filters
- ...
- ExternalFrontend::PersonalPreferences
- ExternalFrontend::ProcessTicketCreate
- ExternalFrontend::ProcessTicketNextStep
- ExternalFrontend::Ticket::ExportList # used for technical purpose, not for ACLs
- ExternalFrontend::Ticket::List # used for technical purpose, not for ACLs
- ExternalFrontend::Ticket::Print
- ExternalFrontend::TicketCreate
- ExternalFrontend::TicketDetailView
- ...
Owner:
UserLogin:
- some login
Group_rw:
- some group
Role:
- admin
# more owner attributes
Priority:
ID:
- some ID
Name:
- some name
# more priority attributes
Process:
ProcessEntityID:
# the process that the current ticket is part of
- Process-9c378d7cc59f0fce4cee7bb9995ee3eb
ActivityEntityID:
# the current activity of the ticket
- Activity-f8b2fdebe54eeb7b147a5f8e1da5e35c
ActivityDialogEntityID:
# the current activity dialog that the agent/customer is using
- ActivityDialog-aff0ae05fe6803f38de8fff6cf33b7ce
Queue:
Name:
- Raw
QueueID:
- some ID
GroupID:
- some ID
Email:
- some email
RealName:
- OTRS System
# more queue attributes
Responsible:
UserLogin:
- some login
Group_rw:
- some group
Role:
- admin
# more responsible attributes
Service:
ServiceID:
- some ID
Name:
- some name
ParentID:
- some ID
# more service attributes
SLA:
SLAID:
- some ID
Name:
- some name
Calendar:
- some calendar
# more SLA attributes
State:
ID:
- some ID
Name:
- some name
TypeName:
- some state type name
TypeID:
- some state type ID
# more state attributes
Ticket:
Queue:
- Raw
State:
- new
- open
Priority:
- some priority
Lock:
- lock
CustomerID:
- some ID
CustomerUserID:
- some ID
Owner:
- some owner
DynamicField_Field1:
- some value
DynamicField_MyField:
- some value
# more ticket attributes
Type:
ID:
- some ID
Name:
- some name
# more type attributes
User:
UserLogin:
- some_login
Group_rw:
- some group
Role:
- admin
PropertiesDatabase:
# Match properties (existing values from the database).
# Please note that Frontend is not in the database, but in the framework.
# See section "Properties", the same configuration can be used here.
ConfigChange:
Possible:
# Reset possible options (white list).
Action:
# Possible action options (white list).
- ...
ActivityDialog:
# Limit the number of possible activity dialogs the agent/customer can use in a process ticket.
- ActivityDialog-aff0ae05fe6803f38de8fff6cf33b7ce
- ActivityDialog-429d61180a593414789a8087cc4b3c6f
- ...
Endpoint:
# Limit the functions on agent interface.
- AgentFrontend::PersonalPreferences
- AgentFrontend::ProcessTicketNextStep
- AgentFrontend::Ticket::Action::Close
- AgentFrontend::Ticket::Action::Customer
- AgentFrontend::Ticket::Action::EmailOutbound
- AgentFrontend::Ticket::Action::FreeText
- AgentFrontend::Ticket::Action::Link
- AgentFrontend::Ticket::Action::Lock
- AgentFrontend::Ticket::Action::Merge
- AgentFrontend::Ticket::Action::Move
- AgentFrontend::Ticket::Action::Note
- AgentFrontend::Ticket::Action::Owner
- AgentFrontend::Ticket::Action::Pending
- AgentFrontend::Ticket::Action::PhoneCallInbound
- AgentFrontend::Ticket::Action::PhoneCallOutbound
- AgentFrontend::Ticket::Action::Print
- AgentFrontend::Ticket::Action::Priority
- AgentFrontend::Ticket::Action::Process
- AgentFrontend::Ticket::Action::Redirect
- AgentFrontend::Ticket::Action::Responsible
- AgentFrontend::Ticket::Action::SmsOutbound
- AgentFrontend::Ticket::Action::TicketHistory
- AgentFrontend::Ticket::Action::Unlock
- AgentFrontend::Ticket::Action::Unwatch
- AgentFrontend::Ticket::Action::Watch
- AgentFrontend::Ticket::InlineEditing::Property::CustomerUserID
- AgentFrontend::Ticket::InlineEditing::Property::Lock
- AgentFrontend::Ticket::InlineEditing::Property::Owner
- AgentFrontend::Ticket::InlineEditing::Property::Priority
- AgentFrontend::Ticket::InlineEditing::Property::Queue
- AgentFrontend::Ticket::InlineEditing::Property::Responsible
- AgentFrontend::Ticket::InlineEditing::Property::Service
- AgentFrontend::Ticket::InlineEditing::Property::State
- AgentFrontend::Ticket::InlineEditing::Property::Type
- AgentFrontend::Ticket::InlineEditing::Property::Watch
- AgentFrontend::TicketArticle::Action::CopyLink
- AgentFrontend::TicketArticle::Action::Forward
- AgentFrontend::TicketArticle::Action::MarkAsImportant
- AgentFrontend::TicketArticle::Action::MessageLog
- AgentFrontend::TicketArticle::Action::Plain
- AgentFrontend::TicketArticle::Action::Print
- AgentFrontend::TicketArticle::Action::Redirect
- AgentFrontend::TicketArticle::Action::Reply
- AgentFrontend::TicketArticle::Action::ReplyAll
- AgentFrontend::TicketArticle::Action::ReplyToNote
- AgentFrontend::TicketArticle::Action::ReplyViaSms
- AgentFrontend::TicketArticle::Action::Split
- AgentFrontend::TicketArticle::Action::UnmarkAsImportant
- AgentFrontend::TicketCreate::Email
- AgentFrontend::TicketCreate::Phone
- AgentFrontend::TicketCreate::Process
- AgentFrontend::TicketCreate::SMS
- AgentFrontend::TicketDetailView
- AgentFrontend::TicketDetailView::Property
- AgentFrontend::TicketList::Bulk
- AgentFrontend::TicketList::Filters
- ...
# Limit the functions on external interface.
- ExternalFrontend::PersonalPreferences
- ExternalFrontend::ProcessTicketCreate
- ExternalFrontend::ProcessTicketNextStep
- ExternalFrontend::Ticket::ExportList # used for technical purpose, not for ACLs
- ExternalFrontend::Ticket::List # used for technical purpose, not for ACLs
- ExternalFrontend::Ticket::Print
- ExternalFrontend::TicketCreate
- ExternalFrontend::TicketDetailView
- ...
Process:
# Limit the number of possible processes that can be started.
- Process-9c378d7cc59f0fce4cee7bb9995ee3eb
- Process-12345678901234567890123456789012
- ...
Ticket:
# Possible ticket options (white list).
DynamicField_Field1:
- some value
DynamicField_MyField:
- some value
# more dynamic fields
NewOwner:
# For ticket action screens, where the Owner is already set.
- some owner
OldOwner:
# For ticket action screens, where the Owner is already set.
- some owner
Owner:
# For ticket create screens, because Owner is not set yet.
- some owner
Priority:
- 5 very high
Queue:
- Raw
- some other queue
Service:
- some service
ServiceID:
- some service ID
SLA:
- some SLA
SLAID:
- some SLA ID
State:
- some state
StateID:
- some state ID
# more ticket attributes
PossibleAdd:
# Add options (white list).
# See section "Possible", the same configuration can be used here.
PossibleNot:
# Remove options (black list).
# See section "Possible", the same configuration can be used here.
CreateBy: root@localhost
CreateTime: 2020-04-15 16:46:23
Description: This is the long description of the ACL to explain its usage.
ID: 1
Name: 200-ACL-Reference
StopAfterMatch: 0
ValidID: 3