Jak na GitHubu fungují organizace a oprávnění?
V předchozí lekci jste prozkoumali různé způsoby, jak se uživatelé můžou ověřit pomocí GitHubu. V této lekci se dozvíte o oprávněních pro každou hierarchickou úroveň:
- Oprávnění úložiště
- Oprávnění týmu
- Oprávnění organizace
- Podniková oprávnění
Úrovně oprávnění úložiště
Přístup ke každému úložišti můžete přizpůsobit přiřazením konkrétních úrovní oprávnění. Existuje pět standardních oprávnění na úrovni úložiště:
- Přečtěte si: Doporučuje se pro přispěvatele bez kódu, kteří chtějí váš projekt zobrazit nebo probrat. Tato úroveň je vhodná pro každého, kdo potřebuje zobrazit obsah v úložišti, ale nemusí ve skutečnosti provádět příspěvky ani změny.
- Třídění: Doporučeno pro přispěvatele, kteří potřebují proaktivně spravovat problémy a pull requesty bez přístupu k zápisu. Tato úroveň je užitečná pro projektové manažery, kteří sledují problémy a diskuze bez úpravy kódu.
- Psaní: Doporučeno pro přispěvatele, kteří aktivně přispívají do projektu. Zápis je standardní oprávnění pro většinu vývojářů.
- Údržba: Doporučeno pro projektové manažery, kteří potřebují spravovat úložiště bez přístupu k citlivým nebo destruktivním akcím.
- Správce: Doporučuje se lidem, kteří potřebují úplný přístup k projektu, včetně citlivých a destruktivních akcí, jako je správa zabezpečení nebo odstranění úložiště. Tito lidé jsou vlastníky a správci úložišť.
Členům organizace, externím spolupracovníkům a týmům můžete udělit různé úrovně přístupu k úložištím vlastněným organizací. Každá úroveň oprávnění umožňuje postupně více přístupu k obsahu a nastavení úložiště. Zvolte úroveň, která nejlépe vyhovuje roli každého člověka nebo týmu v projektu, aniž byste k projektu udělili větší přístup, než je potřeba.
Správci můžou také vytvářet vlastní role v GitHubu Enterprise a podle potřeby rozšířit jednu z těchto základních rolí o další oprávnění.
Co je fork úložiště?
Forking je způsob, jak vytvořit osobní kopii úložiště někoho jiného ve vašem vlastním účtu GitHubu. Když vytvoříte fork úložiště, získáte vlastní verzi, kterou můžete volně upravovat, aniž by to mělo vliv na původní projekt. Tento proces je běžným pracovním postupem pro přispívání do open source nebo experimentování se změnami bezpečně.
Fork můžete udržovat v aktualizovaném stavu také tak, že změny přetáhnete z původního úložiště, často označované jako "upstreamové" úložiště.
Tady je postup vytvoření forku úložiště:
Na GitHub.com přejděte na hlavní stránku úložiště, které chcete vytvořit fork.
V pravém horním rohu vyberte Fork.
Zvolte vlastníka forku (váš osobní účet nebo organizace).
Volitelně můžete přejmenovávat forkované úložiště nebo zahrnout všechny větve.
Vyberte možnost Vytvořit fork.
Správa oprávnění forku (pro správce)
U úložišť vlastněných organizací můžou správci řídit, jestli je možné vytvořit fork úložišť:
- Veřejná úložiště: Fork je vždy povolený.
- Privátní úložiště: Fork je možné zakázat nebo omezit jenom na členy organizace.
- Interní úložiště: Tyto úložiště je možné forkovat pouze ve stejném podnikovém účtu.
Konfigurace nastavení forku:
Přejděte do nastavení úložiště organizace.
V levém bočním panelu v části Access klikněte na oprávnění člena.
Vyhledejte možnosti forku úložiště a podle potřeby je aktualizujte.
Tip
Pokud zakážete fork pro privátní úložiště, nikdo (včetně členů organizace) ho nebude moct forkovat.
Další informace najdete v článku Dokumentace GitHubu k forku úložiště.
Zobrazení přehledů úložiště
Přehledy úložiště na GitHubu nabízejí výkonný způsob, jak monitorovat a analyzovat aktivity, příspěvky a závislosti projektu. Díky těmto přehledům můžete sledovat stav projektu, identifikovat kritické body a zajistit zabezpečení. Tato část vás provede kroky pro přístup k přehledům úložiště a poskytne osvědčené postupy pro jejich efektivní použití.
Postup zobrazení přehledů úložiště
- Přejděte do úložiště na GitHubu.
- Pod názvem úložiště klikněte na kartu Přehledy .
- Prozkoumejte následující části na kartě Přehledy:
- Přispěvatelé: Umožňuje zobrazit graf příspěvků v průběhu času, včetně potvrzení, přidání a odstranění jednotlivých přispěvatelů.
- Provoz: Monitorujte provoz úložiště, včetně jedinečných návštěvníků a zobrazení stránek.
- Potvrzení: Analýza aktivity potvrzení v průběhu času.
- Frekvence kódu: Sledujte počet řádků přidaných a odstraněných v průběhu času.
- Graf závislostí: Prohlédněte si závislosti úložiště a identifikujte potenciální ohrožení zabezpečení.
Osvědčené postupy pro používání přehledů úložiště
- Monitorování příspěvků: Pomocí oddílu Přispěvatelé identifikujte aktivní přispěvatele a oblasti úložiště, u kterých dochází k největší pozornosti.
- Sledování provozu: V části Provoz se dozvíte, jak uživatelé pracují s vaším úložištěm, a identifikují trendy v zapojení.
- Ohrožení zabezpečení: Pravidelně zkontrolujte graf závislostí a ujistěte se, že vaše úložiště zůstává zabezpečené.
Díky využití přehledů úložiště můžete provádět rozhodnutí řízená daty za účelem zlepšení spolupráce, zabezpečení a řízení projektů.
Způsoby, jak uživatelé přijímají přístup k úložišti
Akce uživatele s daným seznamem oprávnění k úložišti
Efektivní oprávnění uživatele v úložišti jsou ovlivněna různými faktory, mezi které patří:
- Role úložiště: (např. správce, zápis, čtení)
- Členství v týmu: (např. zděděná oprávnění od týmu)
- Členství v organizaci: (např. výchozí oprávnění organizace, požadavky na jednotné přihlašování)
Když tyto různé zdroje oprávnění zkombinujete, GitHub použije nejvyšší úroveň přístupu udělenou uživateli. Pokud má například uživatel přístup pro čtení prostřednictvím týmu, ale má také přístup k zápisu přímo přiřazený jako spolupracovník, bude mít efektivně oprávnění k zápisu.
Možnosti členství v úložišti
Při udělování přístupu k úložišti existuje několik způsobů, jak se uživatel může stát spolupracovníkem:
| Typ členství | Popis |
|---|---|
| Přímý spolupracovník | Explicitně přidáno do úložiště s konkrétní rolí (čtení, třídění, zápis, údržba nebo správce). Doporučuje se pro externí přispěvatele nebo malé týmy. |
| Členství v týmu | Uživatel dědí přístup k úložišti prostřednictvím členství v týmu. Týmová oprávnění se často nastavují na úrovni organizace pro konzistentní a škálovatelnou správu. |
| Výchozí oprávnění organizace | Pokud je úložiště součástí organizace, může existovat výchozí úroveň oprávnění pro všechny členy organizace (např. None, Read). Vlastníci můžou tyto výchozí hodnoty přepsat pro konkrétní týmy nebo uživatele. |
| Externí spolupracovníci | Uživatel, který není členem organizace, ale má explicitní přístup k úložišti. Užitečné pro dodavatele, volné noze nebo opensourcové přispěvatele, kteří potřebují omezený přístup. |
Přístup k úložišti monitorování a auditování
Pravidelné auditování, které má přístup k úložišti, zajišťuje řádné zabezpečení a dodržování předpisů. Tady je několik doporučených kroků a nástrojů:
Zobrazit přístup v nastavení úložiště:
- Přejděte na Nastavení > Spravovat přístup (pro úložiště).
- Projděte si seznam uživatelů a týmů spolu s jejich úrovněmi oprávnění.
Protokol auditu organizace (GitHub Enterprise nebo úroveň organizace):
- Vlastníci organizace můžou zobrazit změny členství, přístupu k úložišti a oprávnění v protokolu auditování.
- Filtrování událostí podle názvu úložiště nebo přístupu ke změnám v zobrazení s důraznějším zobrazením
Protokol auditu podniku (GitHub Enterprise):
- Pokud spravujete více organizací, použijte protokol auditu podnikového účtu ke sledování změn ve všech organizacích a úložištích.
- To je zvláště cenné pro generování sestav dodržování předpisů nebo rozsáhlé kontroly zabezpečení.
Automatizované skriptování:
- Pomocí rozhraní REST API GitHubu nebo rozhraní GraphQL API můžete programově vypsat spolupracovníky, týmy a oprávnění.
- Integrujte skripty s kanálem CI/CD nebo řídicími panely zabezpečení pro průběžné monitorování a označení anomálií.
Spropitné: Nastavte pravidla ochrany větví a požadované kontroly, abyste přidali další vrstvu zabezpečení a odpovědnosti za všechny změny kódu.
Úrovně oprávnění týmu
Tým v organizaci GitHubu je skupina uživatelů, kteří spolupracují na sdílených úložištích. Týmy pomáhají zjednodušit správu přístupu a komunikaci použitím konzistentních oprávnění napříč více úložišti najednou. Mezi klíčové výhody patří:
- Centralizované řízení přístupu: Přiřaďte oprávnění k úložišti (např. Číst, Zapisovat) celému týmu místo toho, aby každý uživatel spravováal jednotlivě.
- Strukturovaná spolupráce: Uspořádejte členy podle oddělení, projektu nebo role pro efektivnější spolupráci.
- Viditelnost a komunikace: Každý tým může mít svou vlastní diskuzní vývěsku, což usnadňuje sdílení aktualizací a koordinace úsilí.
Týmy poskytují snadný způsob, jak přiřadit oprávnění úložiště několika souvisejícím uživatelům najednou. Členové podřízeného týmu také dědí nastavení oprávnění nadřazeného týmu a poskytují snadný způsob, jak kaskádovat oprávnění na základě přirozené struktury společnosti.
Na úrovni týmu existují dvě úrovně oprávnění:
| Úroveň oprávnění | Popis |
|---|---|
| Člen | Členové týmu mají stejnou sadu schopností jako členové organizace. |
| Správce | Správci týmu můžou dělat všechno, co členové týmu můžou, a navíc: - Změňte název, popis a viditelnost týmu. - Požádejte, aby tým změnil nadřazené a podřízené týmy. - Nastavte profilový obrázek týmu. - Upravte a odstraňte týmové diskuze. – Přidejte a odeberte členy organizace z týmu. - Zvyšte úroveň členů týmu, aby měli také oprávnění správce týmu. – Odeberte přístup týmu k úložištím. – Spravujte revizi kódu pro tým. – Spravujte naplánovaná připomenutí pro pull requesty. |
Vlastník organizace může také zvýšit úroveň libovolného člena organizace tak, aby byl správcem týmu.
Pokud chcete auditovat přístup k úložišti, které spravujete, můžete zobrazit kombinovaný seznam týmů a uživatelů s přístupem k úložišti v nastavení:
GitHub nabízí několik úrovní oprávnění, které je možné přiřadit týmům. Když týmu udělíte přístup k úložišti, můžete si vybrat z následujících modelů oprávnění:
Modely oprávnění
| Úroveň oprávnění | Popis | Nejlepší pro |
|---|---|---|
| Přečíst | Uživatelé můžou úložiště zobrazit a naklonovat. Může otevřít a okomentovat problémy a pull requesty. | Jednotlivci, kteří potřebují přístup jen pro čtení nebo prohlížení. |
| Třídění | Uživatelé můžou spravovat problémy a žádosti o přijetí změn (např. přidávání štítků, přiřazování, komentování). Změny nelze odeslat do úložiště. | Vedoucí projektů nebo přispěvatelé, kteří potřebují určit prioritu a uspořádat problémy bez přispívání kódu |
| Piš | Uživatelé mohou posílat změny do větví (s výjimkou chráněných větví). Může spravovat problémy a pull requesty. | Aktivní přispěvatelé, kteří potřebují potvrdit kód nebo aktualizovat dokumentaci |
| Udržovat | Uživatelé můžou spravovat nastavení úložiště, problémy a žádosti o přijetí změn. Úložiště nelze odstranit ani přenést. | Správci projektů, kteří zpracovávají rutinní správu úložiště, ale nevyžadují úplná práva správce. |
| Administrátor | Uživatelé mají plnou kontrolu nad úložištěm, včetně nastavení oprávnění, odstranění úložiště a správy všech nastavení. | Ti, kteří potřebují přístup správce nejvyšší úrovně. |
Spropitné: Vždy dodržujte princip nejnižší úrovně oprávnění – přiřaďte nejnižší úroveň oprávnění potřebnou pro efektivní provádění úkolů každého týmu. Tento přístup snižuje riziko náhodných nebo neoprávněných změn.