Projekt

Obecné

Profil

Dlouhodobý úkol #8602

uzavřený

Keycloak - Single Sign On + Identity management

Přidáno uživatelem Martin Rejman před asi 7 roky(ů). Aktualizováno před více než 4 roky(ů).

Stav:
Dokončen
Priorita:
Normální
Přiřazeno:
Kategorie:
-
Cílová verze:
-
% Hotovo:

0%

Smlouva:

Popis

Nasazení SSO řešení Keycloak s propojením na LDAP.

Cílový stav

Jednotné místo pro přihlašování uživatelů a editaci jejich základních profilových údajů.

Uložení uživatelů do privátního LDAP adresáře umožní interním důvěryhodným systémům využít standardní způsob ověřování přes LDAP.

Ověřování webových aplikací bude probíhat pomocí OpenID Connect a dalších technologií, které Keycloak poskytuje.

Dále bude SSO server poskytovat přidělování oprávnění na základě dostupných informací.


Dílčí úkoly 1 (0 otevřených1 uzavřený)

Úkol #8637: SSO design - naloděníDokončenMartin Rejman27.11.2017

Akce

Související úkoly 1 (0 otevřených1 uzavřený)

související s Technické oddělení - Dlouhodobý úkol #8651: Graph API - podpora a využitíDokončen

Akce

Aktualizováno uživatelem Martin Rejman před asi 7 roky(ů)

Nyní je připraveno následující:

  • instalace LDAP, nastavení základní struktury
  • implementace hash funkcí používaných na fóru (pro přenos uživatelů)
  • propojení Keycloak s LDAP - nastavení strukturních parametrů a oprávnění pro Keycloak k zakládání a modifikaci uživatelů v LDAP.
  • možnost registrace uživatelů pomocí účtů na sociálních sítích (Facebook, další jsou dostupné ... )

Registrace na SSO by rovněž mohla být prvním krokem v procesu kontaktu se stranou ... vytvoří se účet a zjistí se potřebné údaje o novém uživateli (PSČ kvůli územní příslušnosti).

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

V jakem casovem horizontu lze cekat ze to bude fungovat?

Aktualizováno uživatelem Martin Rejman před asi 7 roky(ů)

Systém již běží, a to na adresa auth.pirati.cz.

Zatím se jedná o SSO a napojený LDAP, ale bez importovaných údajů z dalších systémů. Tj. je možno si vytvořit účet a testovat, co je potřeba. Stejně tak je možnost přidat aplikace, které se mají proti SSO autorizovat - buď pomocí SAML 2.0 , nebo OpenID Connect.

SSO řešením je Keycloak, veškerá dokumentace je dostupná online na webu.

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Me jde take o API, ktere mi da profil s danym id, nebo seznam uzivatelu ve skupine s danym id, nebo seznam skupin. Ne jen o autentikaci. A pak taky potrebuju autentikaci davajici JWT token s nejakymi vlastnostmi ...

Aktualizováno uživatelem Martin Rejman před asi 7 roky(ů)

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Ok, napsal jsem to sam. Viz: https://github.com/vencax/open-auth a zborit/proniknout to je mozne zkouset na https://radiant-chamber-14537.herokuapp.com . Umi to:

  • API a neni to nezabezpeceny jako graph.pirati.cz.
  • registraci, verifikaci + zapomenute heslo - vse plne modifikovatelne
  • login davajici JWT token s takovym obsahem, co je potreba
  • users v DB = snadna migrace stavajicich
  • jestli to bude nutne pridam OIDC (easy s https://github.com/panva/node-oidc-provider)

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Integrovano na https://tabor.pirati.cz/votetest/ ... feedback welcomed.

Aktualizováno uživatelem Jitka Novotná před asi 7 roky(ů)

Vaclav Klecanda napsal:

Integrovano na https://tabor.pirati.cz/votetest/ ... feedback welcomed.

Zkusila jsem se zaregistrovat. Mail přišel po jednotkách minut a obsahoval link na html s obsahem:

update "users" set "id" = $1, "username" = $2, "name" = $3, "email" = $4, "password" = $5, "status" = $6, "created" = $7 - duplicate key value violates unique constraint "users_pkey"

Heslo nefungovalo, požádala jsem o poslání nového a dostala mail v kterém byl neplatný odkaz

Hi Jitka Novotna,

On pokuspirati.cz's page we have received request for password reset. To change your password, please follow this link:

/changepwd?sptoken=eyJhbGciOiJIUzUxMiIsInR5cCI6IkpXVCJ9.eyJhY3Rpb24iOiJyZXNldCIsImVtYWlsIjoiaml0a2FAdWN3LmN6IiwiaWF0IjoxNTEyODQxODAzLCJleHAiOjE1MTMwMTQ2MDN9.Z97mMoPDTbsXNcoygTtLnLD0n-7PZlXIiH6oBmBu9rUrSfmLy9ZW64hY6EYabW1EB7nmAE_3vMwsFcg_q2pLtA

Aktualizováno uživatelem Jitka Novotná před asi 7 roky(ů)

Testovací databáze:
bylo by fajn vyrobit testovací sadu uživatelů s oprávněními pododmnímy těm co používáme a zveřejněnými crendentials.

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Diky! Prosim kdyztak priste issue (https://github.com/vencax/open-auth/issues).
Jinak ted uz to jde (nesela ti potvrdit registrace). Takze heslo fungovalo, ale user by disabled. Tohle asi jeste budu muset rozlisit v hlaskach po neuspesnem loginu.

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Jinak change passwd process fungovat nebude, protoze webclient je jen jako html/js soubor na webu a nikoli na serveru co dela regex routing ...

Aktualizováno uživatelem Martin Rejman před asi 7 roky(ů)

Prosím, aby se toto vlákno využívalo pro diskusi o Keycloak. Pokud chce někdo diskutovat o řešení, které vyvíjí někdo paralelné, založte si k tomu jiný úkol.

Aktualizováno uživatelem Václav Klecanda před asi 7 roky(ů)

Pokracovani na https://redmine.pirati.cz/issues/8826. Omlovam se, jestli sem vytrolil vlakno, tedy

Aktualizováno uživatelem Martin Rejman před téměř 7 roky(ů)

  • Přiřazeno nastaven na Martin Rejman

Probíhají přípravy na finální nasazení a přechod na registraci/přihlašování pomocí SSO serveru.

Předpokládá se souběh s PirateID, než budou upraveny pro OpenID Connect přihlašování i další systémy ( Redmine, Wiki, ... )

Aktualizováno uživatelem Martin Rejman před více než 6 roky(ů)

  • Stav změněn z V řešení (diskutuje se) na Dokončen

Integrace Forum - LDAP - SSO je dokončena, synchronizují se hesla a role dle fóra.

Aktualizováno uživatelem Jan Hamal Dvořák před více než 4 roky(ů)

  • Projekt změněn z 124 na Technické oddělení

Také k dispozici: Atom PDF