Zakresy OAuth

Zakresy określają, do czego token dostępu jest uprawniony. API Altium 365 weryfikuje zakresy przy każdym żądaniu – token bez wymaganego zakresu dla danej operacji otrzyma błąd autoryzacji.

Zakresy są przypisywane przez platformę na podstawie kontekstu, w którym token został wydany. Nie wybiera się ich ręcznie, ale można się z nimi spotkać podczas analizowania tokenów i pracy z API. Zrozumienie struktury zakresów pomaga interpretować, do czego token jest uprawniony, oraz rozumieć granice dostępu.

Zakresy w tokenie JWT

Tokeny dostępu są tokenami JWT i można je zdekodować, aby sprawdzić ich deklaracje. Atrybut scope zawiera listę wszystkich zakresów, z którymi token został wydany. Na przykład token wydany do dostępu do Workspace wygląda następująco:

{
  "scope": [
    "openid",
    "profile",
    "a365:workspace:a9a01426-ac92-480e-9f80-97fe0f8ba344"
  ]
}

Zakres a365:workspace:{workspace-id} koduje zarówno obszar dostępu, jak i konkretny Workspace, dla którego token jest ważny.

Konwencja nazewnictwa

Zakresy OAuth w Altium mają następujący wzorzec:

area[:resource][.action]
  • area – szeroki domenowy obszar platformy (np. workspace, global, supply)

  • resource – opcjonalnie; konkretny ograniczony kontekst lub domena danych w obrębie obszaru (np. design, library, app)

  • action – opcjonalnie; typ operacji (np. read, write, execute)

Kilka zasad stojących za tym nazewnictwem:

  • Nazwy obszarów są oparte na domenach, a nie na produktach. workspace zamiast a365, supply zamiast octopart.

  • Nazwy zasobów są zgodne z ograniczonymi kontekstami i ustalonym słownictwem domenowym.

  • Zakresy są zorientowane na dane, a nie na funkcjonalność.

Zakres

Znaczenie

workspace:design.read

Dostęp do odczytu danych projektowych w Workspace

global:app.write

Tworzenie rejestracji aplikacji i zarządzanie nimi

supply.read

Dostęp do odczytu danych o łańcuchu dostaw

Standardowe zakresy OIDC

Tokeny mogą również zawierać standardowe zakresy OIDC używane do zarządzania tożsamością i sesją:

Zakres

Przeznaczenie

openid

Wymagany dla przepływów uwierzytelniania OIDC

profile

Dostęp do podstawowych informacji o profilu użytkownika

group_memberships

Dostęp do danych o przynależności użytkownika do grup

offline_access

Pozwala na wydanie tokenu odświeżania

Zakresy Workspace

Dostęp do danych Workspace jest obecnie reprezentowany jako pojedynczy zakres a365:workspace:{workspace-id}, obejmujący wszystkie zasoby Workspace. Platforma zmierza w kierunku bardziej szczegółowego modelu, w którym dostęp może być ograniczony do konkretnych ograniczonych kontekstów:

Zakres

Obejmuje

workspace:design

Projekty PCB, schematy, warianty, wydania

workspace:library

Komponenty, symbole, footprinty, dane części

workspace:procurement

Zestawienia materiałowe, pozycje BOM

workspace:collaboration

Komentarze, zadania, adnotacje

workspace:team

Członkostwo i grupy Workspace

workspace:insights

Wnioski i analitykę Workspace

workspace:plm

Integracje PLM

workspace:workflows

Definicje i wykonania przepływów pracy

workspace:requirements

Zarządzanie wymaganiami

Każdy szczegółowy zakres obsługuje akcje .read i .write. Ten bardziej szczegółowy model jest wdrażany stopniowo – dopasowuje zakresy do modelu bounded context model w API, dzięki czemu można przyznać integracji dostęp wyłącznie do danych, których rzeczywiście potrzebuje.

 

AI-LocalizedTłumaczenie SI
Jeśli znajdziesz błąd, zaznacz tekst/obraz i naciśnij Ctrl + Enter aby wysłać nam wiadomość.
Treść