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í¶
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.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 hodnotyopenid 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.
Jméno potvrďte stisknutím klávesy Enter nebo kliknutím do prázdného místa na stránce.
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.
Jděte na úvodní stránku veřejné testovací instance MojeID a za pomoci přítomného návodu si založte testovací účet.
Na nástěnce účtu klikněte na tlačítko Založení nové služby.
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.
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štecode
. Následně klikněte na tlačítko Uložit.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.
Dále postupujte dle Konfigurace rozšíření.
4.1.1.5.2.2. Registrace produkční služby¶
Založte si MojeID účet.
Na nástěnce účtu klikněte na tlačítko Založení nové služby.
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.
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štecode
. Následně klikněte na tlačítko Uložit.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¶
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/
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 jsouprofile phone address
, pro více informací navštivte dokumentaci OpenID Connect a Příloha č. 1 – Seznam údajů pro předání (OpenID Connect).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ě:
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/
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 jsouprofile phone address
, pro více informací navštivte dokumentaci OpenID Connect a Příloha č. 1 – Seznam údajů pro předání (OpenID Connect).Nastavení potvrďte tlačítkem Create OpenID Connect client.
4.1.1.5.4. Umístění tlačítka pro přihlášení¶
V administraci Drupalu vstupte do kategorie Struktura > Umístění bloků. Zde si zvolte umístění tlačítka pro přihlášení.
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 zvoltePřihlásit přes MojeID
a nastavení uložte.Vespodu stránky klikněte na tlačítko Uložit bloky.