Some checks failed
App Prod-Parity E2E Dispatch / dispatch (push) Failing after 10s
CD Storybook UI / build (push) Failing after 3m25s
CD Storybook UI / dispatch (push) Has been skipped
CD deploy main / website-changed-files (push) Successful in 18m8s
CI Agent Skills / changed-files-check (push) Successful in 18m9s
CI Create App E2E minimal / changed-files-check (push) Successful in 24s
CI Create App / changed-files-check (push) Successful in 26s
CI Docs / changed-files-check (push) Successful in 26s
CI Emails / changed-files-check (push) Successful in 28s
CI Example App Hello World / changed-files-check (push) Successful in 23s
CI Front / changed-files-check (push) Has been skipped
CI Example App Postcard / changed-files-check (push) Successful in 27s
CI UI / changed-files-check (push) Has been skipped
CI Utils Test / changed-files-check (push) Successful in 45s
CI Twenty Apps / discover (push) Successful in 1m3s
CD deploy main / deploy-main (push) Failing after 3s
CI Agent Skills / agent-skills-validate (push) Has been skipped
CI Create App / create-app-test (lint) (push) Has been skipped
CI Emails / emails-test (push) Has been skipped
CI Front / front-task (lingui:compile) (push) Has been skipped
CI Front / front-task (lint) (push) Has been skipped
CI Example App Postcard / example-app-postcard (push) Has been skipped
CI UI / ui-task (lint) (push) Has been skipped
CI UI / ui-task (pack-size) (push) Has been skipped
CI UI / ui-task (size) (push) Has been skipped
CI UI / ui-task (test) (push) Has been skipped
CI UI / ui-task (typecheck) (push) Has been skipped
CI Utils Test / utils-test (push) Has been skipped
CI Twenty Apps / ${{ matrix.app.name }} (push) Has been skipped
CI Emails / ci-emails-status-check (push) Successful in 2s
CI Example App Hello World / ci-example-app-hello-world-status-check (push) Successful in 2s
CI Example App Postcard / ci-example-app-postcard-status-check (push) Successful in 3s
CI UI / ui-sb-test (push) Has been skipped
CI Utils Test / ci-utils-test-status-check (push) Successful in 2s
CI Twenty Apps / ci-twenty-apps-status-check (push) Successful in 2s
CI UI / ci-ui-status-check (push) Successful in 2s
CI Desktop / desktop (push) Failing after 1m8s
Push docs to Crowdin / Push documentation to Crowdin (push) Failing after 55s
Push translations to Crowdin / Extract and upload translations (push) Failing after 5s
Push website translations to Crowdin / Extract and upload website translations (push) Failing after 5s
CI Create App / create-app-test (test) (push) Has been skipped
CI Create App / create-app-test (typecheck) (push) Has been skipped
CI Docs / docs-lint (push) Has been skipped
CI Example App Hello World / example-app-hello-world (push) Has been skipped
CI Front / front-task (lingui:extract) (push) Has been skipped
CI Front / front-task (test) (push) Has been skipped
CI Front / front-task (typecheck) (push) Has been skipped
CI UI / ui-sb-build (push) Failing after 1m32s
CI Twenty Apps / ${{ matrix.app.name }} (${{ matrix.server-source }}) (push) Has been skipped
CI Agent Skills / agent-skills-publish (push) Has been skipped
CI Create App / ci-create-app-status-check (push) Successful in 2s
CI Agent Skills / agent-skills-remote-source (push) Has been skipped
CI Create App E2E minimal / create-app-e2e-minimal (push) Has been cancelled
CI E2E Main / e2e-test (push) Has been cancelled
CI Front / front-sb-build (push) Has been cancelled
CI Front / front-build (push) Has been cancelled
CI Create App E2E minimal / ci-create-app-e2e-minimal-status-check (push) Has been cancelled
CI E2E Main / ci-e2e-main-status-check (push) Has been cancelled
CI E2E Main / notify-main-ci-failure (push) Has been cancelled
CI E2E Main / qa-scout-comment (push) Has been cancelled
CI Front / front-sb-test (push) Has been cancelled
CI Front / front-sb-screenshots (push) Has been cancelled
CI Front / ci-front-status-check (push) Has been cancelled
DPA Sub-Processor Sync / sync-subprocessors (push) Failing after 3s
AI Catalog Sync / sync-catalog (push) Failing after 2s
214 lines
10 KiB
Plaintext
214 lines
10 KiB
Plaintext
---
|
|
title: Oprávnění
|
|
description: Řiďte přístup k objektům, polím a nastavením pomocí oprávnění založených na rolích.
|
|
---
|
|
|
|
Systém oprávnění v Twenty vám umožňuje řídit přístup ke třem hlavním oblastem:
|
|
|
|
* **Objekty a pole**: Řiďte, kdo může prohlížet, upravovat nebo mazat záznamy a jednotlivá pole.
|
|
* **Nastavení**: Spravujte přístup ke konfiguraci pracovního prostoru a administrativním funkcím.
|
|
* **Akce**: Řiďte obecné akce v pracovním prostoru, jako je import dat nebo odesílání e-mailů.
|
|
|
|
## Vytvořit roli
|
|
|
|
Chcete-li vytvořit novou roli:
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. V sekci **Všechny role** klikněte na **+ Vytvořit roli**
|
|
3. Zadejte název role
|
|
4. Na výchozí kartě **Oprávnění** [nakonfigurujte oprávnění](#customize-permissions)
|
|
5. Klikněte na **Uložit** pro dokončení
|
|
|
|
## Smazat roli
|
|
|
|
Chcete-li smazat roli:
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. Klikněte na roli, kterou chcete odebrat
|
|
3. Otevřete záložku **Nastavení** a klikněte na **Smazat roli**
|
|
4. Klikněte na **Potvrdit** v modálním okně
|
|
|
|
<Note>
|
|
Pokud je role smazána, každý člen pracovního prostoru přiřazený k této roli bude automaticky přeřazen na výchozí roli. Všechny role kromě role **Admin** lze odstranit. Musí být vždycky alespoň jeden člen přiřazen k roli **Administrátor**.
|
|
</Note>
|
|
|
|
## Přiřadit role členům
|
|
|
|
### Zobrazit aktuální přiřazení
|
|
|
|
* Přejděte na **Nastavení → Členové → Role**
|
|
* Zjistěte všechny role a kolik členů je ke každé přiřazeno
|
|
* Zobrazit, kteří členové mají jaké role
|
|
|
|
### Přiřadit roli členu
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. Klikněte na roli, kterou chcete přiřadit
|
|
3. Otevřete záložku **Přiřazení**
|
|
4. Klikněte na **+ Přiřadit členu**
|
|
5. Vyberte člena pracovního prostoru ze seznamu
|
|
6. Potvrďte přiřazení
|
|
|
|
### Nastavit výchozí roli
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. V sekci **Možnosti** najděte **Výchozí roli**
|
|
3. Vyberte, kterou roli by noví členové měli automaticky obdržet
|
|
4. Noví členové pracovního prostoru budou při příchodu k této roli přiřazeni.
|
|
|
|
<Note>
|
|
Role můžete přiřazovat pouze stávajícím členům pracovního prostoru. Chcete-li pozvat nové členy, použijte [Správa členů](/l/cs/user-guide/settings/capabilities/member-management).
|
|
</Note>
|
|
|
|
## Přizpůsobit oprávnění
|
|
|
|
Oprávnění určují, k jaké roli může přistupovat nebo upravovat ve vašem pracovním prostoru, včetně objektů, záznamů, nastavení a akcí.
|
|
|
|
### Oprávnění k objektům
|
|
|
|
Sekce **Objekty** určuje, co tato role může dělat se záznamy napříč vaším pracovním prostorem.
|
|
|
|
#### Nastavte výchozí oprávnění (všechny objekty)
|
|
|
|
Nejprve nakonfigurujte základní oprávnění, která se ve výchozím nastavení vztahují na **všechny objekty**:
|
|
|
|
| Oprávnění | Popis |
|
|
| --------------------------------------- | ------------------------------------------------------ |
|
|
| **Zobrazit záznamy na všech objektech** | Zobrazit záznamy v seznamech a na detailních stránkách |
|
|
| **Upravit záznamy na všech objektech** | Upravovat existující záznamy |
|
|
| **Smazat záznamy na všech objektech** | Dočasně smazat záznamy (lze obnovit) |
|
|
| **Zničit záznamy na všech objektech** | Trvale smazat záznamy |
|
|
|
|
Vyberte nebo zrušte výběr podle toho, jaké má být výchozí chování pro tuto roli.
|
|
|
|
<Note>
|
|
**Příklad — role Stážista**: Stážista by měl mít ve výchozím nastavení možnost vidět všechny objekty, ale ne je upravovat. Povolte "Zobrazit záznamy u všech objektů", ale ponechte "Upravovat záznamy u všech objektů" nezaškrtnuté.
|
|
</Note>
|
|
|
|
#### Přidat výjimky na úrovni objektu
|
|
|
|
Po nastavení výchozích hodnot použijte podsekci **Na úrovni objektu** k přidání pravidel, která přepíší výchozí nastavení pro konkrétní objekty.
|
|
|
|
Klikněte na **+ Přidat pravidlo** a vyberte objekt pro vytvoření výjimky.
|
|
|
|
**Příklad pravidel pro roli Stážista:**
|
|
|
|
| Pravidlo | Dopad |
|
|
| ----------------------------------------- | --------------------------------------------------------------------- |
|
|
| Příležitosti → zakažte "Zobrazit záznamy" | Stážista vůbec nemůže vidět objekt Příležitosti |
|
|
| Lidé → povolte "Upravovat záznamy" | Stážista může upravovat záznamy objektu Lidé (ale ne ostatní objekty) |
|
|
|
|
### Oprávnění na úrovni řádků
|
|
|
|
<Note>
|
|
Oprávnění na úrovni řádků jsou **prémiová funkce** dostupná v tarifu **Organization** (Cloud i Self-Hosted).
|
|
</Note>
|
|
|
|
Oprávnění na úrovni řádků vám umožňují omezit, které jednotlivé záznamy může role zobrazit nebo upravovat, a to na základě dynamických kritérií. Na rozdíl od oprávnění na úrovni objektu (která se vztahují na celý typ objektu) vyhodnocují oprávnění na úrovni řádků každý záznam samostatně.
|
|
|
|
**Příklady použití:**
|
|
|
|
* Obchodní zástupci mohou vidět pouze své vlastní příležitosti
|
|
* Manažeři mohou vidět všechny záznamy ve svém regionu
|
|
* Pracovníci podpory mohou zobrazit pouze tikety, které jsou jim přiřazené
|
|
|
|
Chcete-li nakonfigurovat oprávnění na úrovni řádků, otevřete roli, přejděte na kartu **Objects** a v části **Row-Level** definujte podmínky filtru pro konkrétní objekt.
|
|
|
|
### Oprávnění k polím
|
|
|
|
V rámci každého pravidla na úrovni objektu můžete jít dál a nakonfigurovat **oprávnění na úrovni pole** pro řízení přístupu ke konkrétním polím.
|
|
|
|
| Oprávnění | Popis |
|
|
| ----------------- | --------------------- |
|
|
| **Zobrazit pole** | Zobrazit hodnotu pole |
|
|
| **Upravit pole** | Upravit hodnotu pole |
|
|
| **Žádný přístup** | Pole je zcela skryté |
|
|
|
|
**Příklad — Omezit citlivá pole:**
|
|
|
|
U role stážisty s oprávněním upravovat objekt Lidé můžete chtít omezit některá pole:
|
|
|
|
* Lidé → E-mail → pouze **Zobrazit pole** (nelze upravovat)
|
|
* Lidé → Adresa → **Žádný přístup** (zcela skryté)
|
|
|
|
To umožní stážistovi upravovat většinu polí objektu Lidé a zároveň chránit citlivé informace.
|
|
|
|
### Jak funguje dědění oprávnění
|
|
|
|
Oprávnění se kaskádovitě aplikují od obecných ke specifickým:
|
|
|
|
1. **Všechny objekty** → určují základ pro všechny objekty
|
|
2. **Pravidla na úrovni objektu** → přepisují základ pro konkrétní objekty
|
|
3. **Pravidla na úrovni pole** → přepisují nastavení objektu pro konkrétní pole
|
|
|
|
Specifičtější nastavení mají vždy přednost.
|
|
|
|
### Správa přepsání oprávnění
|
|
|
|
Chcete-li přepsat zděděná oprávnění:
|
|
|
|
1. Klikněte na **X** pro odstranění zděděného pravidla
|
|
2. Vyberte požadovaná konkrétní oprávnění
|
|
3. Klikněte na oranžovou ikonu **Zpět** (kruhová šipka), abyste vrátili změny
|
|
|
|
Až budete hotovi, klikněte na **Dokončit**, pak **Uložit** poté, co budete přesměrováni na stránku role.
|
|
|
|
### Oprávnění nastavení pracovního prostoru
|
|
|
|
Řídí přístup k nastavení pracovního prostoru dvěma způsoby:
|
|
|
|
* Přepněte **Plný přístup k nastavením**, abyste udělili plný přístup
|
|
* Nebo povolte specifická oprávnění (např. generování API klíčů, preference pracovního prostoru, přiřazování rolí, konfigurace datového modelu, bezpečnostní nastavení a správa pracovních postupů)
|
|
|
|
<Note>
|
|
**Aktuální omezení**: K ručnímu spouštění pracovních postupů je v současnosti vyžadován přístup ke správě pracovních postupů. Toto chování se může v budoucích verzích změnit.
|
|
</Note>
|
|
|
|
### Oprávnění k akcím pracovního prostoru
|
|
|
|
Řídí přístup k obecným akcím v pracovním prostoru:
|
|
|
|
* Přepněte **Plný přístup k aplikaci**, abyste udělili plná oprávnění
|
|
* Nebo povolte jednotlivé akce jako **Odeslat e-mail**, **Importovat CSV** a **Exportovat CSV**
|
|
|
|
## Přiřadit role k API klíčům a agentům AI
|
|
|
|
Kromě členů pracovního prostoru lze role přiřadit také ke **klíčům API** a **agentům AI**. To je užitečné zejména pro týmy, které chtějí přesně řídit, "kdo" může v jejich pracovním prostoru co dělat — včetně automatizovaných procesů a integrací.
|
|
|
|
### Proč přiřazovat role klíčům API a agentům AI?
|
|
|
|
* **Zabezpečení**: Omezte, k čemu mají automatizované procesy přístup nebo co mohou měnit
|
|
* **Soulad**: Zajistěte, aby integrace pracovaly pouze s daty, která potřebují
|
|
* **Kontrola**: Zabraňte nechtěným změnám dat způsobeným chybně nastavenou automatizací
|
|
* **Auditovatelnost**: Sledujte, které akce provedla která integrace nebo agent
|
|
|
|
### Přiřaďte roli klíči API
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. Klikněte na roli, kterou chcete přiřadit
|
|
3. Otevřete záložku **Přiřazení**
|
|
4. V části **Klíče API** klikněte na **+ Přiřadit ke klíči API**
|
|
5. Vyberte klíč API ze seznamu
|
|
6. Potvrďte přiřazení
|
|
|
|
Tento klíč API nyní zdědí všechna oprávnění definovaná touto rolí. Jakékoli volání API provedené pomocí tohoto klíče bude odpovídajícím způsobem omezeno.
|
|
|
|
<Note>
|
|
Klíče API bez přiřazené role používají výchozí oprávnění. Pro vyšší zabezpečení vždy přiřaďte konkrétní roli produkčním klíčům API.
|
|
</Note>
|
|
|
|
### Přiřaďte roli agentovi AI
|
|
|
|
1. Přejděte na **Nastavení → Členové → Role**
|
|
2. Klikněte na roli, kterou chcete přiřadit
|
|
3. Otevřete záložku **Přiřazení**
|
|
4. V části **Agenti AI** klikněte na **+ Přiřadit agentovi AI**
|
|
5. Vyberte agenta AI ze seznamu
|
|
6. Potvrďte přiřazení
|
|
|
|
Agent AI bude moci přistupovat k datům a provádět akce pouze v rozsahu povoleném přiřazenou rolí.
|
|
|
|
<Note>
|
|
U agentů AI běžících v rámci pracovních postupů to zajistí, že agent nebude moci přistupovat k datům ani je upravovat mimo svůj zamýšlený rozsah — i když má pracovní postup širší oprávnění.
|
|
</Note>
|