Escopos do OAuth
Os escopos definem o que um token de acesso está autorizado a fazer. A API do Altium 365 valida os escopos em toda solicitação — um token sem o escopo exigido para uma operação receberá um erro de autorização.
Os escopos são atribuídos pela plataforma com base no contexto em que um token é emitido. Você não seleciona escopos manualmente, mas irá encontrá-los ao inspecionar tokens e ao trabalhar com a API. Entender como os escopos são estruturados ajuda você a interpretar para que um token está autorizado e a raciocinar sobre os limites de acesso.
Escopos em um token JWT
Os tokens de acesso são JWTs e podem ser decodificados para inspecionar suas claims. A claim scope lista todos os escopos com os quais o token foi emitido. Por exemplo, um token emitido para acesso ao Workspace se parece com isto:
{
"scope": [
"openid",
"profile",
"a365:workspace:a9a01426-ac92-480e-9f80-97fe0f8ba344"
]
}
O escopo a365:workspace:{workspace-id} codifica tanto a área de acesso quanto o Workspace específico para o qual o token é válido.
Convenção de nomenclatura
Os escopos OAuth do Altium seguem o padrão:
area[:resource][.action]
-
area– o domínio amplo da plataforma (por exemplo,workspace,global,supply) -
resource– opcional; o contexto delimitado específico ou domínio de dados dentro da área (por exemplo,design,library,app) -
action– opcional; o tipo de operação (por exemplo,read,write,execute)
Alguns princípios por trás da nomenclatura:
-
Os nomes das áreas são baseados em domínio, não em produto.
workspaceem vez dea365,supplyem vez deoctopart. -
Os nomes dos recursos estão alinhados com contextos delimitados e com o vocabulário de domínio estabelecido.
-
Os escopos são centrados em dados, não em funcionalidades.
Escopo |
Significado |
|
Acesso de leitura aos dados de projeto em um Workspace |
|
Criar e gerenciar registros de aplicativos |
|
Acesso de leitura a dados de suprimentos |
Escopos OIDC padrão
Os tokens também podem conter escopos OIDC padrão usados para gerenciamento de identidade e sessão:
Escopo |
Finalidade |
|
Necessário para fluxos de autenticação OIDC |
|
Acesso a informações básicas do perfil do usuário |
|
Acesso aos dados de associação do usuário a grupos |
|
Permite a emissão de um refresh token |
Escopos de Workspace
O acesso aos dados do Workspace é atualmente representado como um único escopo a365:workspace:{workspace-id}, cobrindo todos os recursos do Workspace. A plataforma está evoluindo para um modelo mais granular, no qual o acesso pode ser restrito a contextos delimitados específicos:
Escopo |
Abrange |
|
Projetos de PCB, esquemáticos, variantes, liberações |
|
Componentes, símbolos, footprints, dados de peças |
|
Listas de materiais, itens de BOM |
|
Comentários, tarefas, anotações |
|
Membros e grupos do Workspace |
|
Insights e análises do Workspace |
|
Integrações com PLM |
|
Definições e execuções de fluxo de trabalho |
|
Gerenciamento de requisitos |
Cada escopo granular oferece suporte a ações .read e .write. O modelo mais detalhado está sendo disponibilizado de forma incremental — ele alinha os escopos ao modelo de contexto delimitado da API, tornando possível conceder a uma integração acesso apenas aos dados de que ela realmente precisa.