Authentification

Altium Identity est le fournisseur d'identité OAuth 2.0 et OpenID Connect (OIDC) d'Altium. Votre application authentifie un utilisateur via Altium Identity, puis appelle l'API Altium 365 en son nom — elle ne gère jamais le mot de passe Altium de l'utilisateur.

Les applications se connectent avec authorization-code flow et PKCE. Les clients publics (desktop, on-prem, natifs, applications monopage) utilisent PKCE sans secret client ; les clients confidentiels (backends web/serveur) ajoutent un secret client. Les flux détaillés, avec chaque requête et chaque réponse, se trouvent sur GitHub — cette page explique les concepts afin que vous sachiez quelle voie choisir.

Full flows, code, and libraries → Altium 365 Auth on GitHub. Le projet GitHub fait foi : spécification indépendante du langage, suite de conformité partagée et bibliothèques clientes idiomatiques pour TypeScript et .NET.

Vocabulaire des jetons

L'offre commerciale Altium 365 est déployée dans quatre régions géographiques :

Terme

Ce que c'est

Global access token

Un jeton au niveau utilisateur que vous recevez après la connexion avec les portées openid profile . Utilisez-le pour découvrir à quels workspaces l'utilisateur peut accéder.

Workspace access token

Un jeton limité à un seul workspace via la portée a365:workspace:{workspaceId} . Utilisez-le pour les appels à l'API Altium 365 sur ce workspace.

Refresh token

Émis lorsque vous demandez la portée offline_access . Utilisez-le pour obtenir un nouveau jeton d'accès — global ou de workspace — sans redemander à l'utilisateur de se connecter.

Pour l'anatomie complète d'un jeton et de ses revendications, voir Tokens et OAuth Scopes.

Le parcours de connexion

Le parcours est le même pour les applications web et desktop/on-prem — seule la manière dont how vous obtenez le code d'autorisation diffère (une redirection hébergée par votre application, ou le modèle ActionWait hébergé par Altium pour les applications qui ne peuvent pas en héberger une). Dans tous les cas :

  1. Sign in on Commercial Cloud (https://auth.altium.com) pour obtenir un global access token. Utilisez-le pour les ressources globales, comme la liste des workspaces de l'utilisateur.

  2. Discover the user's workspaces avec le jeton global.

  3. Exchange the global token for a workspace access token, au point de terminaison correspondant au workspace (Commercial ou Gov Cloud — voir ci-dessous).

  4. Call the Altium 365 API avec le jeton de workspace, en le renouvelant au point de terminaison qui l'a émis.

sequenceDiagram
    participant App
    participant Identity as Altium Identity
    participant API as Altium 365 API
    App->>Identity: 1. Sign in on auth.altium.com (openid profile) + PKCE
    Identity-->>App: global access token
    App->>API: 2. Discover workspaces (global token)
    API-->>App: workspaces (+ location)
    App->>Identity: 3. Exchange for a workspace token
    Identity-->>App: workspace access token (+ refresh token)
    App->>API: 4. API calls (workspace access token)

Une application détient généralement plusieurs jetons à la fois — un jeton global plus un jeton de workspace pour chaque workspace utilisé. Chacun est renouvelé auprès de son propre point de terminaison émetteur.

Skip the discovery step. Lorsque vous savez déjà que l'utilisateur doit arriver sur un workspace, le paramètre facultatif selectWorkspace invite l'utilisateur à en choisir un during la connexion, et l'échange de code renvoie directement un jeton limité au workspace. Voir le mode Login into workspace.

Commercial Cloud et Gov Cloud

Altium 365 fonctionne dans deux environnements strictement séparés :

  • Commercial Cloud (auth.altium.com) — l'environnement par défaut.
  • Gov Cloud (auth.365-gov.altium.com) — un environnement isolé pour les workspaces ITAR/réglementés.

L'émetteur d'un jeton (iss) indique quel environnement l'a généré, et les deux ne sont jamais interchangeables : un jeton Gov est rejeté par les services Commercial, et un jeton Commercial est rejeté par Gov Cloud. Gov Cloud applique cela avec un two-token model — un jeton de workspace Gov comporte un marqueur secure qui le lie à Gov Cloud. Vous vous connectez une seule fois sur Commercial Cloud, puis échangez votre jeton global contre chaque jeton de workspace dans l'environnement propriétaire de ce workspace.

De quel flux ai-je besoin ?

Votre application

Flux

Guide
Web or server application pouvant héberger un point de terminaison de redirection HTTPS

Flux de redirection par code d'autorisation

Applications web et serveur

Desktop, on-prem, or native application ne pouvant pas héberger de redirection

Connexion via navigateur selon le modèle ActionWait hébergé par Altium

Applications desktop et on-prem

Bibliothèques clientes

Vous n'avez pas à implémenter le flux à la main. Altium maintient des bibliothèques open source construites sur une spécification indépendante du langage et validées par une suite de conformité partagée :

Langage

Documentation de référence

TypeScript Bibliothèque TypeScript
.NET Bibliothèque .NET

En savoir plus

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