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 „po vybalení z krabice“ spolu s dalšími poskytovateli připojení OpenID vyhovujícími standardům. OpenID connect také poskytuje sdílení ID tokeny, což jsou podepsané objekty, které mohou prokázat ověření uživatele pomocí 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žení podepsáno id tokeny v rámci tokenových odpovědí 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 obor 'openid' nezačíná znakem '/' jako ten 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í.