Nastavení přihlášení přes Google (OAuth)
Navazuje na návod Založení projektu v Google Cloud. Tady v projektu zapnete přihlašování účtem Google a vytvoříte takzvaného OAuth klienta: dvojici údajů (Client ID a Client secret), díky které web pozná, že přihlášení opravdu potvrdil Google. Kdo se smí do administrace přihlásit, určuje web sám, Google jen ověří, o jaký účet jde.
Pokud jste mi v předchozím návodu dali přístup, udělám tento krok za vás a nic dalšího dělat nemusíte. Návod je pro případ, že vás o to požádám. Zabere asi 10 minut a nic se neplatí.
Než začnete
Budete potřebovat:
- počítač a stejný účet Google, kterým jste projekt založili,
- hotový návod Založení projektu v Google Cloud.
Na konci vám Google ukáže Client secret. Je to tajný údaj podobný heslu: nikam ho neukládejte a nikomu ho neposílejte e-mailem ani zprávou. Předáte mi ho formulářem v posledním kroku, který ho hned zašifruje.
Otevřete Google Auth Platform
- Otevřete console.cloud.google.com/auth/overview (otevře se v nové kartě).
- Vlevo nahoře zkontrolujte, že je vybraný váš projekt. Pokud ne, vyberte ho přes výběr projektu.
- Na stránce s textem, že Google Auth Platform ještě není nastavená (not configured yet), klikněte na Get started (začít).
Pokud místo toho vidíte přehled s menu Branding, Audience a Clients, přihlašování už nastavené je. Přeskočte na krok Vytvořte klienta.
Vyplňte údaje o aplikaci
Průvodce má čtyři části, každou potvrdíte tlačítkem Next (další):
- App Information (údaje o aplikaci):
- App name: název, který Google ukáže při přihlášení, například „Vaše firma – administrace webu“.
- User support email: vyberte svůj e-mail.
- Audience (kdo se může přihlásit): zvolte External. Neznamená to, že se do administrace dostane kdokoli, jen to, že se půjde přihlásit i účtem mimo vaši firmu (například soukromým Gmailem). Seznam povolených účtů hlídá web.
- Contact Information (kontakt): zadejte svůj e-mail. Google na něj posílá upozornění k projektu.
- Finish (dokončení): zaškrtněte souhlas s pravidly Googlu (Google API Services: User Data Policy) a klikněte na Continue (pokračovat) a pak na Create (vytvořit).
Aplikace zůstane v režimu Testing (testování). To je v pořádku: pro samotné přihlášení stačí a nic dalšího se v něm nastavovat nemusí.
Vytvořte klienta
- V levém menu Google Auth Platform klikněte na Clients (klienti).
- Klikněte na Create client (vytvořit klienta).
- Application type (typ aplikace): vyberte Web application.
- Name (název): například „Administrace webu“. Vidíte ho jen vy.
- Authorized JavaScript origins nechte prázdné.
- V části Authorized redirect URIs klikněte na Add URI (přidat adresu) a vložte přesně tuto adresu:
https://vasefirma.cz/api/admin/oauth - Klikněte na Create (vytvořit).
Adresa musí sedět přesně, včetně https:// a bez lomítka na konci. Jinak Google přihlášení odmítne
s chybou redirect_uri_mismatch.
Pošlete mi údaje klienta
Google teď ukáže okno OAuth client created (klient vytvořen) s údaji Client ID a Client secret.
Okno zatím nezavírejte. Client secret Google ukáže celý jen teď, později z něj uvidíte jen konec.
- Klikněte na tlačítko Pošlete mi údaje klienta níže. Formulář se otevře přímo tady.
- Zkopírujte z okna Google Client ID (ikona kopírování vedle něj) a vložte ho do formuláře.
- Stejně zkopírujte a vložte Client secret.
- Formulář odešlete.
Formulář secret hned na serveru zašifruje. Rozšifrovat ho umím jen já, nikde jinde čitelně neleží. Pak okno v Google zavřete (OK). Údaje si nikam neukládejte, nebudete je potřebovat.
Kdybyste okno zavřeli dřív, nic se neděje: u klienta v Clients klikněte na Add secret (přidat secret), Google vytvoří nový a ten mi pošlete.
Hotovo
Hotovo! Přihlašování nastavím a dám vám vědět, až se budete moct do administrace přihlásit. Přihlásíte se pak tlačítkem Přihlásit se přes Google na stránce administrace.
Kdo se do administrace smí přihlásit, nastavuji na webu podle e-mailů, které mi dáte. Google účty navíc neřeší.
Hotovo, děkuji!
Všechny kroky máte za sebou. Pokud jste mi ještě nedali vědět, stačí krátká zpráva.
Zdroje
Sekce “Zdroje”- Nápověda Google Cloud: Manage OAuth Clients
- Nápověda Google Cloud: Manage App Audience
- Nápověda Google Cloud: Manage OAuth App Branding