4.1.1.5. MojeID plugin pro Drupal

Důležité

Níže uvedený návod ještě dále testujeme. Budeme rádi, pokud se s námi podělíte o svoje zkušenosti s ním.

4.1.1.5.1. Instalace rozšíření

  1. Pomocí PHP composeru nainstalujte OpenID Connect plugin. Řiďte se přitom verzí PHP a Drupalu. Pro instalaci s Drupalem 10 a PHP 8.1 spusťte v kořenovém adresáři Drupalu příkaz composer require 'drupal/openid_connect:^3.0@alpha'. Pro jiné verze zvolte odpovídající příkaz na stránce pluginu.

  2. V administraci Dupalu přejděte do sekce Nastavení a v kategorii Uživatelé zvolte OpenID Connect.

    Testovací instalace

    Klikněte na tlačítko + Generic OAuth 2.0 a nastavte jméno služby, doporučujeme MojeID.

    Produkční instalace

    Pokud chcete pro svoji službu použít přednastavený scope informací, které budou po uživateli požadovány, klikněte na tlačítko + MojeID a nastavte jméno služby, doporučujeme MojeID. Při konfiguraci pak postupujte dle sekce Přednastavená konfigurace. Přednastaveny jsou hodnoty openid profile email.

    Pokud chcete zvolit svůj vlastní scope, zvolte + Generic OAuth 2.0, nastavte jméno služby a během konfigurace postupujte dle sekce Pokročilá konfigurace.

  3. Jméno potvrďte stisknutím klávesy Enter nebo kliknutím do prázdného místa na stránce.

  4. Poznamenejte si řetězec Redirect URL, který naleznete vespodu stránky. Záložku s Drupalem nezavírejte.

4.1.1.5.2. Registrace služby do MojeID

Pokud registrujete testovací službu, přejděte na sekci Registrace testovací služby. Pokud registrujete službu jdoucí do produkce, přejděte na sekci Registrace produkční služby.

4.1.1.5.2.1. Registrace testovací služby

Více informací o testovací instanci MojeID lze najít v sekci Testovací instance MojeID.

  1. Jděte na úvodní stránku veřejné testovací instance MojeID a za pomoci přítomného návodu si založte testovací účet.

  2. Na nástěnce účtu klikněte na tlačítko Založení nové služby.

  3. Vyplňte položku Název klienta a do položky Seznam URI pro přesměrování vložte řetězec adresy Redirect URL z posledního kroku instalace rozšíření do PrestaShopu.

  4. V rozbalovací nabídce položky Přihlašovací metoda pro token endpoint vyberte Základní HTTP autentifikace a do políčka Požadované typy odpovědí vepište code. Následně klikněte na tlačítko Uložit.

  5. Poznamenejte si řetězec znaků v poli ID klienta u služby, kterou jste právě vytvořili. Dále u služby klikněte na tlačítko Aktualizovat a poznamenejte si hodnotu položky Tajemství klienta.

  6. Dále postupujte dle Konfigurace rozšíření.

4.1.1.5.2.2. Registrace produkční služby

  1. Založte si MojeID účet.

  2. Na nástěnce účtu klikněte na tlačítko Založení nové služby.

  3. Vyplňte položku Název klienta a do položky Seznam URI pro přesměrování vložte řetězec adresy Redirect URL z posledního kroku instalace rozšíření do PrestaShopu.

  4. V rozbalovací nabídce položky Přihlašovací metoda pro token endpoint vyberte Základní HTTP autentifikace a do políčka Požadované typy odpovědí vepište code. Následně klikněte na tlačítko Uložit.

  5. Poznamenejte si řetězec znaků v poli ID klienta u služby, kterou jste právě vytvořili. Dále u služby klikněte na tlačítko Aktualizovat a poznamenejte si hodnotu položky Tajemství klienta.

4.1.1.5.3. Konfigurace rozšíření

V otevřené záložce nastavení OpenID Connect vyplňte ID klienta, které jste získali během registrace služby, do pole Client ID a tajemství klienta do pole Client secret.

Pokud testujete funkčnost služby, postupujte podle návodu Testovací konfigurace. Pokud zavádíte již otestovanou službu, postupujte dle Přednastavená konfigurace, nebo dle Pokročilá konfigurace.

4.1.1.5.3.1. Testovací konfigurace

  1. Vyplňte adresy endpointů:

    • Authorization endpoint: https://mojeid.regtest.nic.cz/oidc/authorization/

    • Token endpoint: https://mojeid.regtest.nic.cz/oidc/token/

    • UserInfo endpoint: https://mojeid.regtest.nic.cz/oidc/userinfo/

  2. Vyplňte položku OpenID Scope v závislosti na tom, které informace po uživateli požadujete. Povinná je kategorie openid, pro přihlašování doporučujeme požadovat také email. Dalšími možnostmi jsou profile phone address, pro více informací navštivte dokumentaci OpenID Connect a Příloha č. 1 – Seznam údajů pro předání (OpenID Connect).

  3. Nastavení potvrďte tlačítkem Create OpenID Connect client.

4.1.1.5.3.2. Přednastavená konfigurace

Pokud jste vybrali možnost + MojeID a vyplnili jste položky Client ID a Client secret, není již potřeba žádná konfigurace, nastavení pouze potvrďte tlačítkem Create OpenID Connect client.

4.1.1.5.3.3. Pokročilá konfigurace

Pokud chcete nastavit jiný scope informací, které budou po uživateli požadovány, než je přednastaven v MojeID přihlášení, postupujte následovně:

  1. Vyplňte adresy endpointů:

    • Authorization endpoint: https://mojeid.cz/oidc/authorization/

    • Token endpoint: https://mojeid.cz/oidc/token/

    • UserInfo endpoint: https://mojeid.cz/oidc/userinfo/

  2. Vyplňte položku OpenID Scope v závislosti na tom, které informace po uživateli požadujete. Povinná je kategorie openid, pro přihlašování doporučujeme požadovat také email. Dalšími možnostmi jsou profile phone address, pro více informací navštivte dokumentaci OpenID Connect a Příloha č. 1 – Seznam údajů pro předání (OpenID Connect).

  3. Nastavení potvrďte tlačítkem Create OpenID Connect client.

4.1.1.5.4. Umístění tlačítka pro přihlášení

  1. V administraci Drupalu vstupte do kategorie Struktura > Umístění bloků. Zde si zvolte umístění tlačítka pro přihlášení.

  2. U příslušného umístění klikněte na tlačítko Umístěte blok, zvolte OpenID Connect client a klikněte na Umístit blok. Jako nadpis zvolte Přihlásit přes MojeID a nastavení uložte.

  3. Vespodu stránky klikněte na tlačítko Uložit bloky.