1. Wprowadzenie
Ustawienia usługi VPC to kontrola bezpieczeństwa na poziomie organizacji w Google Cloud, która umożliwia klientom korporacyjnym ograniczanie ryzyka wydobycia danych. Ustawienia usługi VPC zapewniają dostęp do usług wielodostępnych w stylu zero-trust, umożliwiając klientom ograniczanie dostępu do autoryzowanych adresów IP, kontekstu klienta i parametrów urządzenia podczas łączenia się z usługami wielodostępnymi z internetu i innych usług, aby zmniejszyć zarówno celowe, jak i przypadkowe straty. Za pomocą ustawień usługi VPC możesz tworzyć granice chroniące zasoby i dane usług, które bezpośrednio określisz.
Cele tego samouczka:
- Poznanie podstaw ustawień usługi VPC
- Utworzenie granicy usługi 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 wykonać ten samouczek, musisz spełnić te wymagania wstępne:
- Organizacja w GCP.
- Folder w organizacji.
- 2 projekty GCP w tej samej organizacji umieszczone w folderze.
- Wymagane uprawnienia na poziomie organizacji.
- Konto rozliczeniowe dla obu projektów.

Konfigurowanie zasobów
- W konsoli Google Cloud utwórz folder w organizacji i 2 nowe projekty.(możesz użyć dotychczasowych).
(Jeśli nie masz jeszcze konta Google Workspace lub Cloud Identity, musisz je utworzyć, ponieważ w tym samouczku będziesz potrzebować organizacji).
- Sprawdź, czy masz odpowiednie uprawnienia 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ę o ograniczonym zakresie na poziomie folderu. Dowiedz się więcej o przenoszeniu projektu do folderu.

Koszt
Aby korzystać z zasobów i interfejsów API w chmurze, musisz włączyć rozliczenia w Cloud Console. Wykonanie tego codelabu nie będzie kosztować dużo, a nawet może być bezpłatne. Aby wyłączyć zasoby i uniknąć naliczania opłat po zakończeniu tego samouczka, możesz usunąć utworzone zasoby lub projekt. Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego o wartości 300 USD.
Jedynym zasobem, który będzie generować koszty, jest instancja maszyny wirtualnej. Szacowany koszt można znaleźć w kalkulatorze cen.
3. Tworzenie granicy
W tym laboratorium wykonamy te czynności:
- W konsoli Google wybierz organizację i otwórz Ustawienia usługi VPC. Upewnij się, że jesteś na poziomie organizacji.

- Aby utworzyć nową zasadę dostępu, która będzie obejmować folder „Codelab”, kliknij „Zarządzaj zasadami”.

- Utwórz nową granicę w trybie egzekwowania. Na potrzeby tego samouczka nazwijmy ją „SuperProtection”.
- Podczas tworzenia granicy wybierz projekt, który ma być wymuszany, jako ProjectZ.
- Jako typ granicy wybierz „Zwykła”.
- W oknie Określ usługi, które mają być ograniczone wybierz usługę, która ma być ograniczona, jako „Compute Engine”.
Konfiguracja granicy powinna wyglądać tak:

4. Sprawdzanie, czy granica została wymuszona
- Otwórz ProjectX i sprawdź, czy masz dostęp do interfejsu Compute Engine API, otwierając stronę główną Instancje maszyn wirtualnych. Powinno się to udać, ponieważ ProjectX nie jest chroniony przez utworzoną granicę ustawień usługi VPC.
- Otwórz ProjectZ i sprawdź, czy masz dostęp do Compute Engine. Widzisz, że żądanie zostało zablokowane przez ustawienia usługi VPC, ponieważ granica usługi SuperProtection chroni ProjectZ i interfejs Compute Engine API.

