O tutorial descreve as etapas para autenticar um ORCID eu ia. Ele pode ser concluído usando o público or API membro. Ele analisa as etapas para recuperar um verificado ORCID iD, que pode ser armazenado no banco de dados do seu sistema. Há duas opções: OAuth de três etapas (para permissões de atualização de longa duração) e OAuth implícito (para permissões de curto prazo somente leitura).
Obtenha algumas credenciais de cliente
As credenciais do cliente são o nome de usuário e a senha que seu aplicativo / site usará para acessar o ORCID API. Qualquer pessoa pode se registrar para obter credenciais de API pública somente leitura, ORCID membros podem se registrar para a API membro.
Recomendamos que os desenvolvedores testem a API pública no servidor de teste sandbox antes de usar a versão de produção. Abaixo estão as etapas sobre como se registrar para credenciais de API públicas nos ambientes Sandbox e Produção.
- Faça login na sua ORCID registro:
Servidor de produção: https://orcid.org/signin
Servidor de teste de sandbox: https://sandbox.orcid.org/signin - Clique no seu nome no canto superior direito
- Clique Ferramentas de desenvolvimento da opção do menu
NOTA Para acessar as Ferramentas do desenvolvedor, você deve verificar seu endereço de e-mail. Se você ainda não verificou seu endereço de e-mail, será solicitado que o faça neste momento. - Clique no botão “Cadastre-se gratuitamente ORCID botão API pública”.

- Revise e concorde com os termos de serviço quando solicitado.

