Zarządzanie dostępem, uprawnieniami i ładem przedsiębiorstwa
W poprzedniej lekcji przedstawiono sposób działania repozytorium i uprawnień zespołu w usłudze GitHub oraz sposobu, w jaki użytkownicy otrzymują dostęp na tych poziomach. W tej lekcji dowiesz się, jak zarządzać uprawnieniami i dostępem na szerszą skalę w organizacjach i przedsiębiorstwach:
- Uprawnienia organizacji
- Uprawnienia przedsiębiorstwa
- Współpracownicy wewnętrzni a zewnętrzni
- Strategie najmniejszych uprawnień
- Najlepsze rozwiązania dotyczące zabezpieczeń i ładu
Poziomy uprawnień w organizacji
Organizacje usługi GitHub zapewniają scentralizowany sposób współpracy zespołów nad projektami przy zachowaniu kontrolowanego dostępu do repozytoriów i poufnych danych. Uprawnienia organizacji określają, co członkowie i zespoły mogą wykonywać w organizacji, zapewniając, że każdy użytkownik ma odpowiedni poziom dostępu.
Na poziomie organizacji istnieje wiele poziomów uprawnień:
| Poziom uprawnień | Opis |
|---|---|
| Właściciel | Właściciele organizacji mogą wykonywać wszystkie czynności, które członkowie organizacji mogą wykonywać, i mogą dodawać i usuwać innych użytkowników z organizacji. Ta rola powinna być ograniczona do nie mniej niż dwóch osób w organizacji. |
| Członek | Członkowie organizacji mogą tworzyć repozytoria organizacji i zespoły oraz zarządzać nimi. |
| Moderator | Moderatorzy organizacji mogą blokować i odblokowywać współautorów niebędących członkami, ustawiać limity interakcji i ukrywać komentarze w repozytoriach publicznych będących właścicielami organizacji. |
| Menedżer rozliczeń | Menedżerowie rozliczeń organizacji mogą wyświetlać i edytować informacje dotyczące rozliczeń. |
| Menedżerowie zabezpieczeń | Menedżerowie zabezpieczeń organizacji mogą zarządzać alertami zabezpieczeń i ustawieniami w całej organizacji. Mogą również odczytywać uprawnienia do wszystkich repozytoriów w organizacji. |
| Zewnętrzni współpracownicy | Zewnętrzni współpracownicy, tacy jak konsultant lub pracownik tymczasowy, mogą uzyskiwać dostęp do jednego lub większej liczby repozytoriów organizacji. Nie są jawnymi członkami organizacji. |
Oprócz tych poziomów można również ustawić domyślne uprawnienia dla wszystkich członków organizacji:
W celu zapewnienia lepszego zarządzania i zabezpieczeń warto również rozważyć nadanie domyślnych uprawnień do odczytu wszystkim członkom organizacji i dostosowanie ich dostępu do repozytoriów na podstawie przypadków. Jeśli masz stosunkowo małą organizację z małą liczbą użytkowników, małą liczbą repozytoriów lub kombinacją tych dwóch, ten poziom ograniczeń może być niepotrzebny. Jeśli ufasz wszystkim w przenoszeniu zmian do dowolnego repozytorium, możesz domyślnie przyznać wszystkim członkom uprawnienia do zapisu.
Poziomy uprawnień w przedsiębiorstwie
Jak pamiętasz z poprzednich lekcji, konto przedsiębiorstwa stanowi kolekcję organizacji. Zgodnie z rozszerzeniem każde indywidualne konto użytkownika, które jest członkiem organizacji, jest również członkiem przedsiębiorstwa. Możesz kontrolować różne ustawienia związane z uwierzytelnianiem z tego wyższego poziomu.
Na poziomie przedsiębiorstwa istnieją trzy poziomy uprawnień:
| Poziom uprawnień | Opis |
|---|---|
| Właściciel | Właściciele przedsiębiorstwa mają pełną kontrolę nad przedsiębiorstwem i mogą podjąć każdą akcję, w tym: - Zarządzanie administratorami. — Dodawanie i usuwanie organizacji do i z przedsiębiorstwa. — Zarządzanie ustawieniami przedsiębiorstwa. — Wymuszanie zasad w organizacjach. — Zarządzanie ustawieniami rozliczeń. |
| Członek | Członkowie przedsiębiorstwa mają taki sam zestaw możliwości jak członkowie organizacji. |
| Menedżer rozliczeń | Menedżerowie rozliczeń przedsiębiorstwa mogą tylko wyświetlać i edytować informacje rozliczeniowe przedsiębiorstwa oraz dodawać lub usuwać innych menedżerów rozliczeń. |
| Współpracownik gościa | Można udzielić dostępu do repozytoriów lub organizacji, ale domyślnie ma ograniczony dostęp (tylko użytkownicy zarządzani w przedsiębiorstwie) |
Oprócz tych trzech poziomów można również ustawić zasady domyślnych uprawnień repozytorium we wszystkich organizacjach:
W celu zapewnienia lepszego zarządzania i zabezpieczeń można przyznać domyślne uprawnienia do odczytu wszystkim członkom przedsiębiorstwa i dostosować ich dostęp do repozytoriów w zależności od przypadku. W mniejszym przedsiębiorstwie, na przykład takim, które składa się z jednej, stosunkowo małej organizacji, możesz zdecydować się zaufać wszystkim członkom z uprawnieniami do zapisu domyślnie.
Aby jeszcze bardziej usprawnić kontrolę dostępu w skali przedsiębiorstwa:
- Zagnieżdżone zespoły: Konta firmowe mogą używać zagnieżdżonych struktur zespołów do odzwierciedlenia hierarchii działów. Uprawnienia zespołu nadrzędnego przechodzą do zespołów podrzędnych, co upraszcza skomplikowane procesy zarządzania dostępem.
- Automatyzacja i inspekcja: Za pomocą interfejsu API lub funkcji GitHub Actions usługi GitHub można zautomatyzować tworzenie zespołu i przypisania uprawnień oraz przeprowadzać inspekcję dostępu za pośrednictwem dzienników inspekcji organizacji lub przedsiębiorstwa.
Uprawnienia i zasady przedsiębiorstwa poprzez zestaw reguł
W tej sekcji opisano sposób zarządzania uprawnieniami i zasadami przedsiębiorstwa za pomocą zestawów reguł. Poznamy najlepsze rozwiązania dotyczące tworzenia struktur organizacji, ustawiania domyślnych uprawnień, synchronizowania zespołów za pośrednictwem usługi Active Directory (AD), automatyzowania skryptów obejmujących wiele organizacji i dopasowywania zasad do stanowisk zaufania i kontroli firmy.
Ważenie zalet i wad wdrażania jednej i wielu organizacji
Podczas tworzenia struktury przedsiębiorstwa jednym z kluczowych decyzji jest to, czy należy używać jednej organizacji, czy wielu organizacji. Każde podejście ma unikatowe korzyści i kompromisy.
Pojedyncza organizacja
| Zalety | Minusy |
|---|---|
| Uproszczone zarządzanie: Scentralizowana kontrola uprawnień i zasad. | Ograniczona elastyczność: Jednowymiarowe zasady mogą nie odpowiadać wszystkim zespołom. |
| Konsystencja: Jednolite stosowanie reguł i usprawniona współpraca. | Zagrożenia bezpieczeństwa: Pojedyncze naruszenie może mieć wpływ na całą organizację. |
| Udostępnianie zasobów: Łatwiejsze udostępnianie zasobów między zespołami. | Problemy ze skalowalnością: Zarządzanie uprawnieniami może stać się złożone w miarę rozwoju organizacji. |
| Efektywność kosztowa: Zmniejszenie obciążenia związanego z narzędziami administracyjnymi i licencjonowaniem. |
Wiele organizacji
| Zalety | Minusy |
|---|---|
| Dostosowane zasady: Dostosuj uprawnienia, aby dopasować je do konkretnych potrzeb każdego zespołu. | Zwiększona złożoność: Więcej organizacji oznacza większe nakłady pracy administracyjnej. |
| Rozszerzona izolacja: Ogranicza wpływ naruszenia zabezpieczeń na jedną organizację. | Redundancja: Potencjalne powielanie ustawień i działań zarządczych. |
| Administracja zdecentralizowana: Zespoły mogą zarządzać własnymi zasadami i uprawnieniami. | współpracaInter-Org: Może wymagać dodatkowych narzędzi lub procesów dla projektów obejmujących wiele organizacji. |
Ustawianie domyślnego odczytu i domyślnego zapisu w całej organizacji
Podjęcie decyzji o domyślnym poziomie uprawnień ma kluczowe znaczenie dla równoważenia zabezpieczeń i współpracy w przedsiębiorstwie.
Domyślny odczyt a domyślny zapis
| Domyślne odczytywanie | Zapis domyślny |
|---|---|
| Zwiększone zabezpieczenia: Minimalizuje ryzyko niezamierzonych modyfikacji. | Ulepszona współpraca: Umożliwia użytkownikom bezpośrednie współtworzenie i modyfikowanie zawartości. |
| Kontrola: Łatwiejsze do przeprowadzania inspekcji i monitorowania zmian. | Sprawność: Zmniejsza wąskie gardła w tworzeniu treści i jej aktualizowaniu. |
| Najlepsze dla: Środowiska, w których większość użytkowników musi tylko wyświetlać zasoby. | Ryzyka: Zwiększa prawdopodobieństwo przypadkowej zmiany lub błędnej konfiguracji, jeśli nie jest starannie zarządzana. |
Zalecenie:
Użyj domyślnego modelu uprawnień do odczytu i przyznaj dostęp do zapisu selektywnie, zapewniając przestrzeganie zasady najniższych uprawnień.
Synchronizacja zespołu za pośrednictwem usługi Active Directory (AD)
Korzystanie z usługi Active Directory (AD) na potrzeby synchronizacji zespołów sprawia, że zarządzanie użytkownikami i kontrola dostępu są łatwiejsze i bardziej wydajne.
Dlaczego warto używać synchronizacji usługi AD?
- Jedno źródło prawdy: Dzięki temu tożsamości użytkowników są spójne w całej organizacji.
- Automatyczne zarządzanie dostępem: Usprawnia dołączanie, odłączanie i aktualizacje ról.
- Bezproblemowe dopasowanie ról: Zapewnia, że grupy AD są zgodne z rolami i uprawnieniami przedsiębiorstwa.
Kwestie, które należy wziąć pod uwagę przed wdrożeniem
- Mapowanie ról: Jasno określ, jak grupy AD odpowiadają rolom w organizacji.
- Częstotliwość synchronizacji: Ustaw harmonogram, który równoważy wydajność i zabezpieczenia.
- Zgodność i inspekcja: Zarejestruj wszystkie zmiany, aby spełnić wymagania dotyczące zgodności.
Planując z wyprzedzeniem, możesz zapewnić bezproblemową integrację, która zapewnia bezpieczeństwo i dobrze zorganizowaną organizację.
Łatwość konserwacji: wykonywanie skryptów dla wielu organizacji i praw dostępu
W miarę skalowania przedsiębiorstwa automatyzacja zarządzania uprawnieniami w wielu organizacjach jest niezbędna do utrzymania.
Najważniejsze rozwiązania
W tej sekcji przedstawiono najważniejsze rozwiązania dotyczące tworzenia skryptów i automatyzacji w celu spójnego i bezpiecznego zarządzania uprawnieniami w miarę rozwoju przedsiębiorstwa. Poniższe rozwiązania ułatwiają administrowanie, minimalizowanie błędów ręcznych i utrzymywanie silnego ładu.
- Modułowość: Twórz skrypty w składnikach modułowych, aby obsługiwać różne organizacje przy minimalnych zmianach.
- Możliwość ponownego zastosowania: Tworzenie funkcji wielokrotnego użytku lub modułów w celu wykonywania typowych zadań uprawnień.
- Testowanie: Dokładnie przetestuj skrypty w kontrolowanym środowisku przed wdrożeniem.
- Logowanie: Zaimplementuj szczegółowe rejestrowanie, aby śledzić zmiany i ułatwić rozwiązywanie problemów.
- Kontrola wersji: Użyj systemów kontroli wersji (takich jak Git), aby zarządzać poprawkami skryptów i współpracować z członkami zespołu.