5. Rozwiązywanie problemów związanych z blokadą
Najpierw musimy określić, na czym dokładnie polega problem, aby móc go rozwiązać.
- Logi ustawień usługi VPC zawierają szczegółowe informacje o żądaniach dotyczących chronionych zasobów oraz o przyczynie odrzucenia żądania przez ustawienia usługi VPC. Znajdź unikalny identyfikator ustawień usługi VPC w logach audytu 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 audytu ustawień usługi VPC. Będziemy szukać ostatniego logu błędu.
- Kliknij nagłówek Ustawienia usługi VPC i wybierz „Rozwiąż problem z blokadą”, aby otworzyć narzędzie do rozwiązywania problemów w ustawieniach usługi VPC.
Ten interfejs API wyświetli w przyjaznym interfejsie użytkownika przyczynę naruszenia oraz informację, czy było to naruszenie zasad dotyczących ruchu przychodzącego czy wychodzącego.
W tym ćwiczeniu będziemy szukać tych informacji:
"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]"
Aby rozwiązać ten problem w ProjectZ, mamy 2 opcje:
- Utworzenie poziomu dostępu, który umożliwi dostęp do projektu w granicach usługi, przyznając dostęp do adresu IP mojego systemu.
- Utworzenie reguły ruchu przychodzącego, która umożliwi klientowi API spoza granicy usługi dostęp do zasobów w granicach usługi.
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żyj „Trybu podstawowego”. Zezwolimy na dostęp, gdy spełnione będą podsieć IP i położenie geograficzne.

- Otwórz Ustawienia usługi VPC w zakresie organizacji. Wybierz zasadę dostępu dla tego Codelabu i edytuj utworzoną wcześniej granicę.
- Dodaj poziom dostępu utworzony w zakresie folderu i zapisz.

6. Wyniki testu.
Sprawdź, czy masz dostęp do Compute Engine i możesz utworzyć instancję maszyny wirtualnej. Po utworzeniu poziomu dostępu spróbujmy uzyskać dostęp do Compute Engine w ProjectZ i utworzyć instancję maszyny wirtualnej.
- Otwórz Compute Engine i kliknij Utwórz instancję.

- Pozostaw wszystkie ustawienia domyślne i spróbuj utworzyć instancję maszyny wirtualnej o niskim koszcie.
Po około minucie powinna pojawić się utworzona instancja maszyny wirtualnej. Możesz sprawdzić, czy masz pełny dostęp do Compute Engine chronionego w granicach usługi.

7. Czyszczenie
Za korzystanie z ustawień usługi VPC, gdy usługa nie jest używana, nie są naliczane dodatkowe opłaty, ale zalecamy wyczyszczenie konfiguracji używanej w tym laboratorium. Aby uniknąć naliczania opłat, możesz też usunąć instancję maszyny wirtualnej lub projekty w chmurze. Usunięcie projektu w chmurze powoduje zatrzymanie naliczania opłat za wszystkie zasoby używane w tym projekcie.
- Aby usunąć instancję maszyny wirtualnej, zaznacz pole wyboru po lewej stronie nazwy instancji maszyny wirtualnej, a następnie kliknij Usuń.

- Aby usunąć granicę, wykonaj te czynności:
- W konsoli Google Cloud kliknij Zabezpieczenia, a następnie Ustawienia usługi VPC w zakresie organizacji.
- 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 folderu.
- W siatce w wierszu poziomu dostępu, który chcesz usunąć, kliknij „Usuń ikonę”, a następnie kliknij Usuń.
- Aby wyłączyć projekty, wykonaj te czynności:
- W konsoli Google Cloud otwórz stronę Ustawienia IAM i administratora projektu, który chcesz usunąć.
- Na stronie Ustawienia IAM i administratora kliknij Wyłącz.
- Wpisz identyfikator projektu i kliknij Wyłącz mimo to.
8. Gratulacje!
W tym codelabie utworzyliśmy granicę ustawień usługi VPC, wymusiliśmy ją i rozwiązaliśmy problemy z nią związane.
Więcej informacji
- Zapoznaj się z dokumentacją ustawień usługi VPC.
- Zapoznaj się z dokumentacją Menedżera kontekstu dostępu.
- Zapoznaj się z dokumentacją narzędzia do rozwiązywania problemów z ustawieniami usługi VPC.
Licencja
To zadanie jest licencjonowane na podstawie ogólnej licencji Creative Commons Uznanie autorstwa 2.0.