Registre um aplicativo
- Depois de concordar com os termos de serviço, você será direcionado de volta às Ferramentas do desenvolvedor (https://orcid.org/developer-tools or https://sandbox.orcid.org/developer-tools) Preencha o formulário apresentado para registrar um novo aplicativo.
- Nome: O nome do seu aplicativo. Isso será exibido para os usuários quando eles concederem permissão ao seu aplicativo para obter seus ORCID iD, e será exibido em seu Lista de organizações confiáveis. Recomendamos usar o nome de sua organização ou serviço (por exemplo, o nome de um jornal).
- site: O site que o usuário pode visitar para saber mais sobre seu aplicativo. Isso será exibido em seu Lista de organizações confiáveis.
- Descrição: Informações sobre o aplicativo que você está desenvolvendo e como usará as do usuário ORCID eu ia. Isso será exibido para os usuários na tela do OAuth.

- URIs de redirecionamento: depois que o usuário autorizar seu aplicativo, ele será retornado a um URI que você especificar. Você deve fornecer esses URIs com antecedência ou seus usuários de integração enfrentarão um erro.
- Apenas URIs HTTPS são aceitos na produção.
- Domínios registrados DEVO correspondem exatamente aos domínios usados, incluindo subdomínios.
- Registre todos os URIs de redirecionamento totalmente sempre que possível Esta é a opção mais segura e a que recomendamos. Para obter mais informações sobre URIs de redirecionamento, consulte nosso Perguntas frequentes
- Os aplicativos de API pública devem ter pelo menos um URI de redirecionamento registrado
- Para testar, você pode adicionar automaticamente o URI do Google OAuth Playground clicando em "+Google OAuth2 Playground" em Test redirect URIs ou o ORCID Swagger de API pública clicando em “+ORCID interface public swagger ”.
- Para mais informações, consulte Sobre redirecionar URIs.
- Clique no ícone Salvar na parte inferior do formulário para gerar suas credenciais de API.

- Para visualizar suas credenciais de API, clique em Mostrar detalhes.

- Suas credenciais de API - Cliente ID e Segredo do cliente - são mostrados logo abaixo dos URIs de redirecionamento. Abaixo de suas credenciais estão URLs de amostra e chamadas de API com suas credenciais pré-preenchidas.

Use suas credenciais
Agora que você tem suas credenciais, é hora de começar a usar o ORCID API pública!
Observe que podemos transferir suas credenciais para o membro API se você se tornar um ORCID membro.
Você pode solicitar credenciais de API de membro da sandbox para construir e testar seu aplicativo. Essas credenciais permitem que você faça chamadas para a API membro do sandbox para ler, gravar e atualizar ORCID registros. O acesso ao ambiente de teste sandbox está disponível gratuitamente para qualquer pessoa, mesmo se você não for um ORCID organização membro.
Anote os: Se você estiver usando um sistema de terceiros que já oferece suporte ORCID, talvez você não precise se registrar para obter credenciais de API de sandbox.
O sandbox permite que você crie contas de usuário de teste e desenvolva sua integração sem ter que se preocupar em afetar os dados ao vivo (produção) ORCID Registro. A sandbox se comporta da mesma maneira que a produção ORCID Registro com algumas exceções.
Criação de uma conta de teste
A fim de testar o ORCID API e chamadas de API, como leitura e adição de informações a um ORCID registro, você também precisará criar um teste ORCID gravar na caixa de areia. Isso pode ser feito por meio da interface do usuário, bem como na produção ORCID Registro. Vamos para https://sandbox.orcid.org/register e registre-se para uma conta.
Endereços de e-mail do Mailinator
O servidor sandbox envia e-mails de notificação apenas para Mailinator (@mailinator.com) endereços de e-mail para não enviar spam aos servidores de e-mail involuntariamente. Você não receberá um e-mail de verificação ou notificação de redefinição de senha, a menos que use um endereço @mailinator.com, e a verificação é necessária para fazer edições manuais nos registros do sandbox. Saiba mais sobre suas caixas de entrada públicas gratuitas Aqui. Se você não deseja usar um Mailinator endereço, anote seu nome de usuário e senha (pois você os usará para conceder autorização ao seu aplicativo durante o teste) e entre em contato conosco para solicitar assistência com a verificação.
Mailinator é um serviço de e-mail que possui um serviço público gratuito e um serviço privado pago. Para testar, você pode usar o serviço público totalmente gratuito. Saiba mais sobre seus níveis aqui.
Mailinator é um serviço de terceiros que não é gerenciado ou mantido por ORCID. Recomendamos que você analise como esse serviço funciona e suas limitações antes de usar esses endereços.
Registre seus URLs de redirecionamento
Depois de conectado, os usuários são enviados a um URL que você especifica como parte do registro de um cliente.
O que são URIs de redirecionamento e como eles são usados?
Os URIs de redirecionamento são usados pelo nosso serviço de autenticação OAuth como medida de segurança. ORCID enviará apenas usuários autenticados para URIs registrados pelo cliente solicitando autenticação. Isso impede que os serviços representem uns aos outros.
Por favor, note que apenas URIs HTTPS são aceitos na produção. Você pode testar usando HTTP URIs, mas precisará se registrar URIs HTTPS quando você solicita credenciais de API de membro de produção.
Como combinamos URIs de redirecionamento?
- Você DEVE registrar subdomínios como URIs separados. https://anythingelse.thirdparty.com não funcionará.
- O registro completo de todos os URIs de redirecionamento, incluindo o caminho, é incentivado, é o que a maioria dos terceiros faz e é a opção mais segura.
- Se o aplicativo cliente estiver registrado com um uri de redirecionamento que seja apenas o nome do host, qualquer uri de redirecionamento nesse host poderá ser usado. Assim, por exemplo, se o seguinte uri de redirecionamento estiver registrado: https://thirdparty.com então todos os seguintes redirect_uris funcionarão:
- https://thirdparty.com/oauth/callback1
- https://thirdparty.com/callback2
- https://thirdparty.com/anything-else-as-long-as-the-host-is-the-same
No entanto, https://anythingelse.thirdparty.com não funciona. Vocês DEVO registrar subdomínios como URIs separados.
O que acontece se meu URI de redirecionamento estiver incorreto?
Usuários enviados para autenticação em ORCID com URIs de redirecionamento incorretos verá uma mensagem de erro semelhante a esta:
Gerenciando URIs de redirecionamento para membros
Se você estiver usando a API de membro e precisar de alterações em seus URIs de redirecionamento, entre em contato com nossa equipe de engajamento
Gerenciando URIs de redirecionamento para clientes públicos
Se você estiver usando a API pública, precisará seguir as etapas abaixo para atualizar sua lista de URIs de redirecionamento associados ao seu ORCID ID do cliente de API pública. Você pode fazer isso seguindo os passos abaixo:
- Entre no seu ORCID registro
- Clique no seu nome no canto direito
- Selecione as ferramentas do desenvolvedor
- Clique no lápis de edição ao lado do nome do cliente
- Edite um URI de redirecionamento existente ou clique em 'Adicionar outro URI de redirecionamento' edite um existente
- Depois de fazer suas alterações, você precisa clicar no ícone salvar
Apenas URIs HTTPS são aceitos na produção. Você pode testar usando URIs http, mas precisará registrar URIs HTTPS ao solicitar credenciais de API de membro de produção.
Implementar OAuth
Abaixo, explicamos os três 'tipos' de OAuth suportados por ORCID. A maioria das linguagens de programação tem bibliotecas OAuth e/ou OpenID disponíveis que facilitam a integração.
OAuth de três pernas
Esta é a maneira padrão de autenticar um usuário ORCID iD e pode ser usado para obter permissões de atualização de longa duração junto com o autenticado ORCID eu ia.
ORCID as integrações usam “3 pernas OAuth” para autenticar usuários e solicitar permissão para interagir com seus registros. Qualquer integração pode solicitar permissões de leitura usando a API Pública. ORCID os membros podem usar a API Member para solicitar permissões de atualização. Funciona assim:
- Você cria um link especial
- Quando clicado, o usuário é enviado para ORCID
- ORCID pede ao usuário para fazer login
- ORCID pede ao usuário para conceder permissão ao seu aplicativo
- ORCID envia o usuário de volta ao seu sistema com um código de autorização
- Seu sistema troca esse código por um token de acesso
A URL de autorização personalizada inclui as informações do seu cliente, bem como os 'escopos' que especificam as áreas específicas de seu registro que você deseja acessar. Após o login, o usuário autoriza a conexão com seu sistema e é retornado à sua página de destino juntamente com um código de autorização. Este código é então usado para obter seus ORCID iD junto com um token de acesso válido para os escopos solicitados.
Você cria seu link de autorização especificando o cliente de suas credenciais de API ID e página de destino associada (URI de redirecionamento). Você escolhe quais permissões solicitar definindo o parâmetro de escopo.
O exemplo a seguir solicita permissão para ler dados de acesso limitado no ORCID servidor de teste sandbox. No mundo real, você exibe esse link em seu site ou o inclui em um e-mail ao solicitar que o usuário autentique e autorize. No entanto, para fins de teste, você pode simplesmente colá-lo em seu navegador da web. Substitua os dados entre colchetes pelas informações do seu cliente e certifique-se de remover os colchetes!
https://sandbox.orcid.org/oauth/authorize?client_id=[Your client ID]&response_type=code&scope=/read-limited&redirect_uri=[Your landing page]
Aquele em que o usuário clicou no link e fez login em ORCID e recebem permissões, eles são redirecionados de volta ao seu site, como este:
https://[Your landing page]?code=Q70Y3A
Você deve trocar imediatamente o código de autorização para o ORCID iD e token de acesso. O código de autorização expira após o uso. O pedido é assim e não pode ser feito em um navegador da web, deve ser feito pelo seu servidor.
URL=https://sandbox.orcid.org/oauth/token
HEADER: Accept: application/json
HEADER: Content-Type: application/x-www-form-urlencoded
METHOD: POST
DATA:
client_id=[Your client ID]
client_secret=[Your client secret]
grant_type=authorization_code
code=Six-digit code
redirect_uri=[Your landing page]
ORCID irá então devolver o autenticado do pesquisador ORCID iD e um token de acesso no formato JSON:
{"access_token":"f5af9f51-07e6-4332-8f1a-c0c11c1e3728","token_type":"bearer",
"refresh_token":"f725f747-3a65-49f6-a231-3e8944ce464d","expires_in":631138518,
"scope":"/read-limited","name":"Sofia Garcia","orcid":"0000-0001-2345-6789"}
Os tokens de acesso têm longa duração por padrão e expiram 20 anos após a emissão. O token pode ser usado várias vezes antes de expirar.
Use o token de acesso
Tokens de acesso de três etapas estão vinculados a ORCID registro. Para usá-los, você os inclui nas solicitações de API que você faz para ler ou atualizar esse registro.
OAuth implícito
Esta é a maneira centrada no navegador de autenticar um usuário ORCID iD para uso por aplicativos baseados em navegador que não requerem permissões de atualização.
O OAuth implícito é uma versão mais leve do OAuth projetada para ser usada por sistemas que não têm ou não desejam usar componentes do lado do servidor. O OAuth implícito pode ser implementado inteiramente no navegador usando apenas javascript. Está disponível para membros e não membros e funciona assim:
- Você cria um link especial
- Quando clicado, o usuário é enviado para ORCID
- ORCID pede ao usuário para assinar i
- ORCID pede ao usuário para conceder permissão ao seu aplicativo
- ORCID envia o usuário de volta ao seu sistema com seu ORCID iD, um token de acesso e um id símbolo.
- Seu sistema extrai e armazena os autenticados ORCID iD da resposta.
Por razões de segurança, ao usar OAuth implícito, ORCID não retornará tokens de acesso com permissões de atualização.
Fluxo implícito
O fluxo implícito é projetado para que os clientes não precisem usar sua chave secreta para iniciar ORCID entrar. A segurança é reforçada ao restringir os clientes aos seus redirect_urls registrados. Este nível mais baixo de segurança significa que ORCID suporta apenas os escopos / authenticate e openid ao usar o fluxo implícito. Os tokens também têm vida curta, com uma vida útil de 10 minutos. Este fluxo é recomendado para aplicativos do lado do cliente que não têm acesso a um servidor de back-end, por exemplo, aplicativos de telefone ou aplicativos da web javascript de página única.
https://localhost/#access_token=24c11342-f5da-4cf9-94a4-f8a72a30da00&token_type=bearer&expires_in=599&tokenVersion=1&persistent=false&id_token=eyJraWQiOiJxYS1vcmNpZC1vcmctcjlhZmw3cWY2aG2c5bmdzenU1bnQ3Z3pmMGVhNmkiLCJhbGciOiJSUzI1NiJ9.eyJhdF9oYXNoIjoiMW52bXZBbVdwaVd0Z3ZKZW1DQmVYUSIsImF1ZCI6IkFQUC02TEtJSjNJNUIxQzRZSVFQIiwic3ViIjoiMDAwMC0wMDAyLTUwNjItMjIwOSIsImF1dGhfdGltZSI6MTUwNTk4Nzg2MiwiaXNzIjoiaHR0cHM6XC9cL29yY2lkLm9yZyIsIm5hbWUiOiJNciBDcmVkaXQgTmFtZSIsImV4cCI6MTUwNTk4ODQ2MywiZ2l2ZW5fbmFtZSI6IlRvbSIsImlhdCI6MTUwNTk4Nzg2Mywibm9uY2UiOiJ3aGF0ZXZlciIsImZhbWlseV9uYW1lIjoiRGVtIiwianRpIjoiY2U0YzlmNWUtNTBkNC00ZjhiLTliYzItMmViMTI0ZDVkNmNhIn0.hhhts2-4-ibjXPW6wEsFRaNqV_A-vTz2JFloYn7mS1jzQt3xuHiSaSIiXg3rpnt1RojF_yhcvE9Xe4SOtYimxxVycpjcm8yT_-7lUSrc46UCt9qW6gV7L7KQyKDjNl23wVwIifpRD2JSnx6WbuC0GhAxB5-2ynj6EbeEEcYjAy2tNwG-wcVlnfJLyddYDe8AI_RFhq7HrY4OByA91hiYvHzZ8VzoRW1s4CTCFurA7DoyQfCbeSxdfBuDQbjAzXuZB5-jD1k3WnjqVHrof1LHEPTFV4GQV-pDRmkUwspsPYxsJyKpKWSG_ONk57E_Ba--RqEcE1ZNNDUYHXAtiRnM3w
veja nossa documentação técnica para obter mais informações.
OpenID
O OpenID é baseado no OAuth e oferece alguns recursos adicionais.
OpenID Connect 1.0 é uma camada de identidade simples sobre o protocolo OAuth 2.0. Ele complementa os fluxos de autenticação OAuth existentes e fornece informações sobre os usuários aos clientes de uma maneira bem descrita.
OpenID connect é uma forma padronizada de implementar OAuth e compartilhar informações sobre usuários autenticados. Agora será possível configurar os serviços a serem usados ORCID “Pronto para uso” junto com outros provedores de conexão OpenID compatíveis com os padrões. OpenID Connect também fornece compartilháveis ID tokens, que são objetos assinados que podem provar que um usuário foi autenticado usando ORCID em um momento específico. Esses tokens podem ser usados por elementos da interface do usuário para manter as sessões do usuário.
ORCID suporta o perfil de conformidade do provedor OpenID básico, que é uma extensão do fluxo de código de autorização OAuth. ORCID também suporta o fluxo de token implícito para os escopos “/ authenticate” e “openid”.
Isto significa que ORCID:
- Incorporação assinada id tokens dentro de respostas de token para códigos de autorização gerados com o escopo 'openid'
- Suporta o fluxo implícito ao usar 'token' ou 'token id_token' response_types e o escopo 'openid'.
- Suporta os parâmetros 'prompt', 'nonce' e 'max_age' para solicitações de autorização que incluem o escopo 'openid'.
- Suporta descoberta de Openid Connect e pontos de extremidade userinfo
- Suporta o campo 'amr' para integradores que usam a API membro para solicitações de autorização que incluem o escopo 'openid'. Isso pode ser usado para descobrir se um usuário foi autenticado usando a autenticação de dois fatores.
Iniciar uma autenticação OpenID Connect funciona da mesma maneira que uma autenticação OAuth regular. Tudo o que é necessário é que o cliente solicite o escopo 'openid'. Se você estiver usando o escopo / authenticate, substitua-o por openid, visto que authenticate e openid têm a mesma autorização, apenas um ou o outro deve ser usado. Se você estiver usando qualquer outro escopo, adicione openid à lista de escopos solicitados. Quando o escopo openid é incluído, o Registro retorna um id_token dentro da resposta do token e concede ao cliente permissão para acessar o endpoint de informações do usuário para aquele usuário.
observe que o escopo 'openid' não começa com um '/' como o outro ORCID Escopos de API. Isso ocorre porque o escopo 'openid' não é definido por ORCID, mas em vez disso definido pela especificação OpenID Connect.
veja nossa documentação técnica para obter mais informações.
Colete IDs autenticados usando ORCIDWidget de OAuth Java Script de
ORCID fornece um simples Widget Java Script que pode ser usado para obter autenticado ORCID IDs usando OAuth com OpenID Connect.
Observe que o widget usa OAuth implícito, portanto, não coleta nenhuma permissão de gravação. Isso significa que não é adequado para integrações de membros que desejam atualizar registros. Por favor, veja nosso tutorial para Adicionar e atualizar dados em ORCID Registros.