mirror of
https://github.com/outbackdingo/firezone.git
synced 2026-01-27 10:18:54 +00:00
Add keycloak dev (#1023)
* Add keycloak dev * Fix test using string keys
This commit is contained in:
@@ -17,7 +17,7 @@ defmodule FzHttp.Configurations do
|
||||
def auto_create_users?(field, provider) do
|
||||
get!(field)
|
||||
|> Map.get(provider)
|
||||
|> Map.get(:auto_create_users)
|
||||
|> Map.get("auto_create_users")
|
||||
end
|
||||
|
||||
def change_configuration(%Configuration{} = config \\ get_configuration!()) do
|
||||
|
||||
@@ -68,7 +68,7 @@ defmodule FzHttpWeb.AuthController do
|
||||
{:ok, _state} <- verify_state(conn, state),
|
||||
{:ok, tokens} <- openid_connect.fetch_tokens(provider, params),
|
||||
{:ok, claims} <- openid_connect.verify(provider, tokens["id_token"]) do
|
||||
case UserFromAuth.find_or_create(provider, claims) do
|
||||
case UserFromAuth.find_or_create(provider_key, claims) do
|
||||
{:ok, user} ->
|
||||
# only first-time connect will include refresh token
|
||||
with %{"refresh_token" => refresh_token} <- tokens do
|
||||
|
||||
@@ -26,7 +26,7 @@ defmodule FzHttpWeb.UserFromAuthTest do
|
||||
end
|
||||
|
||||
describe "find_or_create/2 via OIDC with auto create enabled" do
|
||||
@tag config: %{"oidc_test" => %{auto_create_users: true}}
|
||||
@tag config: %{"oidc_test" => %{"auto_create_users" => true}}
|
||||
test "sign in creates user", %{config: config, email: email} do
|
||||
restore_env(:openid_connect_providers, config, &on_exit/1)
|
||||
|
||||
@@ -38,7 +38,7 @@ defmodule FzHttpWeb.UserFromAuthTest do
|
||||
end
|
||||
|
||||
describe "find_or_create/2 via OIDC with auto create disabled" do
|
||||
@tag config: %{"oidc_test" => %{auto_create_users: false}}
|
||||
@tag config: %{"oidc_test" => %{"auto_create_users" => false}}
|
||||
test "sign in returns error", %{email: email, config: config} do
|
||||
restore_env(:openid_connect_providers, config, &on_exit/1)
|
||||
|
||||
@@ -50,7 +50,7 @@ defmodule FzHttpWeb.UserFromAuthTest do
|
||||
end
|
||||
|
||||
describe "find_or_create/2 via SAML with auto create enabled" do
|
||||
@tag config: %{"saml_test" => %{auto_create_users: true}}
|
||||
@tag config: %{"saml_test" => %{"auto_create_users" => true}}
|
||||
test "sign in creates user", %{config: config, email: email} do
|
||||
restore_env(:saml_identity_providers, config, &on_exit/1)
|
||||
|
||||
@@ -62,7 +62,7 @@ defmodule FzHttpWeb.UserFromAuthTest do
|
||||
end
|
||||
|
||||
describe "find_or_create/2 via SAML with auto create disabled" do
|
||||
@tag config: %{"saml_test" => %{auto_create_users: false}}
|
||||
@tag config: %{"saml_test" => %{"auto_create_users" => false}}
|
||||
test "sign in returns error", %{email: email, config: config} do
|
||||
restore_env(:saml_identity_providers, config, &on_exit/1)
|
||||
|
||||
|
||||
@@ -1,6 +1,17 @@
|
||||
version: '3.7'
|
||||
|
||||
services:
|
||||
keycloak:
|
||||
image: quay.io/keycloak/keycloak:19.0.3
|
||||
environment:
|
||||
- KEYCLOAK_ADMIN=admin
|
||||
- KEYCLOAK_ADMIN_PASSWORD=admin
|
||||
command: start-dev
|
||||
ports:
|
||||
- 8080:8080
|
||||
networks:
|
||||
- app
|
||||
|
||||
caddy:
|
||||
image: caddy:2
|
||||
volumes:
|
||||
@@ -45,12 +56,13 @@ services:
|
||||
- net.ipv6.conf.all.forwarding=1
|
||||
depends_on:
|
||||
- postgres
|
||||
- keycloak
|
||||
networks:
|
||||
- app
|
||||
- isolation
|
||||
|
||||
postgres:
|
||||
image: postgres:15rc1
|
||||
image: postgres:15rc2
|
||||
volumes:
|
||||
- postgres-data:/var/lib/postgresql/data
|
||||
environment:
|
||||
|
||||
2215
priv/keycloak-realm.json
Normal file
2215
priv/keycloak-realm.json
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user