## Dlaczego to ważne

PagerDuty to miejsce, w którym większość zespołów bezpieczeństwa zarządza już incydentami i dyżurami. Połączenie go z Kit sprawia, że zgłoszenia podatności wymagające natychmiastowej reakcji wywołują prawdziwe alarmy, a nie tylko e-maile czekające w skrzynce do rana.

## Wymagania

- Konto Kit z włączonym **dodatkiem VDP**
- Konto PagerDuty z uprawnieniami do tworzenia kluczy API
- Dedykowany **serwis** PagerDuty dla alertów VDP (zalecane)

## Konfiguracja

### 1. Utwórz klucz API w PagerDuty

1. Przejdź do **PagerDuty > Integrations > API Access Keys**
2. Kliknij **Create New API Key**
3. Nazwij go "Kit VDP" i skopiuj klucz

### 2. Pobierz klucz integracji

1. Przejdź do **PagerDuty > Services > Your VDP Service > Integrations**
2. Dodaj integrację **Events API v2** (lub użyj istniejącej)
3. Skopiuj **Integration Key** (nazywany również kluczem routingu)

### 3. Połącz w Kit

1. Przejdź do **VDP > Settings > PagerDuty**
2. Wklej oba klucze i kliknij **Connect to PagerDuty**
3. Kit zweryfikuje połączenie i wyświetli zielony znacznik statusu

## Zdarzenia alertów

Skonfiguruj, które zdarzenia tworzą incydenty w PagerDuty. Każde zdarzenie ma konfigurowalny poziom ważności.

| Zdarzenie | Kiedy się wyzwala | Domyślna ważność |
|-----------|-------------------|------------------|
| Nowe zgłoszenie | Badacz przesyła zgłoszenie podatności | Info |
| Zagrożenie SLA | Zgłoszenie zbliża się do terminu SLA (sprawdzane co 15 min) | Warning |
| Naruszenie SLA | Zgłoszenie przekroczyło termin SLA | Warning |
| Ocena krytycznej ważności | Zgłoszenie zostało ocenione jako krytyczne lub super-krytyczne | Critical |
| Aktywacja war room | 2+ zgłoszenia jednocześnie zagrożone lub z naruszonym SLA | Error |

**Deduplikacja**: Kit używa identyfikatora zgłoszenia jako klucza dedup. Jeśli to samo zgłoszenie wyzwoli wiele kontroli SLA, PagerDuty połączy je w jeden incydent zamiast tworzyć duplikaty.

## Synchronizacja harmonogramu dyżurów

Po włączeniu Kit odpytuje harmonogram PagerDuty co 5 minut i automatycznie aktualizuje osobę dyżurną w Kit.

1. Na stronie ustawień PagerDuty wybierz harmonogram z listy rozwijanej
2. Kit dopasowuje użytkowników PagerDuty do użytkowników Kit na podstawie **adresu e-mail**
3. Na stronie On-Call wybierz tryb **PagerDuty**

**Jeśli użytkownik PagerDuty nie zostanie znaleziony w Kit**: poprzednia zmiana pozostaje aktywna, a na stronie ustawień pojawia się ostrzeżenie.

Ręczne nadpisanie jest nadal dostępne w trybie PagerDuty. Harmonogram wznawia się przy następnej synchronizacji.

## Aktualizacje incydentów (dwukierunkowe)

Gdy ktoś potwierdzi lub rozwiąże incydent w PagerDuty, Kit otrzymuje aktualizację przez webhook i odzwierciedla ją na osi czasu zgłoszenia.

| Akcja w PagerDuty | Efekt w Kit |
|--------------------|-------------|
| Potwierdzenie incydentu | Zgłoszenie pokazuje status "Acknowledged via PagerDuty" |
| Rozwiązanie incydentu | Zgłoszenie pokazuje status "Resolved via PagerDuty" |

**Ważne**: Zmiany statusu w PagerDuty nie powodują automatycznego przejścia zgłoszenia. Decyzje triażowe (walidacja, odrzucenie, rozwiązanie) pozostają ręczne w Kit.

### Konfiguracja webhooka

1. Skopiuj **Webhook URL** widoczny na stronie ustawień PagerDuty
2. W PagerDuty przejdź do **Integrations > Generic Webhooks (v3)**
3. Utwórz nową subskrypcję webhooka z adresem URL Kit
4. Wybierz zdarzenia: `incident.acknowledged` i `incident.resolved`

## Rozwiązywanie problemów

| Objaw | Przyczyna | Rozwiązanie |
|-------|-----------|-------------|
| "Connection failed" przy zapisie | Nieprawidłowy token API | Wygeneruj nowy token w PagerDuty i wklej ponownie |
| Alerty nie tworzą incydentów | Zdarzenie nie jest włączone w regułach alertów | Sprawdź przełącznik dla każdego typu zdarzenia na stronie ustawień |
| Dyżury się nie synchronizują | E-mail użytkownika PD nie pasuje do użytkownika Kit | Upewnij się, że adres e-mail użytkownika PagerDuty jest taki sam jak w koncie Kit |
| Czerwony znacznik błędu połączenia | Token API został unieważniony lub wygasł | Połącz ponownie z nowym tokenem; Kit wstrzymuje wszystkie alerty przy błędzie autoryzacji |

## Szybka lista kontrolna

- [ ] Utwórz klucz API PagerDuty z zakresem dla serwisu VDP
- [ ] Wklej klucz API i klucz integracji w **VDP > Settings > PagerDuty**
- [ ] Włącz co najmniej jedną regułę alertów (zalecane: naruszenie SLA + ocena krytyczna)
- [ ] (Opcjonalnie) Wybierz harmonogram PagerDuty do synchronizacji dyżurów
- [ ] (Opcjonalnie) Skonfiguruj webhook w PagerDuty dla dwukierunkowych aktualizacji
- [ ] Zweryfikuj klikając **Test** na stronie ustawień