Přeskočit obsah
For the complete DHIS2 documentation index, see llms.txt.

Configure OpenID Connect with Okta

OpenId Connect (OIDC) je vrstva identity a ověřování postavená na autorizačním rámci OAuth2. Tato příručka vysvětluje, jak nastavit OIDC s Okta jako platformou identity pro DHIS 2.

OIDC is useful for Single Sign-On across multiple applications and systems, where a user can sign in once and then access many DHIS 2 instances and other type of systems. For sysadmins, OIDC allows for maintaining usernames, passwords and user deactivation in a single place.

OIDC je podporováno DHIS 2 a lze jej nakonfigurovat v konfiguračním souboru dhis.conf. Vyhrazená konfigurační syntaxe je k dispozici pro konkrétní poskytovatele identit včetně Google, Azure a WSO2. V této příručce bude ke konfiguraci Okta použit generic provider.

Okta je oblíbená platforma pro správu identit a přístupu, která podporuje protokol OIDC. Tento tutoriál vysvětlí, jak nastavit OIDC s Okta pro DHIS 2. Viz DHIS 2 OIDC instalační příručka, kde najdete podrobnosti.

This guide assumes a DHIS 2 instance running at http://localhost:8080. The guide refers to a provider key which in this case is okta.

Sign up for an Okta developer account

V tomto kroku se zaregistrujeme do bezplatné zkušební verze Okta pro vývojáře.

  • Přejděte na registraci zkušební verze Okta: https://developer.okta.com/signup/
  • Zadejte svůj pracovní e-mail, jméno, příjmení a zemi. Všimněte si, že zadaný e-mail se stane uživatelským jménem služby Okta.
  • Po přihlášení přejděte na Adresář > Lidé a všimněte si, že pro jméno a e-mail, které jste použili při registraci, existuje osoba (uživatel). E-mail bude později použit k mapování na uživatele DHIS 2. Později můžete vytvořit další uživatele.

Okta lidé

Create Okta application integration

V tomto kroku vytvoříme integraci webové aplikace Okta.

Integrace aplikace Okta

  • Přejděte na Aplikace > Aplikace.
  • Klikněte na Vytvořit integraci aplikace.
  • For Sign-in Method, select OIDC - OpenID Connect.
  • For Application type, select Web application, and click Next.
  • Do pole Název integrace aplikace zadejte popisný název, jako je název vaší instance DHIS 2, například DHIS 2 HMIS.
  • For Grant type > Client acting on behalf of itself, enable Client Credentials.
  • For Client acting on behalf of a user, do nothing and make sure Authorization Code is enabled and other options are disabled.
  • Pro URI přesměrování přihlášení zadejte http://localhost:8080/oauth2/code/okta. Vzor je {dhis2-base-URL}/oauth2/code/{provider-key}. Základní URL DHIS 2 je http://localhost:8080 a klíč poskytovatele je okta.
  • Ponechte pole Důvěryhodný původ prázdné.
  • For Assignments, select Allow everyone in your organization to access.
  • Klikněte Uložit.
  • Na záložce Přiřazení v přehledu aplikací se ujistěte, že jsou přiřazeni relevantní lidé.

Take note of Okta settings

V tomto kroku si vezmeme na vědomí příslušná nastavení a přihlašovací údaje Okta.

Přihlašovací údaje aplikace Okta

  • Na obrazovce s přehledem aplikace přejděte na kartu Obecné.
  • Poznamenejte si následující nastavení kliknutím na tlačítka Kopírovat do schránky. Tato nastavení budou později použita v konfiguračním souboru DHIS 2. Nastavení by měla být považována za tajná a uložena bezpečným způsobem.
    • Client ID
    • Client secret
    • Okta doména
  • Odhlaste se z portálu Okta, abyste se mohli později znovu přihlásit.

Create DHIS 2 user

Abyste se mohli přihlásit do DHIS 2, musí být pro každou osobu Okta vytvořen uživatel DHIS 2. Uživatel DHIS 2 je mapován na osobu Okta prostřednictvím pole Hodnota mapování OIDC uživatele DHIS 2. Uživateli DHIS 2 lze jako obvykle přidělit uživatelské role, uživatelské skupiny a organizační jednotky.

