Hodnota parametra rls 1s nie je nastavená. Zápisník programátora. Vytvorenie obmedzenia RLS

Program 1C má zabudovaný systém prístupových práv, ktorý sa nachádza v Konfigurátore - Všeobecné - Roly.

Čo charakterizuje tento systém a aký je jeho hlavný účel? Umožňuje popísať súbory práv, ktoré zodpovedajú pozíciám používateľov alebo ich činnosti. Tento systém prístupové práva sú statické, čo znamená, že ako správca nastavil prístupové práva na 1C, je. Okrem statického existuje aj druhý systém prístupových práv – dynamický (RLS). Prístupové práva sa v tomto systéme počítajú dynamicky v závislosti od daných parametrov v priebehu práce.

Úlohy v 1C

K najbežnejším nastaveniam zabezpečenia v rôzne programy je takzvaný súbor oprávnení na čítanie / zápis pre rôzne skupiny používateľov a v budúcnosti: zaradenie alebo vylúčenie konkrétneho používateľa zo skupín. Takýto systém sa používa napr operačný systém Windows AD ( Aktívny adresár). Bezpečnostný systém použitý v softvér 1C, dostal názov - role. Čo to je? Roly v 1C je objekt, ktorý sa nachádza v konfigurácii vo vetve: Všeobecné - Roly. Tieto roly 1C sú skupiny, ktorým sú priradené práva. V budúcnosti môže byť každý používateľ zahrnutý a vylúčený z tejto skupiny.

Dvojitým kliknutím na názov roly otvoríte editor práv pre rolu. Vľavo je zoznam objektov, označte ktorýkoľvek z nich a vpravo uvidíte možnosti pre možné prístupové práva:

— čítanie: získanie záznamov alebo ich čiastočných fragmentov z databázovej tabuľky;
- doplnenie: nových záznamov pri zachovaní existujúcich;
— zmena: vykonávanie zmien v existujúcich záznamoch;
- vymazanie: niektoré záznamy, zvyšok zostáva nezmenený.

Upozorňujeme, že všetky prístupové práva možno rozdeliť do dvoch hlavných skupín - ide o „jednoduché“ právo a také právo s pridaním „interaktívnej“ charakteristiky. čo sa tu myslí? A vec je nasledovná.

V prípade, že používateľ otvorí nejaký formulár, napríklad spracovanie, a zároveň naň klikne myšou, program vo vstavanom jazyku 1C začne vykonávať konkrétne akcie, napríklad odstraňovanie dokumentov. Za povolenie takýchto akcií vykonávaných programom zodpovedajú práva 1C „jednoducho“.

V prípade, že používateľ otvorí denník a začne niečo zadávať sám z klávesnice (napríklad nové dokumenty), za povolenie takýchto akcií sú zodpovedné „interaktívne“ práva 1C. Každý používateľ môže mať k dispozícii niekoľko rolí naraz, potom sa pridá povolenie.

RLS v 1C

Prístup k adresáru (alebo dokumentu) môžete povoliť alebo zakázať. Nedá sa to len trochu zapnúť. Na tento účel existuje určité rozšírenie systému rolí 1C, ktorý sa nazýva RLS. Ide o dynamický systém prístupových práv, ktorý zavádza čiastočné obmedzenia prístupu. Používateľovi sa napríklad sprístupnia len dokumenty určitej organizácie a skladu, zvyšok nevidí.

Malo by sa pamätať na to, že systém RLS sa musí používať veľmi opatrne, pretože je dosť ťažké pochopiť jeho zložitú schému a rôzni používatelia môžu mať otázky, keď napríklad porovnávajú rovnakú správu, ktorá je vytvorená z rôznych používateľov. Zoberme si taký príklad. Vyberiete si konkrétny adresár (napríklad organizácie) a konkrétne právo (napríklad čítanie), to znamená, že povolíte čítanie pre rolu 1C. Zároveň si na vzdialenom paneli Obmedzenia prístupu k dátam nastavíte text požiadavky, podľa ktorého sa v závislosti od nastavení nastavuje False alebo True. Nastavenia sú zvyčajne uložené v špeciálnom informačnom registri.

Tento dotaz sa vykoná dynamicky (pri pokuse o organizáciu čítania) pre všetky položky adresára. Funguje to takto: tie záznamy, pre ktoré bola bezpečnostná požiadavka priradená - Pravda, používateľ uvidí, ale ostatné nie. Práva 1C so stanovenými obmedzeniami sú zvýraznené sivou farbou.

Operácia kopírovania toho istého Nastavenia RLS urobené pomocou šablón. Na začiatok si vytvoríte šablónu a pomenujete ju napríklad MyTemplate, v ktorej zohľadníte požiadavku na zabezpečenie. Následne v nastaveniach prístupových práv zadajte názov tejto šablóny takto: „#MyTemplate“.

Keď používateľ pracuje v režime 1C Enterprise, pri pripájaní k RLS sa môže zobraziť chybové hlásenie ako: „Nedostatočné práva“ (napríklad na čítanie adresára XXX). To znamená, že systém RLS zablokoval čítanie niektorých záznamov. Ak chcete zabrániť opätovnému zobrazeniu tejto správy, musíte do textu požiadavky zadať slovo POVOLENÉ.

Všetky nastavenia používateľských práv, ktoré vykonáme v rámci tohto článku, sa nachádzajú v časti 1C 8.3 „Správa“ - „Nastavenia používateľov a práv“. Tento algoritmus podobné vo väčšine konfigurácií riadené formuláre. Ako príklad bude použitý účtovný program 1C, ale nastavenie práv v iných programoch (1C UT 11, 1C ZUP 3, 1C ERP) prebieha úplne rovnakým spôsobom.

Poďme do sekcie "Používatelia" okna nastavení. Tu vidíme dva hypertextové odkazy: „Používatelia“ a „Nastavenia prihlásenia“. Prvý z nich vám umožňuje prejsť priamo na zoznam používateľov tohto informačnú základňu. Pred vytvorením nového používateľa zvážte možné nastavenia prihlásenia (hyperlink vpravo).

V tomto formulári nastavení môžete nastaviť zložitosť hesla (najmenej 7 znakov, povinný obsah rôzne druhy postavy atď.). Tu môžete určiť aj dĺžku hesla, dobu jeho platnosti a zákaz prístupu do programu pre používateľov, ktorí po určitú dobu nevykazujú žiadnu aktivitu.

Teraz môžete prejsť priamo na pridanie nového používateľa do 1C. Môžete to urobiť kliknutím na tlačidlo "Vytvoriť", ako je znázornené na obrázku nižšie.

V prvom rade podotknime celé meno- "Antonov Dmitrij Petrovič" a vyberieme z príslušného adresára individuálne. Tu môžete uviesť aj oddelenie, v ktorom náš zamestnanec pracuje.

