Uprawnienia i dostęp do API
Jak Secani stosuje najmniejsze uprawnienia w organizacjach, obszarach roboczych, zakresach zarządzania, agentach i kluczach API OSCAL.
Secani oddziela tożsamość, członkostwo w zasobach i indywidualne możliwości. Dostęp jest oceniany na granicy organizacji, obszaru roboczego lub zakresu zarządzania, więc osoba lub połączony agent otrzymuje tylko kontekst wymagany do przypisanej mu pracy. Szerokie logowanie nie oznacza szerokiego dostępu do danych.
Granice uprawnień
| Granica | Typowa treść | Przykłady efektów zdolności |
|---|---|---|
| Organizacja | Członkowie, role, ustawienia, katalogi, klucze API | czytaj, wrażliwy czytaj, pisz, administruj |
| Obszar roboczy | Integracje, importy, eksporty, zakresy | czytaj, pisz, wrażliwe czytaj, admin |
| Zakres zarządzania | Kontrole, dowody, ryzyka, obowiązki, oceny, OSCAL | czytaj, wrażliwe czytaj, pisz, zatwierdzaj, administruj |
Możliwości używają stabilnych, specyficznych dla zadań nazw, takich jak evidence.read, evidence.create, risk.read, risk.write, oscal.read, I oscal.export. Odczyt, wrażliwy odczyt, zapis, zatwierdzanie i administrowanie to oddzielne efekty, a nie jedna uniwersalna flaga dostępu.
Najmniejsze uprawnienia agenta
Rejestracji agenta można nadać wyłącznie funkcje wyraźnie oznaczone jako możliwe do przypisania przez agenta. Odpowiedzialność ludzka pozostaje twardą granicą: możliwości zatwierdzania dowodów, akceptowania ryzyka, publikowania wyników kontroli, zarządzania uprawnieniami, wykonywania operacji związanych z prywatnością lub zatwierdzania własnej propozycji agenta nie podlegają przypisaniu agentowi.
Rozpocznij integrację z funkcjami tylko do odczytu w najwęższym zakresie zarządzania. Dodawaj wrażliwe funkcje odczytu i zapisu tylko wtedy, gdy wymaga tego przepływ pracy. Zachowaj zgodę wyznaczonej osoby, przejrzyj proponowane zmiany przed wykonaniem i wycofaj dostęp po zakończeniu zadania.
Publiczne API OSCAL
Publiczny interfejs API walidacji OSCAL ma dwa tryby dostępu:
- Anonimowe żądania nie wymagają konta ani danych uwierzytelniających i otrzymują udokumentowane limity stawek podstawowych.
- Opcja
sk_oscal_klucz na okaziciela podnosi limity szybkości walidacji. Ma stałą rolę klucza APIoscal-validatori tylkooscal.validatezdolność.
| Mandat | Rola klucza API | Zdolność | Granica zasobów | Wyraźnie wykluczone |
|---|---|---|---|---|
| Nic | anonimowy | oscal.validate w granicach bazowych | Publiczny interfejs API walidacji OSCAL | Wszystkie dane organizacji i obszaru roboczego |
sk_oscal_ klucz na okaziciela | oscal-validator | oscal.validate na kluczowych limitach | Publiczny interfejs API walidacji OSCAL | Organizacja, obszar roboczy, zakres zarządzania i odczyty dowodów; pisać, zatwierdzać i administrować |
Rola jest wymuszana przez dedykowany typ poświadczeń, a nie przez ogólny token produktu. Przedstawienie klucza nie może żądać innej możliwości ani eskalować do innej możliwości i nie zapewnia dostępu do organizacji, obszarów roboczych, zakresów zarządzania, dowodów ani administrowania produktem.
Administratorzy organizacji tworzą i unieważniają klucze API OSCAL w ustawieniach organizacji. Każdy sekret jest wyświetlany dokładnie raz. Przechowuj go w tajnym menedżerze, wysyłaj tylko w Authorization: Bearer nagłówek i obróć go lub unieważnij, jeśli zostanie ujawniony. Nieprawidłowy klucz kończy się niepowodzeniem 401 ERR_INVALID_API_KEY; nigdy po cichu nie wraca do dostępu anonimowego.
Uwierzytelnianie a autoryzacja
Secani używa WorkOS do uwierzytelniania użytkowników. Uwierzytelnianie ustala, kto dzwoni; Kontrole członkostwa i możliwości Secani decydują, do czego ta tożsamość może uzyskać dostęp. Bieżący zakres logowania identyfikuje użytkownika i nie należy go interpretować jako pozwolenia na odczyt lub modyfikację każdego zasobu Secani.
Każdy klient powinien sobie poradzić 401 jako brakujące lub nieprawidłowe uwierzytelnienie oraz 403 jako uwierzytelnione, ale niewystarczające zezwolenie. Nie ponawiaj automatycznie żadnej odpowiedzi z szerszym dostępem. Poproś administratora o najmniejszy zestaw możliwości i granicę zasobów, która umożliwia wykonanie zamierzonego zadania.
Zobacz Przewodnik po API OSCAL, Odzyskiwanie błędów API, i kanoniczne Specyfikacja OpenAPI.