DHIS 2 uživatel

  • Přihlaste se do DHIS 2 pomocí běžného místního uživatele s oprávněním vytvářet uživatele.
  • Přejděte na Aplikace > Uživatelé > Uživatelé.
  • Vytvořte nového uživatele DHIS 2 nebo aktualizujte stávajícího uživatele.
  • Uživatelské jméno může být libovolné uživatelské jméno. Pro nové uživatele DHIS 2 se doporučuje (ale není to nutné) používat uživatelské jméno Okta.
  • Povolit Pouze externí ověřování (OpenID nebo LDAP).
  • Zadejte Příjmení a Jméno uživatele.
  • Pro hodnotu mapování OIDC zadejte uživatelské jméno (e-mail) Okta. Tato hodnota se používá k mapování uživatele DHIS 2 na uživatele Okta.
  • Vyberte příslušné uživatelské role a organizační jednotky.
  • Klikněte Uložit.

Configure DHIS 2

V tomto kroku nakonfigurujeme instanci DHIS 2 pro autentizaci s Okta prostřednictvím konfiguračního souboru dhis.conf DHIS 2.

  • Vyhledejte dříve uvedená nastavení Okta. Všimněte si, že okta v klíčích vlastností odkazuje na klíč poskytovatele zadaný v integraci aplikace Okta.
  • Vyhledejte konfigurační soubor dhis.conf pro instanci DHIS 2.
  • Zadejte vlastnosti popsané níže. Nahraďte následující tři proměnné (uzavřené v závorkách) skutečnými hodnotami pro vaše prostředí.
    • ID klienta / {client_id}. Příklad: 0kh6yTgRg45191j97H6y.
    • Tajný klíč klienta / {client_secret}. Příklad: xJh6ybgh5yajTku7qE35F5h8hj8km7yG-Hj61j49.
    • Klientská doména / {client_domain}. Příklad: dev-123.okta.com.
# Povolení OIDC
oidc.oauth2.login.enabled = on

# Okta OIDC nastavení
oidc.provider.okta.client_id = {client_id}
oidc.provider.okta.client_secret = {client_secret}
oidc.provider.okta.mapping_claim = email
oidc.provider.okta.display_alias = Přihlášení přes Okta
oidc.provider.okta.enable_logout = on
oidc.provider.okta.scopes = email
oidc.provider.okta.authorization_uri = https://{client_domain}/oauth2/v1/authorize
oidc.provider.okta.token_uri = https://{client_domain}/oauth2/v1/token
oidc.provider.okta.user_info_uri = https://{client_domain}/oauth2/v1/userinfo
oidc.provider.okta.jwk_uri = https://{client_domain}/oauth2/v1/keys
oidc.provider.okta.end_session_endpoint = https://{client_domain}/oauth2/v1/logout
  • Pamatujte, že při odhlášení z DHIS 2 výše uvedená konfigurace odhlásí uživatele také z Okta. Abyste zajistili, že uživatel bude odhlášen pouze z DHIS 2, použijte místo toho vlastnost a hodnotu popsanou níže.
oidc.provider.okta.end_session_endpoint = /dhis-web-commons-security/logout.action
  • Restartujte instanci DHIS 2, aby se změny projevily.
  • Tip: Tyto hodnoty lze získat z Okta s cestou URL /.well-known/openid-configuration, např. https://dev-123-admin.okta.com/.well-known/openid-configuration.

Sign in to DHIS 2 with Okta

V tomto kroku otestujeme nastavení a přihlásíme se do DHIS 2 pomocí Okta.

Přihlášení Okta

  • Navigate to the DHIS 2 login page. A button labelled Sign in with Okta should appear on the login page.
  • Klikněte na tlačítko Přihlásit se pomocí Okta. Měli byste být přesměrováni na přihlašovací stránku Okta. Všimněte si, že pokud jste stále přihlášeni k Okta, budete automaticky přihlášeni k DHIS 2.
  • Zadejte uživatelské jméno a heslo Okta pro dříve vytvořený účet a klikněte na Přihlásit se. Měli byste být přesměrováni do instance DHIS 2 a být automaticky přihlášeni jako uživatel DHIS 2 vytvořený dříve.
  • Tip: For IdP-initiated SSO, that is, logging in to Okta and navigating to the DHIS 2 landing page without going through the DHIS 2 login page, you can use the following web URL for DHIS 2: http://localhost:8080/oauth2/authorization/okta.

Shrnutí

V tomto okamžiku byste měli být automaticky přihlášeni do DHIS 2 přes Okta, aniž byste zadali jakékoli přihlašovací údaje DHIS 2.

Tato příručka vysvětluje, jak nastavit aplikaci a uživatele Okta, nastavit uživatele DHIS 2 namapovaného na uživatele Okta, jak nakonfigurovat DHIS 2 pro Okta OIDC a jak se přihlásit pomocí Okta. Můžete opakovat kroky uživatele a konfigurace DHIS 2 pro další instance DHIS 2, abyste je zahrnuli do nastavení jednotného přihlášení.