Prihlasovacie meno „AntonovDP“ bolo nahradené automaticky ako skratka pre celé meno „Antonov Dmitrij Petrovič“. Nastavte heslo a overenie pre 1C Enterprise. Tu môžete tiež určiť, či daný používateľ vlastná zmena hesla.

Predpokladajme, že chceme, aby bol Dmitrij Petrovič Antonov dostupný vo výberovom zozname pri spustení tejto informačnej databázy. Ak to chcete urobiť, musíte nastaviť príznak na položke "Zobraziť vo výberovom zozname". V dôsledku toho bude autorizačné okno pri spustení programu vyzerať ako na obrázku nižšie.

Venujme pozornosť ďalšiemu dôležitému nastaveniu na karte používateľskej príručky - "Prihlásenie do programu je povolené." Ak oneskorenie nie je nastavené, používateľ jednoducho nebude môcť vstúpiť do tejto informačnej databázy.

Prístupové práva

Po vyplnení všetkých údajov v karte používateľa - Antonov Dmitrij Petrovič ich zapíšeme a pristúpime k nastaveniu prístupových práv, ako je znázornené na obrázku nižšie.

Pred nami sa otvoril zoznam predtým zadaných profilov prístupu do programu. Začiarknite políčka, ktoré sú povinné.

Prístup k skupinovým profilom

Profily prístupových skupín je možné konfigurovať z hlavného formulára na nastavenie používateľov a práv. Prejdite do sekcie „Prístupové skupiny“ a kliknite na hypertextový odkaz „Prístupové skupinové profily“.

Poďme tvoriť nová skupina z otvoreného formulára zoznamu. V tabuľkovej časti na záložke „Povolené akcie (role)“ je potrebné zaškrtnúť políčka pri tých rolách, ktoré ovplyvnia prístupové práva používateľov zaradených do nami vytváranej skupiny. Všetky tieto roly sa vytvárajú a konfigurujú v konfigurátore. Nie je možné ich upravovať ani vytvárať z používateľského režimu. Môžete si vybrať iba z existujúceho zoznamu.

RLS: Obmedzenie prístupu na úrovni záznamu

Umožňuje flexibilnejšie konfigurovať prístup k údajom programu v určitých sekciách. Pre jeho aktiváciu nastavte príznak na rovnomennej položke vo formulári nastavenia užívateľov a práv.

Upozorňujeme, že povolenie tohto nastavenia môže nepriaznivo ovplyvniť výkon systému. Ide o to, že mechanizmus RLS mení všetky požiadavky v závislosti od stanovené obmedzenia.

Poďme na profil prístupovej skupiny "Testovacia skupina", ktorý sme vytvorili predtým. Obrázok nižšie ukazuje, že po povolení obmedzenia prístupu na úrovni záznamu sa objavila ďalšia karta „Obmedzenia prístupu“.

Predpokladajme, že chceme, aby používatelia, ktorým je testovacia skupina pridelená, mali prístup k údajom pre všetky organizácie v tejto infobáze okrem tých, ktoré sú uvedené v profile.

V hornej časti tabuľky nastavte obmedzenie prístupu podľa organizácie. V spodnej časti upresníme, že pre organizáciu Roga LLC nebude poskytnutý prístup k údajom (dokumentom, adresárom atď.).

1C má zabudovaný systém prístupových práv (tento systém sa nazýva roly 1C). Tento systém je statický - keďže administrátor nastavil práva na 1C, tak je.

Okrem toho existuje dynamický systém prístupových práv (nazývaný - RLS 1C). V ňom sa práva 1C dynamicky vypočítavajú v čase práce používateľa na základe zadaných parametrov.

Jedným z najbežnejších nastavení zabezpečenia v rôznych programoch je súbor povolení na čítanie / zápis pre skupiny používateľov a potom - zaradenie alebo vylúčenie používateľa zo skupín. Podobný systém sa používa napríklad vo Windows AD (Active Directory).

Takýto bezpečnostný systém v 1C sa nazýva Roles 1C. Roles 1C sa nachádza v konfigurácii vo vetve General / Roles. Roly 1C fungujú ako skupiny, ktorým sú priradené práva 1C. Ďalej je používateľ zahrnutý alebo vylúčený z tejto skupiny.

Dvojitým kliknutím na názov roly 1C otvoríte editor práv pre rolu 1C. Na ľavej strane je zoznam 1C objektov. Vyberte ľubovoľné a vpravo sa zobrazia možnosti prístupových práv (minimálne: čítať, pridávať, meniť, mazať).

Pre hornú vetvu (názov aktuálna konfigurácia) Sú nainštalované administrátorské práva 1C a prístup na spustenie rôznych možností.

Všetky práva 1C sú rozdelené do dvoch skupín - „jednoduché“ právo a rovnaké právo s pridaním „interaktívneho“. Čo to znamená?

Keď používateľ otvorí formulár (napríklad spracovanie) a stlačí na ňom tlačidlo, program vo vstavanom jazyku 1C vykoná určité akcie, napríklad vymaže dokumenty. Za povolenie týchto akcií (vykonávaných programovo) - "jednoducho" sú zodpovedné práva 1C.

Keď používateľ otvorí denník a začne niečo robiť z klávesnice sám (napríklad zadávanie nových dokumentov), ​​ide o „interaktívne“ práva 1C.

Používateľ môže mať k dispozícii viacero rolí, v takom prípade sa povolenia sčítajú.

Sekcia o možnostiach nastavenia prístupových práv pomocou rolí je objekt 1C. To znamená, že môžete povoliť prístup k adresáru alebo ho zakázať. Nedá sa trochu zapnúť.

Na tento účel existuje rozšírenie systému rolí 1C s názvom 1C RLS. Ide o dynamický systém prístupových práv, ktorý umožňuje čiastočne obmedziť prístup. Používateľ napríklad vidí len doklady pre určitý sklad a organizáciu a zvyšok nevidí.

Opatrne! Pri používaní mätúcej schémy RLS 1C môžu mať rôzni používatelia otázky, keď sa pokúšajú overiť rovnakú správu vygenerovanú pod rôznymi používateľmi.

Beriete si určitý adresár (napr. organizácie) a určité právo (napr. čítanie). Povoľujete čítanie pre rolu 1C. Na paneli Obmedzenie prístupu k údajom nastavíte text dotazu, ktorý vráti hodnotu TRUE alebo FALSE v závislosti od nastavení. Nastavenia sú zvyčajne uložené v informačnom registri (napríklad register konfiguračných informácií Accounting UserAccessRightsSettingsUsers).

Táto požiadavka sa vykonáva dynamicky (pri pokuse o implementáciu čítania) pre každú položku adresára. Teda pre tie záznamy, pre ktoré bezpečnostný dotaz vrátil TRUE, to používateľ uvidí, ale zvyšok nie.
Práva 1C, ktoré podliehajú obmedzeniam RLS 1C, sú zvýraznené sivou farbou.

