Výukový program popisuje kroky k ověření ORCID iD. Lze jej dokončit buď pomocí na veřejnosti or členské API. Přezkoumává kroky k načtení a ověřeno ORCID iD, které pak lze uložit do databáze vašeho systému. Existují dvě možnosti: 3legged OAuth (pro dlouhodobá oprávnění k aktualizaci) a Implicitní OAuth (pro krátkodobá oprávnění pouze pro čtení).
Získejte pověření klienta
Pověření klienta jsou uživatelské jméno a heslo, které vaše aplikace / web použije pro přístup k ORCID API. Kdokoli se může zaregistrovat pro pověření Public API pouze pro čtení, ORCID členové se mohou zaregistrovat pro členské API.
Vývojářům doporučujeme otestovat veřejné API v sandbox testovací server před použitím produkční verze. Níže jsou uvedeny kroky, jak se zaregistrovat pro veřejné pověření API v prostředí Sandbox i Production.
- Přihlaste se do svého ORCID záznam:
Produkční server: https://orcid.org/signin
Testovací server izolovaného prostoru: https://sandbox.orcid.org/signin - Klikněte na své jméno v pravém horním rohu
- klikněte Vývojářské nástroje z možnosti nabídky
Poznámka: Chcete-li získat přístup k nástrojům pro vývojáře, musíte ověřit svou e-mailovou adresu. Pokud jste ještě neověřili svou e-mailovou adresu, budete vyzváni, abyste tak učinili, než se budete moci zaregistrovat pro veřejné přihlašovací údaje API - Přečtěte si a souhlasíte s 'ORCID Podmínky služby veřejného klienta
- Klikněte na „Registrovat pro ORCID veřejné pověření API“.
Vyplnění formuláře Podrobnosti žádosti
- Jakmile se zaregistrujete pro své veřejné přihlašovací údaje API, budete přesměrováni zpět do nástrojů pro vývojáře (https://orcid.org/developer-tools or https://sandbox.orcid.org/developer-tools).
- Chcete-li zaregistrovat novou žádost, musíte vyplnit předložený formulář s podrobnostmi žádosti.
- Jméno: Název vaší aplikace. Toto se zobrazí uživatelům, když udělí vaší aplikaci oprávnění k získání jejich ORCID iD a zobrazí se v jejich Seznam důvěryhodných organizací. Doporučujeme použít název vaší organizace nebo služby (např. Název deníku).
- Adresa URL aplikace: Web, který může uživatel navštívit, aby se o vaší aplikaci dozvěděl více. To se také zobrazí v jejich Seznam důvěryhodných organizací.
- Popis aplikace: Informace o aplikaci, kterou vyvíjíte, a o tom, jak ji budete používat ORCID iD. Toto se zobrazí uživatelům na obrazovce OAuth.
Přidání Přesměrování URI
Jakmile uživatel autorizuje vaši aplikaci, bude vrácen na URI, které určíte. Tyto identifikátory URI musíte zadat předem, jinak uživatelé integrace zaznamenají chybu.
- Do zobrazeného pole zadejte URI přesměrování
- Pokud potřebujete zadat více než 1 URI přesměrování, klikněte na „Přidat další URI přesměrování“
Upozornění:
- Pouze HTTPS URI jsou přijímány do výroby
- Registrované domény MUST přesně odpovídat použitým doménám, včetně subdomén
- Pokud je to možné, plně zaregistrujte všechny URI přesměrování. Toto je nejbezpečnější možnost a co doporučujeme. Další informace o URI přesměrování naleznete v našem FAQ přesměrování URI
Ukládání aplikace
Jakmile vyplníte formulář žádosti a přidáte své URI přesměrování, můžete svou žádost uložit.
- Klikněte na „Uložit moji aplikaci a vygenerovat moje ID klienta a tajný klíč“
Budete přesměrováni zpět na stránku vývojářských nástrojů, která nyní bude obsahovat vaše přihlašovací údaje klienta Public API
Aktualizace přihlašovacích údajů
Provedení změny informací v aplikaci je velmi jednoduché.
- Upravte příslušné informace a poté klikněte na „Uložit aplikaci“
Použijte své přihlašovací údaje
Nyní, když máte svá pověření, je čas začít používat ORCID Veřejné API!
Vezměte prosím na vědomí, že pokud se stanete členem, můžeme přenést vaše přihlašovací údaje do členského API ORCID člen v budoucnosti.
Můžeš vyžádat si přihlašovací údaje člena API v karanténě k vytvoření a testování vaší aplikace. Tyto přihlašovací údaje vám umožňují volat do prémiového člena API sandboxu pro čtení, zápis a aktualizaci ORCID evidence. Přístup do testovacího prostředí karantény je volně k dispozici komukoli, i když nejste ORCID členské organizace.
Pozor: Pokud používáte ORCID certifikovaný systém poskytovatelů služeb, který již podporuje ORCID, nemusíte se registrovat pro přihlašovací údaje sandbox API, pokud si nepřejete vyzkoušet ORCID integrační funkce v rámci prostředí Sandbox.
Sandbox umožňuje vytvářet testovací uživatelské účty a rozvíjet integraci, aniž byste se museli starat o ovlivnění dat naživo (produkce) ORCID Registr. Sandbox se chová stejně jako výroba ORCID Registrovat se několik výjimek.
Vytvoření testovacího účtu
Aby bylo možné otestovat ORCID API a volání API, jako je čtení a přidávání informací do souboru ORCID záznamu, budete také muset vytvořit test ORCID záznam v karanténě. To lze provést pomocí uživatelského rozhraní, podobně jako ve výrobě ORCID Registr. Jít do https://sandbox.orcid.org/register a zaregistrujte se pro účet.
Mailinátor e-mailové adresy
Sandbox server pouze odesílá e-maily Mailinator (@mailinator.com) e-mailové adresy, aby nedocházelo k nechtěnému spamování poštovních serverů. Pokud nepoužijete adresu @mailinator.com, neobdržíte ověřovací e-mail ani upozornění na resetování hesla a k provedení jakýchkoli ručních úprav záznamů v karanténě je vyžadováno ověření. Zjistěte více o jejich bezplatných veřejných schránkách zde. Pokud nechcete používat a Mailinator adresu, poznamenejte si prosím své uživatelské jméno a heslo (protože je budete používat k udělení autorizace vaší aplikaci při testování) a kontaktujte nás s žádostí o pomoc s ověřením.
Mailinator je e-mailová služba, která má veřejnou bezplatnou službu a soukromou placenou službu. Pro testování můžete využít zcela bezplatnou veřejnou službu. Zjistěte více o jejich úrovních zde.
Mailinator je služba třetí strany, kterou nespravuje ani nespravuje ORCID. Před použitím těchto adres doporučujeme zkontrolovat, jak tato služba funguje a její omezení.
Zaregistrujte své adresy URL přesměrování
Po přihlášení jsou uživatelé přesměrováni na adresu URL, kterou určíte jako součást registrace klienta.
Co jsou přesměrovací URI a jak se používají?
Identifikátory URI přesměrování používá naše autentizační služba OAuth jako bezpečnostní opatření. ORCID bude odesílat ověřující uživatele pouze na URI registrované klientem požadujícím ověření. Tím se zabrání tomu, aby se služby navzájem vydávaly.
Vezměte prosím na vědomí, že pouze HTTPS URI jsou přijímány do výroby. Můžete testovat pomocí HTTP URI, ale budete se muset zaregistrovat HTTPS URI když požádáte o pověření produkčního člena API.
Jak porovnáme URI přesměrování?
- Subdomény MUSÍTE zaregistrovat jako samostatné URI. https://anythingelse.thirdparty.com nebude fungovat.
- Doporučuje se úplná registrace všech URI přesměrování, včetně cesty, je to, co dělá většina třetích stran a je to nejbezpečnější možnost.
- Pokud je klientská aplikace registrována s uri přesměrování, které je pouze názvem hostitele, lze na tomto hostiteli použít libovolné uri přesměrování.. Pokud je tedy například zaregistrováno následující uri přesměrování: https://thirdparty.com pak budou fungovat všechny následující redirect_uris:
- https://thirdparty.com/oauth/callback1
- https://thirdparty.com/callback2
- https://thirdparty.com/anything-else-as-long-as-the-host-is-the-same
Nicméně https://anythingelse.thirdparty.com to nebude fungovat. Vy MUST registrovat subdomény jako samostatné URI.
Co se stane, když je můj URI přesměrování nesprávný?
Uživatelé odeslaní k ověření na ORCID s nesprávnými URI přesměrování se zobrazí chybová zpráva podobná této:
Správa URI přesměrování pro členy
Pokud používáte členské API a požadujete nějaké změny ve svých URI přesměrování, kontaktujte náš tým pro zapojení
Správa URI přesměrování pro veřejné klienty
Pokud používáte veřejné rozhraní API, budete muset podle níže uvedených kroků aktualizovat svůj seznam URI přesměrování, které jsou spojeny s vaším ORCID veřejné ID klienta API. Můžete to provést podle následujících kroků:
- Přihlaste se k vašemu ORCID záznam
- Klikněte na své jméno v pravém rohu
- Vyberte nástroje pro vývojáře
- Klikněte na tužku úprav vedle jména klienta
- Upravte existující URI přesměrování nebo klikněte na „Přidat další URI přesměrování“ a upravte existující
- Jakmile provedete změny, musíte kliknout na ikonu uložit
Pouze HTTPS URI jsou přijímány do výroby. Můžete testovat pomocí http URI, ale budete muset zaregistrovat HTTPS URI, když budete žádat o pověření produkčního člena API.
Implementujte OAuth
Níže vysvětlíme tři „příchutě“ OAuth podporované ORCID. Většina programovacích jazyků má k dispozici knihovny OAuth a/nebo OpenID, které usnadňují integraci.
Třínohý OAuth
Toto je standardní způsob autentizace uživatele ORCID iD a lze je použít k získání oprávnění k dlouhodobé aktualizaci vedle ověřeného ORCID id.
ORCID integrace používají „3 legged OAuth“ k autentizaci uživatelů a vyžádání povolení k interakci s jejich záznamy. Jakákoli integrace může požádat o oprávnění ke čtení pomocí veřejného rozhraní API. ORCID členové mohou pomocí Member API požádat o oprávnění k aktualizaci. Funguje to takto:
- Vytvoříte speciální odkaz
- Po kliknutí je uživatel odeslán na adresu ORCID
- ORCID požádá uživatele o přihlášení
- ORCID požádá uživatele o udělení povolení vaší aplikaci
- ORCID odešle uživatele zpět do vašeho systému s autorizačním kódem
- Váš systém vymění tento kód za přístupový token
Přizpůsobená autorizační adresa URL obsahuje informace o vašem klientovi a také „obory“, které specifikují konkrétní oblasti jejich záznamu, ke kterým chcete přistupovat. Po přihlášení uživatel autorizuje připojení k vašemu systému a je spolu s autorizačním kódem vrácen na vaši vstupní stránku. Tento kód se poté používá k získání jejich ORCID iD spolu s přístupovým tokenem platným pro požadované obory.
Autorizační odkaz vytvoříte zadáním ID klienta vašich pověření API a související vstupní stránky (URI přesměrování). Nastavením si zvolíte, o která oprávnění chcete požádat parametr oboru.
Níže uvedený příklad požaduje povolení ke čtení dat s omezeným přístupem na webu ORCID testovací sandbox server. Ve skutečném světě zobrazíte tento odkaz na své webové stránce nebo jej zahrnete do e-mailu, když uživatele požádáte o ověření a autorizaci. Pro účely testování jej však můžete jednoduše vložit do webového prohlížeče. Nahraďte data v závorkách informacemi o klientovi a nezapomeňte odstranit hranaté závorky!
https://sandbox.orcid.org/oauth/authorize?client_id=[Your client ID]&response_type=code&scope=/read-limited&redirect_uri=[Your landing page]
Jeden uživatel klikl na odkaz a přihlásil se na ORCID a udělená oprávnění jsou přesměrováni zpět na váš web, například takto:
https://[Your landing page]?code=Q70Y3A
Okamžitě byste měli vyměnit autorizační kód za ORCID iD a přístupový token. Platnost autorizačního kódu vyprší po použití. Žádost vypadá takto a nelze provést ve webovém prohlížeči, musí být provedeno vaším serverem.
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 poté vrátí ověřeného výzkumného pracovníka ORCID iD a přístupový token ve formátu 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"}
Ve výchozím nastavení mají přístupové tokeny dlouhou životnost a jejich platnost vyprší 20 let po vydání. Token lze použít několikrát, než vyprší jeho platnost.
Použijte přístupový token
Třínohé přístupové tokeny jsou propojeny s konkrétními ORCID záznam. Chcete-li je používat, musíte je zahrnout do požadavků API, které provedete za účelem čtení nebo aktualizace daného záznamu.
Implicitní OAuth
Toto je způsob autentizace uživatele zaměřený na prohlížeč ORCID iD pro použití aplikacemi založenými na prohlížeči, které nevyžadují oprávnění k aktualizaci.
Implicitní OAuth je odlehčená verze OAuth určená k použití v systémech, které nemají nebo nechtějí používat komponenty na straně serveru. Implicitní OAuth lze implementovat zcela v prohlížeči pouze pomocí JavaScriptu. Je k dispozici pro členy i nečleny a funguje takto:
- Vytvoříte speciální odkaz
- Po kliknutí je uživatel odeslán na adresu ORCID
- ORCID požádá uživatele, aby podepsal i
- ORCID požádá uživatele o udělení povolení vaší aplikaci
- ORCID pošle uživatele zpět do vašeho systému s jeho ORCID iD, přístupový token a id token.
- Váš systém extrahuje a ukládá ověřené ORCID iD z odpovědi.
Z bezpečnostních důvodů při použití implicitního OAuth ORCID nevrátí přístupové tokeny s oprávněním k aktualizaci.
Implicitní tok
Implicitní tok je navržen tak, aby klienti nemuseli k zahájení používat svůj tajný klíč ORCID přihlásit se. Zabezpečení je vynuceno omezením klientů na jejich registrované redirect_urls. Tato nižší úroveň zabezpečení to znamená ORCID podporuje pouze obory / authenticate a openid při použití implicitního toku. Tokeny jsou také krátkodobé s 10minutovou životností. Tento postup se doporučuje pro klientské aplikace, které nemají přístup k serveru typu back-end, například aplikace pro telefon nebo jednostránkové webové aplikace v jazyce JavaScript.
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
Podívejte se na naši technická dokumentace Pro více informací.
OpenID
OpenID je postaven na vrcholu OAuth a nabízí některé další funkce.
OpenID Connect 1.0 je jednoduchá vrstva identity nad protokolem OAuth 2.0. Doplňuje stávající toky ověřování OAuth a poskytuje klientům informace o uživatelích dobře popsaným způsobem.
OpenID connect je standardizovaný způsob implementace OAuth a sdílení informací o ověřených uživatelích. Nyní bude možné nakonfigurovat služby k použití ORCID „out of the box“ spolu s dalšími poskytovateli připojení OpenID vyhovujícími standardům. OpenID connect také poskytuje sdílené tokeny ID, což jsou podepsané objekty, které mohou prokázat, že uživatel byl ověřen ORCID v určitou dobu. Tyto tokeny mohou být použity prvky uživatelského rozhraní k udržování uživatelských relací.
ORCID podporuje základní profil shody poskytovatele OpenID, což je rozšíření toku autorizačního kódu OAuth. ORCID také podporuje tok implicitních tokenů pro obory „/ authenticate“ a „openid“.
To znamená, že ORCID:
- Vloží podepsané tokeny ID do odpovědí na tokeny pro autorizační kódy generované s rozsahem 'openid'
- Podporuje implicitní tok při použití 'token' nebo 'token id_token' response_types a 'openid' oboru.
- Podporuje parametry „prompt“, „nonce“ a „max_age“ pro žádosti o autorizaci, které zahrnují obor „openid“.
- Podporuje zjišťování Openid Connect a koncové body userinfo
- Podporuje pole 'amr' pro integrátory používající členské API pro žádosti o autorizaci, které zahrnují obor 'openid'. To lze použít k zjištění, zda se uživatel ověřil pomocí dvoufaktorového ověřování.
Zahájení ověřování OpenID Connect funguje stejně jako běžné ověřování OAuth. Vyžaduje se pouze to, aby klient požadoval obor „openid“. Pokud používáte obor / authenticate, nahraďte jej rozsahem openid, protože autentizace a openid mají stejnou autorizaci, měla by být použita pouze jedna nebo druhá. Pokud používáte jiné obory, přidejte openid do seznamu požadovaných oborů. Když je zahrnut rozsah openid, registr vrátí id_token uvnitř odpovědi tokenu a udělí klientovi oprávnění pro přístup k koncovému bodu s informacemi o uživateli pro daného uživatele.
Všimněte si, že rozsah 'openid' nezačíná znakem '/' jako druhý ORCID Rozsahy API. Je to proto, že obor „openid“ není definován ORCID, ale místo toho definováno specifikací OpenID Connect.
Podívejte se na naši technická dokumentace Pro více informací.
Sbírejte ověřené iD pomocí ORCIDWidget OAuth Java Script
ORCID poskytuje jednoduchý Widget Java Script které lze použít k získání ověřeného ORCID ID používající OAuth s OpenID Connect.
Vezměte prosím na vědomí, že widget používá implicitní OAuth, takže neshromažďuje žádná oprávnění k zápisu. To znamená, že není vhodný pro integrace členů, kteří chtějí aktualizovat záznamy. Přečtěte si prosím náš návod pro Přidávání a aktualizace dat na ORCID evidence.