Some checks are pending
TheCr3w Docker Build and Deploy Pipeline / build-and-package (push) Waiting to run
3.3 KiB
3.3 KiB
THECR3W-DEV — INTEGRACJA FORGEJO Z KEYCLOAK (OIDC)
Instancja Keycloak: https://login.thecr3wnet.com (Realm: master)
Instancja Forgejo: https://git.thecr3wnet.com
1. Krok 1: Utworzenie Klienta OIDC w Keycloak
Zaloguj się do panelu administracyjnego Keycloak (https://login.thecr3wnet.com/admin/master/console/).
Upewnij się, że jesteś w wymaganym realm: master.
- Przejdź do: Clients -> Create client.
- General Settings:
- Client type:
OpenID Connect - Client ID:
forgejo - Name:
TheCr3w Forgejo Git - Kliknij Next.
- Client type:
- Capability config:
- Client authentication:
ON(Confidential client) - Authorization:
OFF - Authentication flow:
- Zaznacz:
Standard flow(Authorization Code Flow) - Odznacz:
Direct access grants,Implicit flow
- Zaznacz:
- Kliknij Next.
- Client authentication:
- Login settings:
- Root URL:
https://git.thecr3wnet.com - Home URL:
https://git.thecr3wnet.com/ - Valid redirect URIs:
https://git.thecr3wnet.com/user/oauth2/Keycloak/callbackhttps://git.thecr3wnet.com/user/oauth2/keycloak/callback
- Valid post logout redirect URIs:
https://git.thecr3wnet.com/
- Web origins:
https://git.thecr3wnet.com
- Kliknij Save.
- Root URL:
- Pobranie Client Secret:
- Przejdź do zakładki Credentials.
- Skopiuj wartość pola Client Secret (będzie potrzebna w Forgejo).
2. Krok 2: Konfiguracja Źródła Uwierzytelniania w Forgejo
Możesz to skonfigurować na dwa sposoby:
Sposób A: Jednym poleceniem w terminalu SSH na serwerze (Rekomendowane)
Zastąp <TWÓJ_CLIENT_SECRET> wartością skopiowaną z Keycloak:
docker exec -u 1000 forgejo forgejo admin auth add-oauth \
--name Keycloak \
--provider openidConnect \
--key forgejo \
--secret "<TWÓJ_CLIENT_SECRET>" \
--auto-discovery-url https://login.thecr3wnet.com/realms/master/.well-known/openid-configuration
Sposób B: Przez interfejs graficzny Forgejo
- Zaloguj się na konto administratora w
https://git.thecr3wnet.com. - Kliknij ikonę profilu w prawym górnym rogu -> Site Administration (Zarządzanie witryną).
- Przejdź do zakładki Authentication Sources (Źródła uwierzytelniania) -> kliknij Add Authentication Source.
- Wypełnij formularz:
- Authentication Type:
OAuth2 - Authentication Name:
Keycloak - OAuth2 Provider:
OpenID Connect - Client ID (Key):
forgejo - Client Secret: Wklej skopiowany
Client Secretz Keycloak - OpenID Connect Auto Discovery URL:
https://login.thecr3wnet.com/realms/master/.well-known/openid-configuration - Zaznacz opcje:
Enable Auto-Registration(Automatyczne zakładanie kont przy pierwszym logowaniu)Activate Users(Aktywuj użytkowników automatycznie)
- Authentication Type:
- Kliknij Add Authentication Source.
3. Krok 3: Logowanie i Weryfikacja
- Otwórz w oknie incognito:
https://git.thecr3wnet.com/user/login. - Na ekranie logowania pojawi się niebieski przycisk: Zaloguj przez Keycloak.
- Po kliknięciu zostaniesz przekierowany do
https://login.thecr3wnet.com(realmmaster). - Po podaniu loginu i hasła nastąpi automatyczny powrót do Forgejo z zalogowanym użytkownikiem.