Kopírovanie rovnakých nastavení RLS 1C sa vykonáva pomocou šablón. Vyrobíte si šablónu, pomenujete ju (napríklad) MyTemplate, zadáte v nej bezpečnostnú požiadavku. Ďalej v nastaveniach prístupových práv 1C zadajte názov šablóny takto: „#MyTemplate“.

Keď používateľ pracuje v režime 1C Enterprise a beží RLS 1C, môže sa mu zobraziť chybové hlásenie „Nedostatočné práva“ (napríklad na čítanie adresára Xxx).

To znamená, že RLS 1C zablokovalo čítanie niekoľkých záznamov.

Aby sa takáto správa neobjavila, je potrebné v texte žiadosti v zabudovanom jazyku 1C použiť slovo POVOLENÉ ().

Napríklad:

Ôsma verzia platformy 1C:Enterprise (dnes 8.3) priniesla veľa zmien vo vzťahu k „siedmim“, medzi ktorými bol obzvlášť významný mechanizmus obmedzovania prístupových práv na rekordnej úrovni. Aj keď sa teoreticky môžete zaobísť bez toho, iba pomocou rolí, RLS vám umožňuje dosiahnuť viac jemné ladenie prístup. Ale pre správnu činnosť tohto mechanizmu musíte jasne pochopiť jeho podstatu a mať dostatočné skúsenosti s vývojom v 1C.

čo je RLS?

Podstata tejto funkcionality spočíva v schopnosti vývojára zabrániť konkrétnemu používateľovi alebo skupine používateľov v prístupe k tabuľkám alebo poliam databázových tabuliek. Obmedzenia sa zvyčajne používajú na zabránenie používateľom 1C vidieť a upravovať dôverné, utajovaných skutočností, napríklad obmedziť zamestnancov spoločnosti v skupine na prezeranie dokumentov iba pre ich organizáciu. Mechanizmus obmedzenia prístupových práv na úrovni záznamov možno použiť aj na odstránenie nepotrebných informácií z rozhrania.

Aby ste mohli písať požiadavky na obmedzenia RLS, musíte vytvoriť rolu alebo prevziať existujúcu rolu. Nastavenie RLS v 1C 8.3 možno použiť pre nasledujúce akcie používateľa:

  • Pridanie;
  • Čítanie;
  • Odstránenie;
  • Zmeniť.

Okrem najširších možností konfigurácie prístupu má RLS aj nevýhody:

  1. Požiadavky na kvalifikáciu vývojára, pretože dotaz bude musieť byť napísaný v zabudovanom jazyku s prihliadnutím na pravidlá syntaxe;
  2. Neschopnosť rýchlo ladiť podmienky;
  3. Obmedzené možnosti podľa popisu logiky: v moduloch dokumentov a adresárov sa budú musieť stále zapisovať príliš zložité podmienky;
  4. Vo verzii klient-server databáz je možný implicitný rast tabuliek zahrnutých v dotaze. Okrem toho je veľmi ťažké sledovať tento proces;
  5. požiadavky na zdroje. Limity RLS spotrebúvajú veľa výkonu klientskeho počítača a servera;
  6. Malá dokumentácia je voľne dostupná.

Ďalším problémom, ktorý môže nastať po nastavení 1C RLS, môžu byť prehľady. Faktom je, že vývojári predvídajú možné obmedzenia RLS a zostavujú zostavy tak, aby zobrazovali iba povolené údaje. Ak majú používatelia nakonfigurované rôzne limity RLS, údaje v prehľade pre rovnaké parametre sa môžu pre nich líšiť. To môže vyvolávať otázky, takže pri navrhovaní zostáv alebo písaní dotazov v RLS musíte takéto situácie zvážiť.

Vytvorenie obmedzenia RLS

Ak chcete pridať obmedzenie RLS, musíte nájsť požadovanú rolu a otvoriť ju dvojitým kliknutím.

Okno, ktoré sa otvorí, obsahuje 2 karty: „Práva“ a „Šablóny obmedzení“. Ak chcete uložiť určité obmedzenia na konkrétnu akciu, musíte ju vybrať a kliknúť na zelené plus v pravej dolnej časti. Objaví sa riadok, v ktorom môžeme nastaviť obmedzenia 1C RLS v zabudovanom jazyku 1C.


Ak poznáte syntax 1C (ako chrbát ruky), môžete písať priamo do poľa „Obmedzenie prístupu“. Vývojári 1C poskytli možnosť otvoriť konštruktor dotazov, ktorý vám pomôže a povie vám, na čo je možné urobiť obmedzenie. Ak ho chcete otvoriť, musíte kliknúť na tlačidlo s tromi bodkami (Vybrať) alebo F4 a zobrazí sa okno s tlačidlom "Tvorca dotazov ...".


V zobrazenom okne môžete nakonfigurovať obmedzenia nielen pre tento adresár, ale aj pre iné systémové objekty. Ak to chcete urobiť, musíte ich pridať na karte "Tabuľky a polia". Predpisujeme obmedzenia pre polia referenčnej knihy "Nomenklatúra" a kliknite na "OK". Venujte pozornosť názvom premenných: Parametre RLS sa nastavujú na začiatku relácie používateľa a musia byť obsiahnuté v objekte metadát.


Na karte „Šablóny obmedzení“ sú nastavené dotazy, ktoré sú potrebné pri kopírovaní rovnakých nastavení RLS v 1C 8.3. Po pridaní šablóny môžete použiť jej názov v nastaveniach prístupových práv.

Je tiež možné pridať obmedzenia pre niekoľko rolí súčasne. Ak to chcete urobiť, v konfiguračnom strome kliknite pravým tlačidlom myši na sekciu "Roly" a vyberte položku "Všetky role".


Na záver by som rád poznamenal, že tento článok je zameraný na konzultantov pre vývojárov 1C a môže pomôcť predovšetkým tým, ktorí už mali skúsenosti s vývojom na 1C: Enterprise. Napriek zjavnej jednoduchosti si znalosť sémantiky a pochopenie štruktúry obchodných procesov vlastného podniku alebo zákazníckej organizácie pre správne rozdelenie práv vyžaduje určitú úroveň vedomostí a skúseností.

Tlačiť (Ctrl+P)

Obmedzenie prístupu k údajom

