Autenticación

Altium Identity es el proveedor de identidad OAuth 2.0 y OpenID Connect (OIDC) de Altium. Tu aplicación autentica a un usuario a través de Altium Identity y luego llama a la API de Altium 365 en su nombre; nunca maneja la contraseña de Altium del usuario.

Las aplicaciones inician sesión con authorization-code flow y PKCE. Los clientes públicos (aplicaciones de escritorio, locales, nativas y de una sola página) usan PKCE sin secreto de cliente; los clientes confidenciales (backends web o de servidor) añaden un secreto de cliente. Los flujos paso a paso, con todas las solicitudes y respuestas, se encuentran en GitHub; esta página explica los conceptos para que sepas qué camino seguir.

Full flows, code, and libraries → Altium Auth on GitHub. El proyecto de GitHub es la fuente de referencia: una especificación independiente del lenguaje, un conjunto compartido de pruebas de conformidad y bibliotecas de cliente idiomáticas para TypeScript y .NET.

Terminología de tokens

La oferta comercial de Altium 365 opera en cuatro regiones geográficas:

Término

Qué es

Global access token

Un token de usuario que recibes después de iniciar sesión con los openid profile ámbitos. Úsalo para descubrir a qué espacios de trabajo puede acceder el usuario.

Workspace access token

Un token limitado a un único espacio de trabajo mediante el ámbito a365:workspace:{workspaceId}. Úsalo para realizar llamadas a la API de Altium 365 en ese espacio de trabajo.

Refresh token

Se emite cuando solicitas el ámbito offline_access. Úsalo para obtener un nuevo token de acceso, global o de espacio de trabajo, sin pedir al usuario que vuelva a iniciar sesión.

Para conocer la estructura completa de un token y sus declaraciones, consulta Tokens y Ámbitos de OAuth.

El proceso de inicio de sesión

El proceso es el mismo para las aplicaciones web y las aplicaciones de escritorio o locales; solo cambia how obtienes el código de autorización (una redirección alojada por tu aplicación o el patrón ActionWait alojado por Altium para las aplicaciones que no pueden alojar una). En todos los casos:

  1. Sign in on Commercial Cloud (https://auth.altium.com) para obtener un global access token. Úsalo para recursos globales, como enumerar los espacios de trabajo del usuario.

  2. Discover the user's workspaces con el token global.

  3. Exchange the global token for a workspace access token, en el endpoint que corresponda al espacio de trabajo (comercial o GovCloud; consulta más abajo).

  4. Call the Altium 365 API con el token del espacio de trabajo, renovándolo en el endpoint que lo emitió.

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)

Una aplicación suele mantener varios tokens a la vez: un token global y un token de espacio de trabajo por cada espacio de trabajo en uso. Cada uno se renueva en su propio endpoint de emisión.

Skip the discovery step. Cuando ya sabes que el usuario debe acceder a un espacio de trabajo, el parámetro opcional selectWorkspace pide al usuario que elija uno during inicio de sesión, y el intercambio del código devuelve directamente un token limitado a ese espacio de trabajo. Consulta Inicio de sesión en modo de espacio de trabajo.

Nube comercial y GovCloud

Altium 365 opera en dos entornos estrictamente separados:

  • Commercial Cloud (auth.altium.com): el entorno predeterminado.

  • GovCloud (auth.365-gov.altium.com): un entorno aislado para espacios de trabajo sujetos a ITAR o a otras normativas.

El emisor de un token (iss) identifica qué entorno lo emitió, y los tokens de ambos entornos nunca son intercambiables: los servicios comerciales rechazan un token Gov, y GovCloud rechaza un token comercial. GovCloud aplica esta separación mediante un two-token model: un token de espacio de trabajo Gov incluye un marcador secure que lo vincula a GovCloud. Inicias sesión una vez en la nube comercial y luego intercambias tu token global por cada token de espacio de trabajo en el entorno al que pertenece ese espacio de trabajo.

¿Qué flujo necesito?

Tu aplicación

Flujo

Guía
Web or server aplicación que puede alojar un endpoint de redirección HTTPS

Flujo de redirección con código de autorización

Aplicaciones web y de servidor

Desktop, on-prem, or native aplicación que no puede alojar una redirección

Inicio de sesión en el navegador mediante el patrón ActionWait alojado por Altium

Aplicaciones de escritorio y locales

Bibliotecas de cliente

No tienes que implementar el flujo manualmente. Altium mantiene bibliotecas de código abierto basadas en una única especificación independiente del lenguaje y validadas mediante un conjunto compartido de pruebas de conformidad:

Lenguaje

Documentación de referencia

TypeScript Biblioteca de TypeScript
.NET Biblioteca de .NET
Python Biblioteca de Python

Más información

AI-LocalizedLocalizado por IA
Si encuentra un problema, seleccione el texto/imagen y presioneCtrl + Enterpara enviarnos sus comentarios.
Contents
Contents