Portées OAuth

Les scopes définissent ce qu’un jeton d’accès est autorisé à faire. L’API Altium 365 valide les scopes à chaque requête – un jeton ne disposant pas du scope requis pour une opération recevra une erreur d’autorisation.

Les scopes sont attribués par la plateforme en fonction du contexte dans lequel un jeton est émis. Vous ne sélectionnez pas les scopes manuellement, mais vous les rencontrerez lors de l’inspection des jetons et lorsque vous travaillez avec l’API. Comprendre la structure des scopes vous aide à interpréter ce qu’un jeton est autorisé à faire et à raisonner sur les limites d’accès.

Scopes dans un jeton JWT

Les jetons d’accès sont des JWT et peuvent être décodés pour examiner leurs claims. Le claim scope répertorie tous les scopes avec lesquels le jeton a été émis. Par exemple, un jeton émis pour l’accès au Workspace ressemble à ceci :

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

Le scope a365:workspace:{workspace-id} encode à la fois la zone d’accès et le Workspace spécifique pour lequel le jeton est valide.

Convention de nommage

Les scopes OAuth d’Altium suivent le modèle suivant :

area[:resource][.action]
  • area – le domaine large de la plateforme (par ex. workspace, global, supply)

  • resource – facultatif ; le contexte délimité spécifique ou le domaine de données au sein de la zone (par ex. design, library, app)

  • action – facultatif ; le type d’opération (par ex. read, write, execute)

Quelques principes derrière ce nommage :

  • Les noms de zone sont basés sur le domaine, et non sur le produit. workspace plutôt que a365, supply plutôt que octopart.

  • Les noms de ressources s’alignent sur les contextes délimités et le vocabulaire de domaine établi.

  • Les scopes sont centrés sur les données, et non sur les fonctionnalités.

Scope

Signification

workspace:design.read

Accès en lecture aux données de conception dans un Workspace

global:app.write

Créer et gérer les enregistrements d’applications

supply.read

Accès en lecture aux données d’approvisionnement

Scopes OIDC standard

Les jetons peuvent également contenir des scopes OIDC standard utilisés pour la gestion de l’identité et des sessions :

Scope

Objectif

openid

Requis pour les flux d’authentification OIDC

profile

Accès aux informations de base du profil utilisateur

group_memberships

Accès aux données d’appartenance aux groupes de l’utilisateur

offline_access

Permet l’émission d’un jeton de rafraîchissement

Scopes du Workspace

L’accès aux données du Workspace est actuellement représenté par un seul scope a365:workspace:{workspace-id} couvrant toutes les ressources du Workspace. La plateforme évolue vers un modèle plus granulaire dans lequel l’accès peut être limité à des contextes délimités spécifiques :

Scope

Couvre

workspace:design

Projets PCB, schémas, variantes, versions

workspace:library

Composants, symboles, empreintes, données de pièces

workspace:procurement

Nomenclatures, éléments de nomenclature

workspace:collaboration

Commentaires, tâches, annotations

workspace:team

Appartenance au Workspace et groupes

workspace:insights

Informations et analyses du Workspace

workspace:plm

Intégrations PLM

workspace:workflows

Définitions et exécutions de workflows

workspace:requirements

Gestion des exigences

Chaque scope granulaire prend en charge les actions .read et .write. Ce modèle plus fin est déployé progressivement – il aligne les scopes sur le modèle de contexte délimité de l’API, ce qui permet d’accorder à une intégration l’accès uniquement aux données dont elle a réellement besoin.

 

AI-LocalizedLocalisé par IA
Si vous trouvez un problème, sélectionnez le texte/l’image et appuyez surCtrl + Entréepour nous envoyer vos commentaires.
Contenu