Mechanizmus obmedzenia prístupu k údajom (známy aj ako RLS, Row Level Security) umožňuje spravovať prístupové práva nielen na úrovni objektov metadát, ale aj na úrovni databázových objektov 1C:Enterprise. Nasledujúce objekty 1C:Enterprise možno použiť na obmedzenie prístupu k údajom:
● role,
● parametre relácie,
● funkčné možnosti,
● privilegované spoločné moduly,
● kľúčové slovo POVOLENÉ v jazyku dopytu.
Zdieľanie týchto objektov umožňuje poskytnúť maximálnu flexibilitu, keď je potrebné rozlišovať prístupové práva k údajom medzi užívateľmi vykonávajúcimi rôzne funkcie.
Obmedzenia prístupu k údajom je možné uvaliť na nasledujúce operácie s údajmi (prístupové práva): čítanie (právo Čítať), pridávanie (právo Pridávanie), upravovanie (právo Úprava) a mazanie (právo Vymazať). Aktuálny používateľ bude môcť vykonať požadovanú operáciu v nasledujúcich prípadoch:
● Pre operácie čítania a mazania musí objekt v databáze spĺňať obmedzenie prístupu k údajom.
● Pre operáciu pridávania sa obmedzenie prístupu k údajom musí zhodovať s objektom, ktorý plánujete zapísať do databázy.
● Pre operáciu zmeny sa obmedzenie prístupu k údajom musí zhodovať s objektom pred zmenou (pre objekt, ktorý sa má čítať), aj po zmene (pre objekt, ktorý sa má zapísať).
Pri zavádzaní obmedzení prístupu k údajom majte na pamäti, že pre operácie úpravy, pridania a vymazania možno zadať iba jednu podmienku a pre operáciu čítania možno zadať viac ako jedno obmedzenie prístupu k údajom. To znamená, že pre čítanie rôznych polí objektu možno nastaviť rôzne podmienky a pri nastavovaní podmienky môžete zadať názov konkrétneho poľa aj špeciálne pole Ostatné polia. V prvom prípade bude podmienka uložená iba vtedy, ak výber (ktorý je čítaním údajov) obsahuje pole, pre ktoré je obmedzenie nastavené, a v druhom prípade bude obmedzenie uložené pre všetky polia objektu okrem pre polia, pre ktoré sú explicitne nastavené obmedzenia.
Pri nastavovaní obmedzenia pre konkrétne pole sa toto pole načíta, ak je obmedzenie splnené, a pri nastavení obmedzenia na Iné polia sa údaje objektu načítajú iba vtedy, ak je obmedzenie splnené pre všetky polia objektu zahrnuté v požiadavke na čítanie údajov. .
Pre databázové objekty nasledujúcich typov môžu byť uložené rôzne obmedzenia odlišné typy zmeny (pridávanie, úprava, mazanie):
Výmenné plány,
● príručky,
● dokumenty,
● Plány typy charakteristík,
● účtovné osnovy,
● plány typov osídlenia,
● obchodné procesy,
● Úlohy.
Pre nasledujúce typy databázových objektov je možné zaviesť obmedzenia na čítanie nielen celého objektu, ale aj jeho jednotlivých polí:
● Výmenné plány,
● príručky,
● dokumenty,
● denníky dokumentov,
● Plány charakteristických typov,
● účtovné osnovy,
● plány typov osídlenia,
● informačné registre,
● obchodné procesy,
● Úlohy.
POZOR! Pri prístupe k poliam databázových objektov pomocou vlastností aplikačných objektov zo vstavaného jazyka 1C:Enterprise sa číta celý objekt, nielen hodnota použitého poľa. Výnimkou je prijatie zobrazenia, keď sa budú čítať iba hodnoty polí zahrnutých do generovania zobrazenia.
Obmedzenia prístupu sú obsiahnuté v rolách, môžu byť špecifikované pre väčšinu metadátových objektov a sú napísané v špeciálnom jazyku, ktorý je podmnožinou dotazovacieho jazyka.

Jazyk obmedzenia prístupu k údajom

