1. Wprowadzenie
Ustawienia usługi VPC (VPC-SC) to mechanizm kontroli bezpieczeństwa na poziomie organizacji w Google Cloud, który umożliwia klientom korporacyjnym ograniczenie ryzyka związanego z wydobyciem danych. Ustawienia usługi VPC zapewniają dostęp typu „zero zaufania” do usług wielu najemców, umożliwiając klientom ograniczenie dostępu do autoryzowanych adresów IP, kontekstu klienta i parametrów urządzenia przy jednoczesnym łączeniu się z usługami wielu najemców z internetu i innych usług, co pozwala ograniczyć zarówno celowe, jak i niezamierzone straty. Ustawienia usługi VPC pozwalają tworzyć granice chroniące zasoby i dane usług, które określisz.
Cele tego samouczka to:
- Podstawowe informacje o Ustawieniach usługi VPC
- Tworzenie granicy usług VPC
- Ochrona projektu za pomocą Ustawień usługi VPC
- Rozwiązywanie problemów z naruszeniem zasad dotyczących ruchu przychodzącego w Ustawieniach usługi VPC
2. Konfiguracja i wymagania
Aby korzystać z tego samouczka, musisz spełnić te wymagania wstępne:
- organizacji GCP.
- Folder w organizacji.
- 2 projekty GCP w tej samej organizacji umieszczone w danym folderze.
- Wymagane uprawnienia na poziomie organizacji.
- Konto rozliczeniowe obu projektów.
Konfiguracja zasobów
- W konsoli Google Cloud utwórz folder w sekcji Organizacja i 2 nowe projekty (możesz ponownie wykorzystać istniejące).
Jeśli nie masz jeszcze konta Google Workspace/Cloud Identity, musisz je kupić, ponieważ w tym samouczku będzie potrzebna organizacja.
- Sprawdź, czy masz odpowiednie uprawnienia na potrzeby tego samouczka na poziomie organizacji.
- Role uprawnień w folderach
- Uprawnienia i role w projektach
- Uprawnienia i role wymagane do skonfigurowania Ustawień usługi VPC
- Uprawnienia i role wymagane do zarządzania Compute Engine
- Upewnij się, że oba projekty są dostępne w folderze, ponieważ musimy utworzyć zasadę z zakresu na poziomie folderu. Dowiedz się więcej o przenoszeniu projektu do folderu.
Koszt
Aby korzystać z zasobów i interfejsów API Cloud, musisz włączyć płatności w Cloud Console. Ukończenie tego ćwiczenia z programowania nic nie kosztuje. Aby wyłączyć zasoby w celu uniknięcia naliczania opłat po zakończeniu tego samouczka, możesz usunąć utworzone zasoby lub projekt. Nowi użytkownicy Google Cloud mogą skorzystać z programu bezpłatnego okresu próbnego w wysokości 300 USD.
Jedynym zasobem, który będzie generować koszty, będzie instancja maszyny wirtualnej. Szacunkowy koszt można sprawdzić w kalkulatorze cen.
3. Utwórz granicę
W tym module wykonamy następujące czynności:
- W konsoli Google wybierz swoją organizację i kliknij Uzyskaj dostęp do Ustawień usługi VPC. Upewnij się, że ustawiony jest poziom organizacji.
- Kliknij „Zarządzaj zasadami”. aby utworzyć nową zasadę dostępu o zakresie ograniczonym do ćwiczeń z programowania folderu Dysku.
- Utwórz nową granicę w trybie wymuszania. Nazwijmy ją „SuperProtection”. w tym samouczku.
- Podczas tworzenia granicy wybierz projekt, który ma być egzekwowany jako ProjektZ.
- Jako typ granicy wybierz „Zwykły”.
- W oknie Określ usługi, które chcesz ograniczyć wybierz usługę, którą chcesz ograniczyć jako „Compute Engine”.
Konfiguracja granicy powinna wyglądać tak:
4. Sprawdzanie, czy granica została wyegzekwowana
- Otwórz ProjectX i sprawdź, czy masz dostęp do interfejsu Compute Engine API, otwierając stronę główną instancji maszyn wirtualnych. Jest to możliwe, ponieważ projektX nie jest chroniony przez utworzoną granicę VPC SC.
- Otwórz ProjectZ i sprawdź, czy masz dostęp do Compute Engine. Możesz zobaczyć, że żądanie zostało zabronione przez Ustawienia usługi VPC, ponieważ granica usługi SuperProtection chroni projekty Z i Compute Engine API.
5. Rozwiązywanie problemów z odmową
Najpierw musimy określić, na czym dokładnie polega problem, aby określić sposób jego rozwiązania.
- Logi Ustawień usługi VPC zawierają szczegółowe informacje o żądaniach wysyłanych do zabezpieczonych zasobów oraz przyczyny odrzucenia żądania przez Ustawienia usługi VPC. Znajdźmy unikalny identyfikator ustawień usługi VPC w dziennikach kontrolnych ProjectZ, używając tego zapytania w eksploratorze logów:
resource.type="audited_resource" protoPayload.metadata."@type"="type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
Spowoduje to wyświetlenie wszystkich logów kontrolnych Ustawień usługi VPC. Będziemy szukać ostatniego dziennika błędów.
- Kliknij nagłówek Ustawienia usługi VPC i wybierz „Rozwiązywanie problemów z odmową”. Otworzy się narzędzie do rozwiązywania problemów z Ustawieniami usługi VPC.
Ten interfejs API pokaże w przyjaznym interfejsie przyczynę naruszenia i pokaże, czy było to naruszenie dotyczące ruchu przychodzącego lub wychodzącego, m.in. do innych przydatnych informacji.
W tym ćwiczeniu skupimy się na:
"principalEmail": "user@domain" "callerIp": "PUBLIC_IP_ADDRESS" "serviceName": "compute.googleapis.com" "servicePerimeterName": "accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection "ingressViolations": [ { "targetResource": "projects/[PROJECT_NUMBER]", "servicePerimeter": "accessPolicies/[POLICY_NUMBER]/servicePerimeters/SuperProtection" } ], "violationReason": "NO_MATCHING_ACCESS_LEVEL", "resourceNames": "[PROJECT_ID]"
Mamy 2 sposoby rozwiązania tego problemu w Projekcie Z.
- Tworzę poziom dostępu, który umożliwia dostęp do projektu wewnątrz granicy przez przyznanie dostępu do mojego adresu IP systemu.
- Utwórz regułę ruchu przychodzącego, aby umożliwić klientowi interfejsu API dostęp spoza granic usługi do zasobów w obrębie jej granicy.
W tym samouczku rozwiążemy problem, tworząc poziom dostępu.
- Otwórz Menedżera kontekstu dostępu w zakresie folderu (Codelab) i utwórz nowy poziom dostępu.
- Używanie „trybu podstawowego” Zezwolimy na dostęp, gdy podsieć IP i lokalizacja geograficzna będą zgodne.
- Otwórz Ustawienia usługi VPC w zakresie organizacji. Wybierz zasadę dostępu dla tego ćwiczenia z programowania i edytuj granicę, którą wcześniej utworzyliśmy.
- Dodaj poziom dostępu utworzony w zakresie folderu i zapisz go.
6. Wyniki testu.
Potwierdź, że mamy dostęp do Compute Engine i możemy utworzyć maszynę wirtualną. Utworzyliśmy już poziom dostępu, spróbujmy więc uzyskać dostęp do Compute Engine w Projekcie Z i utworzyć instancję maszyny wirtualnej.
- Otwórz Compute Engine i kliknij Utwórz instancję.
- Pozostaw wszystko jako domyślne i spróbuj utworzyć niedrogą instancję maszyny wirtualnej.
Po około minucie powinna się pokazać, że maszyna wirtualna została utworzona i możesz sprawdzić, czy masz pełny dostęp do Compute Engine chronionego wewnątrz granic usługi.
7. Czyszczenie
Nie ma osobnej opłaty za korzystanie z Ustawień usługi VPC, gdy nie jest ona używana, ale najlepiej jest wyczyścić konfigurację używaną w tym laboratorium. Możesz też usunąć instancję maszyny wirtualnej lub projekty Cloud, aby uniknąć naliczania opłat. Usunięcie projektu Cloud spowoduje zatrzymanie naliczania opłat za wszystkie zasoby w nim używane.
- Aby usunąć maszynę wirtualną, zaznacz pole wyboru po lewej stronie nazwy maszyny wirtualnej, a potem kliknij Usuń.
- Aby usunąć granicę, wykonaj te czynności:
- W konsoli Google Cloud kliknij Zabezpieczenia, a następnie w zakresie Organizacja kliknij Ustawienia usługi VPC.
- Na stronie Ustawienia usługi VPC w wierszu tabeli odpowiadającym granicy, którą chcesz usunąć, kliknij „Usuń ikonę”.
- Aby usunąć poziom dostępu, wykonaj te czynności:
- w konsoli Google Cloud otwórz stronę Menedżer kontekstu dostępu w zakresie folderów.
- W siatce w wierszu poziomu dostępu, który chcesz usunąć, kliknij „Usuń ikonę”, a następnie kliknij Usuń.
- Aby zamknąć projekty, wykonaj te czynności:
- W konsoli Google Cloud otwórz Uprawnienia Ustawienia administratora w projekcie, który chcesz usunąć.
- W sekcji Administracja Ustawienia administratora kliknij Wyłącz.
- Wpisz identyfikator projektu i kliknij Wyłącz mimo to.
8. Gratulacje!
W ramach tego ćwiczenia w Codelabs udało Ci się utworzyć granicę Ustawień usługi VPC, wyegzekwować jej stosowanie i rozwiązać problemy.
Więcej informacji
- Zapoznaj się z dokumentacją Ustawień usługi VPC.
- Zobacz dokumentację Menedżera kontekstu dostępu.
- Zobacz dokumentację narzędzia do rozwiązywania problemów z VPC-SC.
Licencja
To zadanie jest licencjonowane na podstawie ogólnej licencji Creative Commons Attribution 2.0.