Obmedzenia prístupu k údajom sú opísané v špeciálnom jazyku, ktorý je podmnožinou jazyka dotazu ( Detailný popis dopytovací jazyk. Jazyk obmedzenia prístupu k údajom má nasledujúce zmeny týkajúce sa jazyka dotazu:
● V dotaze na obmedzenie prístupu k údajom je ako zdroj údajov vždy jedna tabuľka – je to tabuľka objektu, na ktorý sa vzťahuje obmedzenie (hlavný objekt obmedzenia).
● Popis požiadavky bol skrátený. Jazyk obmedzenia prístupu k údajom používa iba sekcie FROM a WHERE jazyka dotazu. Takže popis jazyka dopytu je nasledujúci:
VYBERTE [POVOLENÉ] [INÉ] [ NAJPRV<Количество> ]
<Zoznam výberových polí>
[OD <Список источников> ]
[KDE<Условие отбора> ]
[GROUP BY <Поля группировки> ]
[MAJÚCE<Условие отбора> ]
[ZA ZMENU [ <Список таблиц špičková úroveň> ]]
Zatiaľ čo popis jazyka dotazu na obmedzenie prístupu k údajom je nasledujúci:
[Alias ​​tabuľky objektu hlavného obmedzenia]
[OD <Список источников> ]
[KDE<Условие отбора> ]

Poddotazy používané v jazyku obmedzenia prístupu k údajom majú obmedzený súbor povolených možností;
● Môžete zadať parametre relácie a funkčné možnosti ako prvky podmienok;
● Všade v dotaze na obmedzenie prístupu k údajom možno použiť šablóny na uľahčenie zapisovania obmedzení.
Hlavnou časťou obmedzenia je podmienka, ktorá sa vyhodnocuje pre každý záznam v databázovej tabuľke, ktorý podlieha obmedzeniu prístupu k údajom. Záznam sa považuje za dostupný, ak sa v dôsledku podmienky pre jeden záznam tabuľky hlavného objektu obmedzenia získa neprázdna tabuľka (t. j. tabuľka s 1 alebo viacerými záznamami). Ak je výsledkom podmienky prázdna tabuľka, záznam, pri ktorom je podmienka takto splnená, sa považuje za neprístupný. Navyše, zmena záznamu v tabuľke hlavného predmetu obmedzenia
sa považuje za platný, ak záznam neporušuje obmedzenie uvedené pre právo, a to tak pred, ako aj po vykonaní operácie úpravy.

Polia tabuľky

V obmedzeniach prístupu k údajom môžete použiť:
● Polia tabuľky objektu, pre ktorý je popísané obmedzenie prístupu k údajom.
Ak je napríklad uvalené obmedzenie na čítanie prvkov adresára Protistrany, potom v obmedzení možno použiť polia adresára Protistrany a jeho tabuľkové časti. Najmä najjednoduchšie obmedzenia čítania prvkov adresára Protistrany môžu vyzerať takto:

WHERE Name = “Tehelňa”
Alebo takto:

KDE Produkty.Názov= „Tehlovo červená“
Kde je produkt tabuľková časť Adresár Protistrany.
● Tabuľkové polia objektov prístupných pomocou odkazov v hlavnom objekte obmedzenia.
Napríklad, ak má atribút Primárny manažér adresára Counterparties typ odkazu na adresár Users, potom obmedzenie prístupu môže mať napríklad nasledujúcu podobu:

KDE PrimaryManager.Code= "Ivanov"
alebo:

KDE Meno hlavného manažéra= "Petrovský"
● Tabuľkové polia objektov spojených s hlavným objektom obmedzenia určitými podmienkami a výrazmi nad nimi.
Napríklad na čítanie prvkov adresára Protistrany môže byť uložené nasledujúce obmedzenie:

protistrany
OD
Adresár.Dodávatelia AS protistrany
ĽAVÉ PRIPOJENIE Adresár.Používatelia AKO Používatelia
SW = Users.Name
KDE = „Petrovský“
Toto obmedzenie používa polia prvkov adresára Users priradených k tomuto prvku adresára Counterparties hodnotou polí Name.

Poddotazy

Poddotazy sa používajú na vytváranie skupín záznamov, ktoré možno použiť:
● na prepojenie s tabuľkou objektu hlavného obmedzenia;
● použiť ako operand operácií porovnávania IN alebo NOT IN.
Poddotazy môžu používať ktorúkoľvek z funkcií jazyka dopytov okrem:
● operátor V HIERARCHII ;
● ponúka VÝSLEDKY;
● výsledky vnorených dopytov by nemali obsahovať tabuľkové časti;
● najmä niektoré virtuálne stoly Zostatky a obraty.
V nasledujúcom príklade obmedzenia čítania z adresára Counterparties sa poddotaz používa ako množina záznamov na prepojenie s hlavným objektom obmedzenia:

protistrany
OD
Adresár.Dodávatelia AS protistrany
ĽAVÉ PRIPOJENIE
(VYBERTE si
Users.Name, Users.Individual
OD
Adresár.Používatelia AKO Používatelia
KDE
Users.Code> „Petechkin“) Používatelia AS
BY Protistrany.HlavnýManažér.Meno = Users.Name
KDE Users.Individual.Meno= "Petrovský"
Nasledujúci príklad ukazuje obmedzenie čítania z adresára PassportData jednotlivcov, v ktorom sa používa poddotaz v
ako operand porovnávacieho operátora B:

KDE
PassportDataIndividual.Individual IN
(VYBERTE SI INÉ
Zamestnanci.Jednotlivec AKO INDIVIDUÁLNY
OD
Register informácií.Zamestnanci Pracovníci AS)
Ak potrebujete získať údaje z tabuľkovej sekcie v poddotaze, potom v sekcii FROM poddotazu musíte pristupovať priamo k tabuľkovej sekcii. Napríklad namiesto:

SELECT Link AS Link .
Produkty.Názov AKO Názov produktu
OD Adresár.Dodávatelia
ako dotaz vnorený do obmedzenia by ste mali použiť:

Možnosti relácie

Požiadavky na obmedzenia prístupu k údajom môžu zahŕňať parametre relácie. Napríklad na čítanie prvkov adresára E-mailové skupiny možno nastaviť nasledujúce obmedzenie prístupu:

KDE Owner.AccountAccess.User = &Aktuálny používateľ
A Owner.AccessAccount.Administration= PRAVDA

CurrentUser je parameter relácie

Funkčné možnosti

Žiadosti o obmedzenie prístupu k údajom môžu zahŕňať funkčné možnosti. Použiť možno len voliteľné funkcie nezávislé od parametrov. Ak má napríklad vyhľadávanie v nomenklatúre atribút Main Warehouse, potom obmedzenie čítania tohto atribútu môže vyzerať takto:

WHERE &WarehouseAccounting = PRAVDA

Kde je skladové účtovníctvo funkčnou možnosťou

Vlastnosti použitia

V obmedzeniach na databázové objekty nasledujúcich typov nemožno použiť všetky polia hlavného dátového objektu obmedzenia:
● v akumulačných registroch môžu obmedzenia prístupu obsahovať iba merania hlavného objektu obmedzenia;
● V účtovných knihách v obmedzeniach môžete použiť len súvahové rozmery hlavného objektu obmedzenia.
POZNÁMKA. Ak sa v podmienkach obmedzenia prístupu k údajom z obratového registra akumulácie použijú merania, ktoré nie sú zahrnuté v súčtoch, potom
pri prístupe do virtuálnej tabuľky obratov sa nepoužívajú uložené súčty a dotaz sa vykonáva úplne podľa tabuľky pohybov.

Akcie obmedzenia prístupu

Obmedzenia prístupu sa kontrolujú pri akomkoľvek vykonávaní príslušných operácií na databázových objektoch (od dialógov, cez vstavaný jazyk, cez dotazy) a môžu pôsobiť jedným z dvoch spôsobov:
● Všetky . Metóda „všetko“ znamená, že niektoré operácie s údajmi (z dialógov, zo vstavaného jazyka alebo prostredníctvom dotazov) sa musia vykonať na všetkých databázových objektoch, ktoré táto operácia zahŕňa. Ak takáto operácia musí čítať alebo upravovať databázové objekty, pre ktoré nie sú splnené príslušné obmedzenia prístupu, operácia sa končí
zlyhal v dôsledku narušenia prístupu.
● Povolené . "Povolená" metóda znamená, že pri vykonávaní operácie s údajmi by sa mali čítať len tie databázové objekty, ktoré spĺňajú príslušné obmedzenia prístupu. Databázové objekty, ktoré nespĺňajú obmedzenia prístupu, sa počas takejto operácie považujú za chýbajúce a neovplyvňujú výsledok operácie.
Obmedzenia prístupu k údajom sú uložené na databázové objekty, keď 1C:Enterprise pristupuje k databáze. Vo verzii klient-server 1C:Enterprise sa obmedzenia uplatňujú na serveri 1C:Enterprise.
Spôsob pôsobenia obmedzení, zvolených na vykonávanie každej operácie s údajmi, je určený účelom tejto operácie a stupňom zodpovednosti za jej výsledky. Pri zobrazovaní sa používa najmä „povolený“ spôsob dynamické zoznamy a niektoré ďalšie interaktívne aktivity. Metóda „all“ sa používa pri vykonávaní akýchkoľvek operácií s aplikačnými objektmi zo vstavaného jazyka 1C:Enterprise, vrátane akýchkoľvek zmien databázových objektov. Preto môže byť napríklad ťažké skonštruovať výber pre metódu Select() správcov adresárov, dokumentov a iných, po ktorej nasleduje obídenie výsledku, ak je na príslušný objekt nastavené dostatočne zložité obmedzenie, pretože nie každá podmienka v obmedzení prístupových práv môže byť adekvátne reprezentované ako výber pre metódu Select().
V dotazoch môžete ovládať, ako fungujú obmedzenia prístupu k údajom. Na tento účel poskytuje jazyk dopytu kľúčové slovo POVOLENÝ. Ak v žiadosti nie je uvedené POVOLENÉ, potom sa obmedzenia uplatňujú spôsobom „všetko“. Ak je zadané slovo ALLOWED, potom je zvolená metóda "povolené".
Je dôležité, že ak v dotaze nie je zadané kľúčové slovo ALLOWED, potom všetky filtre zadané v tomto dotaze nesmú byť v konflikte so žiadnym z obmedzení čítania databázových objektov použitých v dotaze. Okrem toho, ak sa v dotaze používajú virtuálne tabuľky, príslušné filtre sa musia použiť na samotné virtuálne tabuľky.
Príklad:

VYBERTE SI
Kontaktné informácieSliceFirst.View
OD RegisterInformation.ContactInformation.SliceLast(, Type = &Type)
AKO Kontaktné informácieSliceFirst
KDE
ContactInformationSliceFirst.Type = &Typ
Pri použití objektovej techniky nie je podporovaný prístup k údajom v ALLOWED režime. Predpokladá sa, že objektová technika sa používa na najkritickejšie operácie s dátami, vrátane ich zmeny. Ak chcete získať všetky údaje pomocou objektovej technológie, bez ohľadu na stanovené obmedzenia, môžete vykonať potrebné opatrenia v privilegovanom module alebo v mene používateľa s plnými právami. V objektovej technológii neexistujú prostriedky na získanie iba povolených údajov.

Reštrikčný mechanizmus

Akákoľvek operácia s údajmi uloženými v databáze v 1C:Enterprise v konečnom dôsledku vedie k prístupu k databáze s niektorými
žiadosť o prečítanie alebo úpravu údajov. Počas vykonávania dotazov do databázy interné mechanizmy 1C:Enterprise ukladajú obmedzenia prístupu. kde:
● Vygeneruje sa zoznam práv (čítať, pridávať, aktualizovať, mazať), zoznam databázových tabuliek a zoznam polí použitých pri tomto dotaze.
● Zo všetkých rolí aktuálneho používateľa sa vyberú obmedzenia prístupu k údajom pre všetky práva, tabuľky a polia zahrnuté v dotaze. Navyše, ak niektorá rola neobsahuje obmedzenia prístupu k údajom akejkoľvek tabuľky alebo poľa, znamená to, že v tejto tabuľke sú k dispozícii hodnoty požadovaných polí z ľubovoľného záznamu. Inými slovami, absencia obmedzenia prístupu k údajom znamená prítomnosť obmedzenia
KDE je Pravda.
● Obnovia sa aktuálne hodnoty všetkých parametrov relácie a funkčných možností, ktoré sa podieľajú na vybraných obmedzeniach.
Získanie hodnoty parametra relácie od aktuálneho používateľa si nevyžaduje právo získať túto hodnotu. Ak však hodnota niektorého parametra relácie nebola nastavená, dôjde k chybe a dotaz na databázu sa nevykoná.
Načítanie funkčných volieb je ovplyvnené vlastnosťou privilegovaného režimu obnovenia funkčnej voľby.
Ak je táto vlastnosť vymazaná, aktuálny používateľ musí mať prístup na čítanie k objektu, v ktorom je uložená voľba funkcie.
● Obmedzenia odvodené od rovnakej roly sú kombinované s operáciou AND.
● Obmedzenia prijaté od rôznych rolí sú zoradené spoločne.
● Skonštruované podmienky sa pridajú k SQL dotazom, pomocou ktorých 1C:Enterprise volá DBMS. Pri prístupe k údajom zo strany podmienok obmedzenia prístupu sa nevykonáva žiadna kontrola práv (ani k objektom metadát, ani k objektom databázy). Mechanizmus pridávania podmienok navyše závisí od zvoleného režimu fungovania obmedzení „všetky“ alebo „povolené“.
Spôsob "všetko"
Keď sa zavedú obmedzenia pomocou metódy „všetko“, k dotazom SQL sa pridajú podmienky a polia, takže 1C:Enterprise môže získať informácie o tom, či údaje, ktoré sú pre daného používateľa zakázané, boli použité v procese vykonávania databázového dotazu alebo nie. . Ak boli použité zakázané údaje, požiadavka sa zruší. Zavedenie obmedzení prístupu metódou „všetci“ je schematicky znázornené na obr. 1:

Ryža. 1. Metóda „všetko“.

"Povolená" metóda
Keď sa obmedzenia zavedú pomocou „povolené“ metódy, do dotazov SQL sa pridajú také podmienky, aby položky zakázané pre aktuálneho používateľa neovplyvnili výsledok dotazu. Inými slovami, keď sú obmedzenia uložené v „povolenom“ režime, záznamy zakázané pre tohto používateľa sa považujú za chýbajúce, čo je schematicky znázornené na obrázku 3.

Ďalšie objekty súvisiace s obmedzeniami prístupu k údajom

Pri vývoji konfigurácií pomocou obmedzení prístupu k údajom môžu byť užitočné objekty metaúdajov, ako sú parametre relácie, funkčné možnosti a zdieľané moduly s príznakom Privileged.
Možnosti relácie
Parametre relácie možno použiť v obmedzeniach prístupu k údajom rovnakým spôsobom, akým sa parametre dotazu dajú použiť v dotaze.
Funkčné možnosti
Funkčné voľby nezávislé od parametrov možno použiť v obmedzeniach prístupu k údajom rovnakým spôsobom, ako sa v dotaze dajú použiť parametre dotazu.
Privilegované zdieľané moduly

Ak je pre spoločný modul začiarknuté políčko Privilegované, potom vykonávanie procedúr a funkcií tohto modulu nadobúda dôležité špecifiká:
● Vo verzii klient-server 1C:Enterprise môže byť privilegovaný iba modul, ktorý beží na serveri.
● Vykonávanie procedúr a funkcií privilegovaného modulu a všetko, čo sa z nich volá, sa vykonáva, keď je obmedzovací systém vypnutý
práva na objekty metadát aj na údaje. Z privilegovaného modulu je teda možné vykonať akúkoľvek operáciu
akékoľvek objekty, aj keď aktuálny používateľ nemá príslušné práva.
Privilegované moduly sú pre počiatočná inštalácia hodnoty parametrov relácie používané v obmedzeniach prístupu k údajom.
Stále bežné moduly môžu byť použité na niektoré holistické akcie s údajmi používateľom s obmedzenými právami.
Napríklad, ak funkcie používateľa zahŕňajú zadávanie a zaúčtovanie dokladov, ale používateľ by nemal mať prístup k údajom, ktoré sú ovplyvnené zaúčtovaním dokladu, potom môže byť vykonanie operácie zaúčtovania presunuté do privilegovaného modulu. Používateľovi to umožní zverejňovať dokumenty bez toho, aby mu boli udelené práva na ďalšie informácie (napríklad registre).
Privilegovaný režim
Pri práci s dátami je možné programovo nastaviť privilegovaný režim. Inštalácia softvéru privilegovaný režim
môžu byť potrebné v prípade rozsiahlych operácií s údajmi z infobáz a nemá zmysel kontrolovať prístupové práva k údajom.
Popis privilegovaného režimu nájdete tu.

Použitie preprocesora

Pri úprave textu obmedzenia prístupu k údajom je možné použiť inštrukcie preprocesora. K dispozícii sú nasledujúce pokyny:

#AK<Выражение>#POTOM
#INÁČ AK<Выражение>#POTOM
#INAK
#ENDESSI
<Выражение>- svojvoľný booleovský výraz v zabudovanom jazyku, ktorého výsledkom je typ Boolean. Výraz môže obsahovať:
● porovnávacie operácie<, >, <=, >= , =, <> ;
● logické operácie AND, OR, NOT ;
● Parametre relácie – syntax je &Parameter , kde Parameter je názov parametra relácie.
Ak je výsledok výrazu príkazu #IF alebo #ELSEIF True, text za kľúčovým slovom #THEN sa umiestni do výsledného textu príkazu na obmedzenie prístupu. Ak sa výraz vyhodnotí ako False, potom text za kľúčovým slovom #THEN nie je umiestnený v texte inštrukcie na obmedzenie prístupu. Text za príkazom #ELSE sa umiestni do výsledného textu obmedzenia prístupu, ak nebola splnená žiadna z predchádzajúcich podmienok.
POZNÁMKA. Ak text obmedzenia prístupu k údajom obsahuje inštrukcie preprocesora, potom takéto obmedzenie neprejde kontrolou syntaxe pri úprave a nemožno ho zmeniť pomocou konštruktora.
Príklad:

#IF &CurrentUser<>„Klimova“ #THEN
<текст ограничения доступа>
#ENDESSI
Tu Súčasný užívateľ- parameter relácie typu DirectoryLink.Users.
Táto konštrukcia znamená, že podmienka nastavenia obmedzení prístupu bude kontrolovaná pre všetkých používateľov z adresára okrem používateľa Klimova.

Textové šablóny na obmedzenie prístupu

Rola môže obsahovať zoznam šablón obmedzenia prístupu, ktoré sú popísané na karte Šablóny obmedzení formulára roly. Šablóny obmedzení prístupu je možné upravovať aj v editore skupinovej úpravy obmedzení prístupu a šablón.
Každá šablóna obmedzenia prístupu má názov a text. Názov šablóny sa riadi obvyklými pravidlami pre mená akceptované v systéme 1C:Enterprise.
Text šablóny obsahuje časť textu v jazyku obmedzenia prístupu k údajom a môže obsahovať parametre, ktoré sú zvýraznené symbolom
“#”.
Po symbole “#” môže nasledovať:
● Jeden z Kľúčové slová:
● Parameter, za ktorým nasleduje číslo parametra v šablóne v zátvorkách;
● CurrentTable – znamená vložiť do textu celý názov tabuľky, pre ktorú sa obmedzenie vytvára;
CurrentTableName– označuje vloženie celého názvu tabuľky (ako reťazcová hodnota v úvodzovkách), na ktorú sa inštrukcia vzťahuje, v aktuálnej verzii vstavaného jazyka do textu;
● NameCurrentAccessRight – obsahuje názov práva, pre ktoré sa vykonáva aktuálne obmedzenie: ČÍTAŤ/ČÍTAŤ, PRIDAŤ/VLOŽIŤ, UPRAVIŤ/
AKTUALIZOVAŤ, VYMAZAŤ;
● názov parametra šablóny – znamená vloženie obmedzenia príslušného parametra šablóny do textu;
● Symbol „#“ – znamená vloženie jedného symbolu „#“ do textu.

Výraz obmedzenia prístupu môže obsahovať:

● Vzor obmedzenia prístupu, ktorý je špecifikovaný vo formáte
#TemplateName("Hodnota parametra šablóny 1", "Hodnota parametra šablóny 2", ...). Každý parameter šablóny je uzavretý v úvodzovkách. Ak potrebujete zadať znak dvojitých úvodzoviek v texte parametra, použite dve dvojité úvodzovky.
● Funkcia StrContains (kde hľadáme, čo hľadáme). Funkcia je navrhnutá tak, aby hľadala výskyt výrazu WhatLooking v reťazci WhereLooking for. Ak sa nájde zhoda, vráti hodnotu True, v opačnom prípade vráti hodnotu False.

● Operátor + pre zreťazenie reťazcov.
Pre uľahčenie úpravy textu šablóny kliknite na karte Šablóny obmedzení vo formulári roly na tlačidlo Nastaviť text šablóny. V dialógovom okne, ktoré sa otvorí, zadajte text šablóny a kliknite na tlačidlo OK.
Systém 1C:Enterprise skontroluje syntax textov šablón, skontroluje syntax pre použitie šablón a makro nahradí texty šablón pre obmedzenie prístupu rolí do textu požiadavky.
Nahradenie makra šablóny je:
● nahradenie výskytov parametrov v texte šablóny hodnotami parametrov z výrazu použitia šablóny v texte obmedzenia;
● pri nahradení výrazu použitia šablóny v texte dopytu výsledným textom šablóny.
Pri volaní konštruktora dotazu pre podmienku, ktorá obsahuje vzory obmedzenia prístupu, sa vydá varovanie o nahradení všetkých vzorov.
Nasledujú príklady vzorcov obmedzení:

Pre flexibilné riadenie prístupu používateľov k údajom v súlade s funkciami sa odporúča pri nastavovaní obmedzení prístupu k údajom
dodržiavať nasledujúce zásady:
● Musíte vybrať súbor informácií (môže závisieť od aktuálneho používateľa), pre ktoré sú vhodné predbežná príprava. Vybrané informácie by mali na jednej strane čo najviac zjednodušiť obmedzenia prístupu k údajom a na druhej strane by nemali byť príliš veľké. Rozdeľte ho podľa parametrov relácie.
● Nastavte hodnoty parametrov relácie v obslužnom programe SetSessionParameters() modulu relácie.
● Nastavte obmedzenia prístupu k tým údajom, pre ktoré je to opodstatnené (údaje sú tajné alebo najdôležitejšie pre zachovanie integrity systému). Majte na pamäti, že nastavenie obmedzení prístupu môže spomaliť akýkoľvek prístup k týmto údajom. Príliš zložité obmedzenia môžu tiež viesť k spomaleniu.
● V prípade potreby zabezpečte, aby určitý obmedzený počet dátových operácií vykonal používateľ, ktorý plný prístup nie je vhodné uvádzať tieto údaje, presúvať tieto akcie do privilegovaných modulov alebo explicitne povoliť a zakázať privilegovaný režim na príslušných miestach v programovom kóde.
● Rôzne kontroly, ktoré systém vykonáva pri zapisovaní objektov, sú prístupné v privilegovanom režime.

To vám umožní nezakázať obmedzenia práv na úrovni záznamov pre príslušné polia, ak konfigurácia pracuje s týmito údajmi
plánované iba v riadenom režime:

● pre adresáre pri kontrole rodiča, vlastníka a jedinečnosti kódu;
● pre dokumenty, obchodné procesy a úlohy pri kontrole jedinečnosti čísla;
● pri výmenných plánoch je zakázaná pri kontrole jedinečnosti kódu;
● pre účtové osnovy a tabuľky charakteristických typov pri kontrole rodiča a jedinečnosti kódu.

Pri vytváraní dotazu na obmedzenie údajov je potrebné mať na pamäti niekoľko obmedzení a funkcií:

● Ak sú pre tabuľku objektov nastavené obmedzenia prístupu k údajom a v dotaze na údaje sa použije spojenie s takouto tabuľkou, potom podmienka spojenia (časť dotazovania softvéru) neumožňuje použiť tabuľkovú časť objektu so špecifikovaným obmedzením prístupu.
● Ak dotaz špecifikuje tabuľku, ktorá v dotaze nepoužíva jediné pole, na túto tabuľku sa vzťahujú všetky obmedzenia prístupu k údajom. Napríklad žiadosť VYBERTE MNOŽSTVO (*) Z Adresára. Protistrany budú spustené v súlade so všetkými obmedzeniami prístupu špecifikovanými pre adresár Test. Obmedzenia ukladá „OR“. To znamená, že budú dostupné všetky záznamy, ktoré sú prístupné aspoň jednou podmienkou. Ak pre niektoré polia nie sú nastavené podmienky, dotaz sa vykoná pre všetky záznamy tabuľky.
Ak dotaz používa tabuľku najvyššej úrovne, obmedzenia zadané pre stĺpce vnorených tabuliek sa nepoužijú.
Ak dotaz používa vnorenú tabuľku, potom sa obmedzenia vzťahujú na vnorenú tabuľku aj na tabuľku najvyššej úrovne.
Napríklad žiadosť VYBERTE MNOŽSTVO(*) Z Adresára.Protistrany.Dohody bude vykonaná s prihliadnutím na všetky obmedzenia pre zoznam Protistrán, ako aj s prihliadnutím na obmedzenia súvisiace s tabuľkovou časťou Zmluvy.

● Ak je prístup k poliam požadovaným na získanie reprezentácie odkazovaného objektu metaúdajov odmietnutý obmedzeniami prístupu na
údaje alebo prístup k objektu je odmietnutý na úrovni prístupu, potom získanie reprezentácie takéhoto objektu nemá vplyv na priebeh aktuálnej transakcie.

Konštruktor obmedzenia prístupu k údajom

Ak chcete zavolať konštruktor v poli tabuľky Obmedzenia prístupu k údajom, v stĺpci Obmedzenie prístupu prepnite do režimu úprav a
kliknite na tlačidlo výberu a vo formulári, ktorý sa otvorí, kliknite na tlačidlo Zostavovač dotazov....
Na obrazovke sa zobrazí formulár konštruktora:


Ryža. 3. Karta „Tabuľky a polia“ konštruktora obmedzení

S jeho pomocou sa vytvárajú podmienky pre nastavenie obmedzení prístupu k dátam.
Na karte Tabuľky a polia vyberte požadované objekty v zozname Databáza a preneste ich do zoznamu Tabuľky. Ak je zadaných viac ako jedna tabuľka, do formulára návrhára sa pridá karta Vzťahy.


Ryža. 4. Karta „Links“ konštruktora obmedzení

Na karte Odkazy sa vytvárajú podmienky, ktoré sú uložené na prepojeniach medzi poľami tabuľky. Ak chcete zadať novú podmienku, kliknite na tlačidlo Pridať a vyberte jednu z tabuliek v stĺpci Tabuľka1. V stĺpci Tabuľka2 vyberte tabuľku, ktorej polia súvisia s poliami prvej. Pod zoznamom podmienok sa nachádzajú ovládacie prvky, ktoré tvoria podmienku prepojenia tabuliek.
Ak je vybratý jednoduchý typ podmienky, potom sa v poli Pole1 a Pole2 vyberú súvisiace polia zadaných tabuliek a nastaví sa podmienka porovnania. Ak sú vybraté polia, ktoré sa neporovnávajú, v riadku zoznamu podmienok v stĺpci Podmienka prepojenia sa zobrazí nasledujúci text: Nesprávne vyplnená podmienka.
Na karte Podmienky, ak je to potrebné, musíte zadať podmienky, podľa ktorých sa vyberú zdrojové údaje.


Ryža. 5. Záložka „Podmienky“ konštruktora obmedzení

Pre každé vybraté pole musíte vybrať typ podmienky a zadať názov parametra. Parameter relácie je povolený ako parameter. Povolené sú viaceré podmienky. V tomto prípade sa v stĺpci Podmienka poľa tabuľky podmienok zobrazí text podmienky v niekoľkých riadkoch.
Kedykoľvek pri vytváraní žiadosti je možné zobraziť text žiadosti kliknutím na tlačidlo Žiadosť.

Dávková úprava obmedzení prístupu a šablón

Režim skupinovej úpravy obmedzení prístupových práv a šablón sa volá príkazom Všetky obmedzenia prístupu obsahové menu Role vetvy. Formulár, ktorý sa otvorí, obsahuje dve karty: Obmedzenia prístupu a Šablóny obmedzení.


Ryža. 6 Všetky obmedzenia povolení a šablóny

Záložka Obmedzenia prístupu všetky zadané obmedzenia prístupu si môžete pozrieť vo všeobecnom zozname (pre všetky roly, objekty, práva, kombinácie polí).
Je možné pridať obmedzenie prístupu pre viacero rolí, objektov, práv a kombinácií rolí naraz.
Zoznam môžete filtrovať podľa rôznych kritérií.


Ryža. 7. Výber obmedzení prístupu

Režim úpravy skupiny vám umožňuje vymazať obmedzenia vybraté v zozname.
Vybrané obmedzenia je možné upraviť. V tomto prípade je možné zmeniť zloženie polí a/alebo obmedzenie prístupu.
Režim hromadnej úpravy vám tiež umožňuje kopírovať vybrané obmedzenia do iných rolí.

Záložka Obmedzujúce vzory môžete vidieť všetky šablóny obmedzenia prístupu prítomné v aplikovanom riešení, pričom v tabuľke sa zobrazí iba prvých 10 riadkov z textu šablóny, ktoré končia symbolom „…“, ak má text šablóny viac ako 10 riadkov. V okne úpravy šablóny sa zobrazí celý text šablóny.


Obrázok 8. Všetky šablóny obmedzenia prístupu

Je možné pridať šablónu obmedzenia prístupu pre niekoľko rolí naraz.