From e167365548529fd1f5bdea7a269339966aa88975 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Mon, 24 Apr 2023 20:40:31 +0300 Subject: [PATCH 01/27] chore: test server for direct resource access --- cmd/admin/admin.go | 4 +-- cmd/start/start.go | 55 ++++++++++++++++++++++++++++++----- cmd/start/start_from_init.go | 4 +-- cmd/start/start_from_setup.go | 4 +-- cmd/zitadel.go | 37 ++++++++++++++++++++--- cmd/zitadel_test.go | 13 +++++++++ main.go | 2 +- 7 files changed, 100 insertions(+), 19 deletions(-) create mode 100644 cmd/zitadel_test.go diff --git a/cmd/admin/admin.go b/cmd/admin/admin.go index 785ed1abf..04741a4a8 100644 --- a/cmd/admin/admin.go +++ b/cmd/admin/admin.go @@ -26,8 +26,8 @@ func New() *cobra.Command { adminCMD.AddCommand( initialise.New(), setup.New(), - start.New(), - start.NewStartFromInit(), + start.New(nil), + start.NewStartFromInit(nil), key.New(), ) diff --git a/cmd/start/start.go b/cmd/start/start.go index c3ba766fe..361619536 100644 --- a/cmd/start/start.go +++ b/cmd/start/start.go @@ -45,6 +45,7 @@ import ( "github.com/zitadel/zitadel/internal/authz" authz_repo "github.com/zitadel/zitadel/internal/authz/repository" "github.com/zitadel/zitadel/internal/command" + "github.com/zitadel/zitadel/internal/crypto" cryptoDB "github.com/zitadel/zitadel/internal/crypto/database" "github.com/zitadel/zitadel/internal/database" "github.com/zitadel/zitadel/internal/eventstore" @@ -60,7 +61,7 @@ import ( "github.com/zitadel/zitadel/openapi" ) -func New() *cobra.Command { +func New(server chan<- *Server) *cobra.Command { start := &cobra.Command{ Use: "start", Short: "starts ZITADEL instance", @@ -78,7 +79,7 @@ Requirements: return err } - return startZitadel(config, masterKey) + return startZitadel(config, masterKey, server) }, } @@ -87,7 +88,24 @@ Requirements: return start } -func startZitadel(config *Config, masterKey string) error { +type Server struct { + background context.Context + Config *Config + DB *database.DB + KeyStorage crypto.KeyStorage + Keys *encryptionKeys + Eventstore *eventstore.Eventstore + Queries *query.Queries + AuthzRepo authz_repo.Repository + Storage static.Storage + Commands *command.Commands + LogStore *logstore.Service + Router *mux.Router + TLSConfig *tls.Config + Shutdown chan<- os.Signal +} + +func startZitadel(config *Config, masterKey string, server chan<- *Server) error { ctx := context.Background() dbClient, err := database.Connect(config.Database, false) @@ -179,7 +197,31 @@ func startZitadel(config *Config, masterKey string) error { if err != nil { return err } - return listen(ctx, router, config.Port, tlsConfig) + + shutdown := make(chan os.Signal, 1) + signal.Notify(shutdown, os.Interrupt, syscall.SIGTERM) + + if server != nil { + server <- &Server{ + background: ctx, + Config: config, + DB: dbClient, + KeyStorage: keyStorage, + Keys: keys, + Eventstore: eventstoreClient, + Queries: queries, + AuthzRepo: authZRepo, + Storage: storage, + Commands: commands, + LogStore: actionsLogstoreSvc, + Router: router, + TLSConfig: tlsConfig, + Shutdown: shutdown, + } + close(server) + } + + return listen(ctx, router, config.Port, tlsConfig, shutdown) } func startAPIs( @@ -300,7 +342,7 @@ func startAPIs( return nil } -func listen(ctx context.Context, router *mux.Router, port uint16, tlsConfig *tls.Config) error { +func listen(ctx context.Context, router *mux.Router, port uint16, tlsConfig *tls.Config, shutdown <-chan os.Signal) error { http2Server := &http2.Server{} http1Server := &http.Server{Handler: h2c.NewHandler(router, http2Server), TLSConfig: tlsConfig} lis, err := net.Listen("tcp", fmt.Sprintf(":%d", port)) @@ -320,9 +362,6 @@ func listen(ctx context.Context, router *mux.Router, port uint16, tlsConfig *tls } }() - shutdown := make(chan os.Signal, 1) - signal.Notify(shutdown, os.Interrupt, syscall.SIGTERM) - select { case err := <-errCh: return fmt.Errorf("error starting server: %w", err) diff --git a/cmd/start/start_from_init.go b/cmd/start/start_from_init.go index 89c74d559..940efb4e8 100644 --- a/cmd/start/start_from_init.go +++ b/cmd/start/start_from_init.go @@ -11,7 +11,7 @@ import ( "github.com/zitadel/zitadel/cmd/tls" ) -func NewStartFromInit() *cobra.Command { +func NewStartFromInit(server chan<- *Server) *cobra.Command { cmd := &cobra.Command{ Use: "start-from-init", Short: "cold starts zitadel", @@ -37,7 +37,7 @@ Requirements: startConfig := MustNewConfig(viper.GetViper()) - err = startZitadel(startConfig, masterKey) + err = startZitadel(startConfig, masterKey, server) logging.OnError(err).Fatal("unable to start zitadel") }, } diff --git a/cmd/start/start_from_setup.go b/cmd/start/start_from_setup.go index 75c2347c2..0be315fae 100644 --- a/cmd/start/start_from_setup.go +++ b/cmd/start/start_from_setup.go @@ -10,7 +10,7 @@ import ( "github.com/zitadel/zitadel/cmd/tls" ) -func NewStartFromSetup() *cobra.Command { +func NewStartFromSetup(server chan<- *Server) *cobra.Command { cmd := &cobra.Command{ Use: "start-from-setup", Short: "cold starts zitadel", @@ -35,7 +35,7 @@ Requirements: startConfig := MustNewConfig(viper.GetViper()) - err = startZitadel(startConfig, masterKey) + err = startZitadel(startConfig, masterKey, server) logging.OnError(err).Fatal("unable to start zitadel") }, } diff --git a/cmd/zitadel.go b/cmd/zitadel.go index 9822e1da0..8de2aaf5b 100644 --- a/cmd/zitadel.go +++ b/cmd/zitadel.go @@ -5,7 +5,9 @@ import ( _ "embed" "errors" "io" + "os" "strings" + "sync" "github.com/spf13/cobra" "github.com/spf13/viper" @@ -26,7 +28,7 @@ var ( defaultConfig []byte ) -func New(out io.Writer, in io.Reader, args []string) *cobra.Command { +func New(out io.Writer, in io.Reader, args []string, server chan<- *start.Server) *cobra.Command { cmd := &cobra.Command{ Use: "zitadel", Short: "The ZITADEL CLI lets you interact with ZITADEL", @@ -51,9 +53,9 @@ func New(out io.Writer, in io.Reader, args []string) *cobra.Command { admin.New(), //is now deprecated, remove later on initialise.New(), setup.New(), - start.New(), - start.NewStartFromInit(), - start.NewStartFromSetup(), + start.New(server), + start.NewStartFromInit(server), + start.NewStartFromSetup(server), key.New(), ) @@ -69,3 +71,30 @@ func initConfig() { logging.WithFields("file", file).OnError(err).Warn("unable to read config file") } } + +type TestServer struct { + *start.Server + wg sync.WaitGroup +} + +func (s *TestServer) Done() { + s.Shutdown <- os.Interrupt + s.wg.Wait() +} + +func NewTestServer(args []string) *TestServer { + testServer := new(TestServer) + server := make(chan *start.Server, 1) + + testServer.wg.Add(1) + go func(wg *sync.WaitGroup) { + defer wg.Done() + + cmd := New(os.Stdout, os.Stdin, args, server) + cmd.SetArgs(args) + logging.OnError(cmd.Execute()).Fatal() + }(&testServer.wg) + + testServer.Server = <-server + return testServer +} diff --git a/cmd/zitadel_test.go b/cmd/zitadel_test.go new file mode 100644 index 000000000..7302469d3 --- /dev/null +++ b/cmd/zitadel_test.go @@ -0,0 +1,13 @@ +package cmd + +import ( + "strings" + "testing" +) + +const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../e2e/config/localhost/zitadel.yaml --steps ../e2e/config/localhost/zitadel.yaml` + +func TestNewTestServer(t *testing.T) { + s := NewTestServer(strings.Split(commandLine, " ")) + defer s.Done() +} diff --git a/main.go b/main.go index 0f3264080..97689bbe4 100644 --- a/main.go +++ b/main.go @@ -10,6 +10,6 @@ import ( func main() { args := os.Args[1:] - rootCmd := cmd.New(os.Stdout, os.Stdin /*, int(os.Stdin.Fd())*/, args) + rootCmd := cmd.New(os.Stdout, os.Stdin, args, nil) cobra.CheckErr(rootCmd.Execute()) } From a22b58f1c04a7ec7f58c41a5422ce117ea79c819 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Tue, 25 Apr 2023 15:04:35 +0300 Subject: [PATCH 02/27] simple test of a health endpoint --- cmd/zitadel.go | 29 --------- cmd/zitadel_test.go | 13 ---- internal/api/grpc/admin/admin_test.go | 29 +++++++++ internal/api/grpc/admin/information_test.go | 16 +++++ internal/integration/integration.go | 68 +++++++++++++++++++++ internal/integration/integration_test.go | 18 ++++++ 6 files changed, 131 insertions(+), 42 deletions(-) delete mode 100644 cmd/zitadel_test.go create mode 100644 internal/api/grpc/admin/admin_test.go create mode 100644 internal/api/grpc/admin/information_test.go create mode 100644 internal/integration/integration.go create mode 100644 internal/integration/integration_test.go diff --git a/cmd/zitadel.go b/cmd/zitadel.go index 8de2aaf5b..0c839f267 100644 --- a/cmd/zitadel.go +++ b/cmd/zitadel.go @@ -5,9 +5,7 @@ import ( _ "embed" "errors" "io" - "os" "strings" - "sync" "github.com/spf13/cobra" "github.com/spf13/viper" @@ -71,30 +69,3 @@ func initConfig() { logging.WithFields("file", file).OnError(err).Warn("unable to read config file") } } - -type TestServer struct { - *start.Server - wg sync.WaitGroup -} - -func (s *TestServer) Done() { - s.Shutdown <- os.Interrupt - s.wg.Wait() -} - -func NewTestServer(args []string) *TestServer { - testServer := new(TestServer) - server := make(chan *start.Server, 1) - - testServer.wg.Add(1) - go func(wg *sync.WaitGroup) { - defer wg.Done() - - cmd := New(os.Stdout, os.Stdin, args, server) - cmd.SetArgs(args) - logging.OnError(cmd.Execute()).Fatal() - }(&testServer.wg) - - testServer.Server = <-server - return testServer -} diff --git a/cmd/zitadel_test.go b/cmd/zitadel_test.go deleted file mode 100644 index 7302469d3..000000000 --- a/cmd/zitadel_test.go +++ /dev/null @@ -1,13 +0,0 @@ -package cmd - -import ( - "strings" - "testing" -) - -const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../e2e/config/localhost/zitadel.yaml --steps ../e2e/config/localhost/zitadel.yaml` - -func TestNewTestServer(t *testing.T) { - s := NewTestServer(strings.Split(commandLine, " ")) - defer s.Done() -} diff --git a/internal/api/grpc/admin/admin_test.go b/internal/api/grpc/admin/admin_test.go new file mode 100644 index 000000000..9ca65d819 --- /dev/null +++ b/internal/api/grpc/admin/admin_test.go @@ -0,0 +1,29 @@ +package admin_test + +import ( + "context" + "os" + "strings" + "testing" + "time" + + "github.com/zitadel/zitadel/internal/integration" +) + +const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../../e2e/config/localhost/zitadel.yaml --steps ../../e2e/config/localhost/zitadel.yaml` + +var ( + Tester *integration.Tester +) + +func TestMain(m *testing.M) { + os.Exit(func() int { + ctx, cancel := context.WithTimeout(context.Background(), time.Minute) + defer cancel() + + Tester = integration.NewTester(ctx, strings.Split(commandLine, " ")) + defer Tester.Done() + + return m.Run() + }()) +} diff --git a/internal/api/grpc/admin/information_test.go b/internal/api/grpc/admin/information_test.go new file mode 100644 index 000000000..e2867805b --- /dev/null +++ b/internal/api/grpc/admin/information_test.go @@ -0,0 +1,16 @@ +package admin_test + +import ( + "context" + "testing" + + "github.com/stretchr/testify/require" + + "github.com/zitadel/zitadel/pkg/grpc/admin" +) + +func TestServer_Healthz(t *testing.T) { + client := admin.NewAdminServiceClient(Tester.ClientConn) + _, err := client.Healthz(context.TODO(), &admin.HealthzRequest{}) + require.NoError(t, err) +} diff --git a/internal/integration/integration.go b/internal/integration/integration.go new file mode 100644 index 000000000..e5a91f786 --- /dev/null +++ b/internal/integration/integration.go @@ -0,0 +1,68 @@ +// Package integration provides helpers for integration testing. +package integration + +import ( + "context" + "fmt" + "os" + "sync" + + "github.com/zitadel/logging" + "google.golang.org/grpc" + "google.golang.org/grpc/credentials/insecure" + + "github.com/zitadel/zitadel/cmd" + "github.com/zitadel/zitadel/cmd/start" +) + +type Tester struct { + *start.Server + ClientConn *grpc.ClientConn + + wg sync.WaitGroup // used for shutdown +} + +func (s *Tester) createClientConn(ctx context.Context) { + target := fmt.Sprintf("localhost:%d", s.Config.Port) + cc, err := grpc.DialContext(ctx, target, + grpc.WithBlock(), grpc.WithTransportCredentials(insecure.NewCredentials()), + ) + if err != nil { + s.Shutdown <- os.Interrupt + s.wg.Wait() + } + logging.OnError(err).Fatal("integration tester client dial") + logging.New().WithField("target", target).Info("finished dialing grpc client conn") + + s.ClientConn = cc +} + +func (s *Tester) Done() { + err := s.ClientConn.Close() + logging.OnError(err).Error("integration tester client close") + + s.Shutdown <- os.Interrupt + s.wg.Wait() +} + +func NewTester(ctx context.Context, args []string) *Tester { + tester := new(Tester) + sc := make(chan *start.Server) + tester.wg.Add(1) + go func(wg *sync.WaitGroup) { + defer wg.Done() + + cmd := cmd.New(os.Stdout, os.Stdin, args, sc) + cmd.SetArgs(args) + logging.OnError(cmd.Execute()).Fatal() + }(&tester.wg) + + select { + case tester.Server = <-sc: + case <-ctx.Done(): + logging.OnError(ctx.Err()).Fatal("waiting for integration tester server") + } + tester.createClientConn(ctx) + + return tester +} diff --git a/internal/integration/integration_test.go b/internal/integration/integration_test.go new file mode 100644 index 000000000..4da09350f --- /dev/null +++ b/internal/integration/integration_test.go @@ -0,0 +1,18 @@ +package integration + +import ( + "context" + "strings" + "testing" + "time" +) + +const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../../e2e/config/localhost/zitadel.yaml --steps ../../e2e/config/localhost/zitadel.yaml` + +func TestNewTester(t *testing.T) { + ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) + defer cancel() + + s := NewTester(ctx, strings.Split(commandLine, " ")) + defer s.Done() +} From 79084089eaedb5ee8b9a4eb55adb338757be333f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Tue, 25 Apr 2023 18:11:04 +0300 Subject: [PATCH 03/27] add github action for integration tests --- .github/workflows/integration.yml | 35 ++++++++++++++++ e2e/config/integration/docker-compose.yaml | 24 +++++++++++ .../grpc/admin/failed_event_converter_test.go | 2 + .../grpc/admin/iam_member_converter_test.go | 2 + internal/api/grpc/admin/idp_converter_test.go | 2 + ...est.go => information_integration_test.go} | 18 +++++--- internal/api/grpc/admin/information_test.go | 16 ------- internal/api/grpc/errors/caos_errors_test.go | 2 + internal/api/grpc/header_test.go | 2 + .../api/grpc/management/idp_converter_test.go | 2 + .../middleware/auth_interceptor_test.go | 2 + .../middleware/error_interceptor_test.go | 2 + .../middleware/instance_interceptor_test.go | 2 + internal/api/grpc/server/probes_test.go | 2 + .../system/failed_event_converter_test.go | 2 + internal/integration/config/cockroach.yaml | 10 +++++ internal/integration/config/postgres.yaml | 15 +++++++ internal/integration/config/zitadel.yaml | 38 +++++++++++++++++ internal/integration/integration.go | 42 ++++++++++++++++--- internal/integration/integration_test.go | 7 ++-- 20 files changed, 196 insertions(+), 31 deletions(-) create mode 100644 .github/workflows/integration.yml create mode 100644 e2e/config/integration/docker-compose.yaml rename internal/api/grpc/admin/{admin_test.go => information_integration_test.go} (50%) delete mode 100644 internal/api/grpc/admin/information_test.go create mode 100644 internal/integration/config/cockroach.yaml create mode 100644 internal/integration/config/postgres.yaml create mode 100644 internal/integration/config/zitadel.yaml diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml new file mode 100644 index 000000000..6c80e5372 --- /dev/null +++ b/.github/workflows/integration.yml @@ -0,0 +1,35 @@ +on: + push: + +jobs: + integration-tests: + strategy: + matrix: + db: [cockroach, postgres] + runs-on: ubuntu-20.04 + env: + DOCKER_BUILDKIT: 1 + steps: + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: 1.19 + - name: Source checkout + uses: actions/checkout@v3 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + driver: docker + install: true + - name: Generate gRPC definitions + run: docker build -f build/grpc/Dockerfile -t zitadel-base:local . + - name: Copy gRPC definitions + run: docker build -f build/zitadel/Dockerfile . -t zitadel-go-base --target go-copy -o . + - name: Download Go modules + run: go mod download + - name: Start ${{ matrix.db }} database + run: docker compose -f e2e/config/integration/docker-compose.yaml up --wait ${{ matrix.db }} + - name: Run integration test + env: + INTEGRATION_DB_FLAVOR: ${{ matrix.db }} + run: go test -tags=integration -v ./internal/integration ./internal/api/grpc/... diff --git a/e2e/config/integration/docker-compose.yaml b/e2e/config/integration/docker-compose.yaml new file mode 100644 index 000000000..85d68e4a2 --- /dev/null +++ b/e2e/config/integration/docker-compose.yaml @@ -0,0 +1,24 @@ +version: '3.8' + +services: + cockroach: + extends: + file: '../localhost/docker-compose.yaml' + service: 'db' + + postgres: + restart: 'always' + image: 'postgres:15' + environment: + - POSTGRES_USER=zitadel + - PGUSER=zitadel + - POSTGRES_DB=zitadel + - POSTGRES_HOST_AUTH_METHOD=trust + healthcheck: + test: ["CMD-SHELL", "pg_isready"] + interval: '10s' + timeout: '30s' + retries: 5 + start_period: '20s' + ports: + - 5432:5432 diff --git a/internal/api/grpc/admin/failed_event_converter_test.go b/internal/api/grpc/admin/failed_event_converter_test.go index 6edc36c1e..cb6c6bdda 100644 --- a/internal/api/grpc/admin/failed_event_converter_test.go +++ b/internal/api/grpc/admin/failed_event_converter_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package admin import ( diff --git a/internal/api/grpc/admin/iam_member_converter_test.go b/internal/api/grpc/admin/iam_member_converter_test.go index 74dd329ee..f2b90031d 100644 --- a/internal/api/grpc/admin/iam_member_converter_test.go +++ b/internal/api/grpc/admin/iam_member_converter_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package admin import ( diff --git a/internal/api/grpc/admin/idp_converter_test.go b/internal/api/grpc/admin/idp_converter_test.go index 23d378b88..0eb04efcb 100644 --- a/internal/api/grpc/admin/idp_converter_test.go +++ b/internal/api/grpc/admin/idp_converter_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package admin import ( diff --git a/internal/api/grpc/admin/admin_test.go b/internal/api/grpc/admin/information_integration_test.go similarity index 50% rename from internal/api/grpc/admin/admin_test.go rename to internal/api/grpc/admin/information_integration_test.go index 9ca65d819..65f2dd93b 100644 --- a/internal/api/grpc/admin/admin_test.go +++ b/internal/api/grpc/admin/information_integration_test.go @@ -1,16 +1,18 @@ +//go:build integration + package admin_test import ( "context" "os" - "strings" "testing" "time" - "github.com/zitadel/zitadel/internal/integration" -) + "github.com/stretchr/testify/require" -const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../../e2e/config/localhost/zitadel.yaml --steps ../../e2e/config/localhost/zitadel.yaml` + "github.com/zitadel/zitadel/internal/integration" + "github.com/zitadel/zitadel/pkg/grpc/admin" +) var ( Tester *integration.Tester @@ -21,9 +23,15 @@ func TestMain(m *testing.M) { ctx, cancel := context.WithTimeout(context.Background(), time.Minute) defer cancel() - Tester = integration.NewTester(ctx, strings.Split(commandLine, " ")) + Tester = integration.NewTester(ctx) defer Tester.Done() return m.Run() }()) } + +func TestServer_Healthz(t *testing.T) { + client := admin.NewAdminServiceClient(Tester.ClientConn) + _, err := client.Healthz(context.TODO(), &admin.HealthzRequest{}) + require.NoError(t, err) +} diff --git a/internal/api/grpc/admin/information_test.go b/internal/api/grpc/admin/information_test.go deleted file mode 100644 index e2867805b..000000000 --- a/internal/api/grpc/admin/information_test.go +++ /dev/null @@ -1,16 +0,0 @@ -package admin_test - -import ( - "context" - "testing" - - "github.com/stretchr/testify/require" - - "github.com/zitadel/zitadel/pkg/grpc/admin" -) - -func TestServer_Healthz(t *testing.T) { - client := admin.NewAdminServiceClient(Tester.ClientConn) - _, err := client.Healthz(context.TODO(), &admin.HealthzRequest{}) - require.NoError(t, err) -} diff --git a/internal/api/grpc/errors/caos_errors_test.go b/internal/api/grpc/errors/caos_errors_test.go index 3a14f1bbf..6efe37b58 100644 --- a/internal/api/grpc/errors/caos_errors_test.go +++ b/internal/api/grpc/errors/caos_errors_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package errors import ( diff --git a/internal/api/grpc/header_test.go b/internal/api/grpc/header_test.go index e30490007..085473328 100644 --- a/internal/api/grpc/header_test.go +++ b/internal/api/grpc/header_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package grpc import ( diff --git a/internal/api/grpc/management/idp_converter_test.go b/internal/api/grpc/management/idp_converter_test.go index 999be2ea0..ae30b09c8 100644 --- a/internal/api/grpc/management/idp_converter_test.go +++ b/internal/api/grpc/management/idp_converter_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package management import ( diff --git a/internal/api/grpc/server/middleware/auth_interceptor_test.go b/internal/api/grpc/server/middleware/auth_interceptor_test.go index abe50606f..d51de2ff7 100644 --- a/internal/api/grpc/server/middleware/auth_interceptor_test.go +++ b/internal/api/grpc/server/middleware/auth_interceptor_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package middleware import ( diff --git a/internal/api/grpc/server/middleware/error_interceptor_test.go b/internal/api/grpc/server/middleware/error_interceptor_test.go index 82dc35f64..3ce69e0d3 100644 --- a/internal/api/grpc/server/middleware/error_interceptor_test.go +++ b/internal/api/grpc/server/middleware/error_interceptor_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package middleware import ( diff --git a/internal/api/grpc/server/middleware/instance_interceptor_test.go b/internal/api/grpc/server/middleware/instance_interceptor_test.go index 513dfe96c..194fafbdd 100644 --- a/internal/api/grpc/server/middleware/instance_interceptor_test.go +++ b/internal/api/grpc/server/middleware/instance_interceptor_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package middleware import ( diff --git a/internal/api/grpc/server/probes_test.go b/internal/api/grpc/server/probes_test.go index 15c889e24..1d743178c 100644 --- a/internal/api/grpc/server/probes_test.go +++ b/internal/api/grpc/server/probes_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package server import ( diff --git a/internal/api/grpc/system/failed_event_converter_test.go b/internal/api/grpc/system/failed_event_converter_test.go index f91c2d1b4..27caeff91 100644 --- a/internal/api/grpc/system/failed_event_converter_test.go +++ b/internal/api/grpc/system/failed_event_converter_test.go @@ -1,3 +1,5 @@ +//go:build !integration + package system_test import ( diff --git a/internal/integration/config/cockroach.yaml b/internal/integration/config/cockroach.yaml new file mode 100644 index 000000000..920e3cd6e --- /dev/null +++ b/internal/integration/config/cockroach.yaml @@ -0,0 +1,10 @@ +Database: + cockroach: + Host: localhost + Port: 26257 + Database: zitadel + Options: "" + User: + Username: zitadel + Admin: + Username: root diff --git a/internal/integration/config/postgres.yaml b/internal/integration/config/postgres.yaml new file mode 100644 index 000000000..0ef4739e2 --- /dev/null +++ b/internal/integration/config/postgres.yaml @@ -0,0 +1,15 @@ +Database: + postgres: + Host: localhost + Port: 5432 + Database: zitadel + MaxOpenConns: 20 + MaxIdleConns: 10 + User: + Username: zitadel + SSL: + Mode: disable + Admin: + Username: zitadel + SSL: + Mode: disable diff --git a/internal/integration/config/zitadel.yaml b/internal/integration/config/zitadel.yaml new file mode 100644 index 000000000..de4eb8aa1 --- /dev/null +++ b/internal/integration/config/zitadel.yaml @@ -0,0 +1,38 @@ +Log: + Level: debug + +TLS: + Enabled: false + +FirstInstance: + Org: + Human: + PasswordChangeRequired: false + +LogStore: + Access: + Database: + Enabled: true + Debounce: + MinFrequency: 0s + MaxBulkSize: 0 + Execution: + Database: + Enabled: true + Stdout: + Enabled: true + +Quotas: + Access: + ExhaustedCookieKey: "zitadel.quota.limiting" + ExhaustedCookieMaxAge: "60s" + +Projections: + Customizations: + NotificationsQuotas: + RequeueEvery: 1s + +DefaultInstance: + LoginPolicy: + MfaInitSkipLifetime: "0" + diff --git a/internal/integration/integration.go b/internal/integration/integration.go index e5a91f786..2cba61c2b 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -2,11 +2,15 @@ package integration import ( + "bytes" "context" + _ "embed" "fmt" "os" + "strings" "sync" + "github.com/spf13/viper" "github.com/zitadel/logging" "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" @@ -15,6 +19,15 @@ import ( "github.com/zitadel/zitadel/cmd/start" ) +var ( + //go:embed config/zitadel.yaml + zitadelYAML []byte + //go:embed config/cockroach.yaml + cockroachYAML []byte + //go:embed config/postgres.yaml + postgresYAML []byte +) + type Tester struct { *start.Server ClientConn *grpc.ClientConn @@ -22,6 +35,8 @@ type Tester struct { wg sync.WaitGroup // used for shutdown } +const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled` + func (s *Tester) createClientConn(ctx context.Context) { target := fmt.Sprintf("localhost:%d", s.Config.Port) cc, err := grpc.DialContext(ctx, target, @@ -45,16 +60,31 @@ func (s *Tester) Done() { s.wg.Wait() } -func NewTester(ctx context.Context, args []string) *Tester { - tester := new(Tester) +func NewTester(ctx context.Context) *Tester { + args := strings.Split(commandLine, " ") + sc := make(chan *start.Server) + cmd := cmd.New(os.Stdout, os.Stdin, args, sc) + cmd.SetArgs(args) + err := viper.MergeConfig(bytes.NewBuffer(zitadelYAML)) + logging.OnError(err).Fatal() + + flavor := os.Getenv("INTEGRATION_DB_FLAVOR") + switch flavor { + case "cockroach": + err = viper.MergeConfig(bytes.NewBuffer(cockroachYAML)) + case "postgres": + err = viper.MergeConfig(bytes.NewBuffer(postgresYAML)) + default: + logging.New().WithField("flavor", flavor).Fatal("unknown db flavor set in INTEGRATION_DB_FLAVOR") + } + logging.OnError(err).Fatal() + + tester := new(Tester) tester.wg.Add(1) go func(wg *sync.WaitGroup) { - defer wg.Done() - - cmd := cmd.New(os.Stdout, os.Stdin, args, sc) - cmd.SetArgs(args) logging.OnError(cmd.Execute()).Fatal() + wg.Done() }(&tester.wg) select { diff --git a/internal/integration/integration_test.go b/internal/integration/integration_test.go index 4da09350f..bb9b12f97 100644 --- a/internal/integration/integration_test.go +++ b/internal/integration/integration_test.go @@ -1,18 +1,17 @@ +//go:build integration + package integration import ( "context" - "strings" "testing" "time" ) -const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled --config ../../e2e/config/localhost/zitadel.yaml --steps ../../e2e/config/localhost/zitadel.yaml` - func TestNewTester(t *testing.T) { ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) defer cancel() - s := NewTester(ctx, strings.Split(commandLine, " ")) + s := NewTester(ctx) defer s.Done() } From 68200dcbe96f5c05c00327f74aaced4dd9eae849 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Tue, 25 Apr 2023 18:11:53 +0300 Subject: [PATCH 04/27] temporarily remove other workflow for fast running --- .github/workflows/codeql-analysis.yml | 41 ------------ .github/workflows/e2e.yml | 66 ------------------- .github/workflows/issues.yml | 20 ------ .github/workflows/release-channels.yml | 52 --------------- .github/workflows/test-code.yml | 75 ---------------------- .github/workflows/test-docs.yml | 21 ------ .github/workflows/zitadel.yml | 88 -------------------------- 7 files changed, 363 deletions(-) delete mode 100644 .github/workflows/codeql-analysis.yml delete mode 100644 .github/workflows/e2e.yml delete mode 100644 .github/workflows/issues.yml delete mode 100644 .github/workflows/release-channels.yml delete mode 100644 .github/workflows/test-code.yml delete mode 100644 .github/workflows/test-docs.yml delete mode 100644 .github/workflows/zitadel.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml deleted file mode 100644 index 6ca453c32..000000000 --- a/.github/workflows/codeql-analysis.yml +++ /dev/null @@ -1,41 +0,0 @@ -name: "Code scanning - action" - -on: - push: - branches: - - 'main' - paths-ignore: - - 'docs/**' - pull_request: - # The branches below must be a subset of the branches above - branches: - - 'main' - paths-ignore: - - 'docs/**' - -jobs: - CodeQL-Build: - runs-on: ubuntu-latest - steps: - - name: Checkout repository - uses: actions/checkout@v3 - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v2 - # Override language selection by uncommenting this and choosing your languages - with: - languages: go, javascript - # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). - # If this step fails, then you should remove it and run the build manually (see below) - - name: Autobuild - uses: github/codeql-action/autobuild@v2 - # ℹ️ Command-line programs to run using the OS shell. - # 📚 https://git.io/JvXDl - # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines - # and modify them (or add more) to build your code if your project - # uses a compiled language - #- run: | - # make bootstrap - # make release - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml deleted file mode 100644 index 50f1ce85c..000000000 --- a/.github/workflows/e2e.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: "ZITADEL e2e Tests" - -on: - workflow_run: - workflows: [ZITADEL Release] - types: - - completed - workflow_dispatch: - inputs: - releaseversion: - description: 'Release version to test' - required: true - default: 'latest' - -jobs: - test: - strategy: - matrix: - browser: [firefox, chrome] - runs-on: ubuntu-20.04 - env: - ZITADEL_IMAGE_REGISTRY: 'ghcr.io/zitadel/zitadel' - steps: - - name: Checkout Repository - uses: actions/checkout@v3 - - name: Set TAG env manual trigger - if: github.event_name == 'workflow_dispatch' - run: echo "ZITADEL_IMAGE=${ZITADEL_IMAGE_REGISTRY}:${{ github.event.inputs.releaseversion }}" >> $GITHUB_ENV - - name: get latest tag - uses: actions-ecosystem/action-get-latest-tag@v1 - id: get-latest-tag - with: - semver_only: true - - name: Set TAG env on ZITADEL release - if: github.event_name == 'workflow_run' - run: echo "ZITADEL_IMAGE=${ZITADEL_IMAGE_REGISTRY}:${{ steps.get-latest-tag.outputs.tag }}" >> $GITHUB_ENV - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - with: - driver: docker - install: true - - name: Test ${{ matrix.browser }} - run: docker compose run --service-ports e2e --browser ${{ matrix.browser }} - working-directory: e2e/config/host.docker.internal - - name: Ensure Artifacts Directory Exists - run: mkdir -p ./.artifacts - - name: Save ZITADEL Logs - if: always() - run: docker compose logs zitadel > ../../../.artifacts/e2e-compose-zitadel.log - working-directory: e2e/config/host.docker.internal - - name: Save Prepare Logs - if: always() - run: docker compose logs prepare > ../../../.artifacts/e2e-compose-prepare.log - working-directory: e2e/config/host.docker.internal - - name: Archive production tests ${{ matrix.browser }} - if: always() - uses: actions/upload-artifact@v3 - with: - name: production-tests-${{ matrix.browser }} - path: | - e2e/cypress/results - e2e/cypress/videos - e2e/cypress/screenshots - .artifacts/e2e-compose-zitadel.log - .artifacts/e2e-compose-prepare.log - retention-days: 30 diff --git a/.github/workflows/issues.yml b/.github/workflows/issues.yml deleted file mode 100644 index cc350f8e7..000000000 --- a/.github/workflows/issues.yml +++ /dev/null @@ -1,20 +0,0 @@ -name: Add new issues to product management project - -on: - issues: - types: - - opened - -jobs: - add-to-project: - name: Add issue to project - runs-on: ubuntu-latest - steps: - - uses: actions/add-to-project@v0.3.0 - with: - # You can target a repository in a different organization - # to the issue - project-url: https://github.com/orgs/zitadel/projects/2 - github-token: ${{ secrets.ADD_TO_PROJECT_PAT }} - labeled: OKR - label-operator: NOT diff --git a/.github/workflows/release-channels.yml b/.github/workflows/release-channels.yml deleted file mode 100644 index 864a0a777..000000000 --- a/.github/workflows/release-channels.yml +++ /dev/null @@ -1,52 +0,0 @@ -name: ZITADEL Release tags - -on: - push: - branches: - - "main" - paths: - - 'release-channels.yaml' - workflow_dispatch: - -permissions: - contents: write - packages: write - -jobs: - Build: - runs-on: ubuntu-20.04 - env: - DOCKER_BUILDKIT: 1 - steps: - - name: Source checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: get stable tag - run: echo STABLE_RELEASE=$(yq eval '.stable' release-channels.yaml) >> $GITHUB_ENV - - name: checkout stable tag - uses: actions/checkout@v3 - with: - fetch-depth: 0 - ref: ${{ env.STABLE_RELEASE }} - - name: GitHub Container Registry Login - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - uses: tibdex/github-app-token@v1 - id: generate-token - with: - app_id: ${{ secrets.APP_ID }} - private_key: ${{ secrets.APP_PRIVATE_KEY }} - - name: Google Artifact Registry Login - uses: docker/login-action@v2 - with: - registry: europe-docker.pkg.dev - username: _json_key_base64 - password: ${{ secrets.GCR_JSON_KEY_BASE64 }} - - name: copy release to stable - run: | - skopeo --version - skopeo copy --all docker://ghcr.io/zitadel/zitadel:$STABLE_RELEASE docker://ghcr.io/zitadel/zitadel:stable diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml deleted file mode 100644 index 7a4793dbe..000000000 --- a/.github/workflows/test-code.yml +++ /dev/null @@ -1,75 +0,0 @@ -name: ZITADEL PR - -on: - pull_request: - paths-ignore: - - 'docs/**' - - 'guides/**' - - '**.md' - - 'release-channels.yaml' - -jobs: - Build-ZITADEL: - runs-on: ubuntu-20.04 - env: - DOCKER_BUILDKIT: 1 - steps: - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: 1.19 - - name: Source checkout - uses: actions/checkout@v3 - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - with: - driver: docker - install: true - - name: Install GoReleaser - uses: goreleaser/goreleaser-action@v3 - with: - install-only: true - version: v1.10.3 - - name: Build and Unit Test - run: GOOS="linux" GOARCH="amd64" goreleaser build --id prod --snapshot --single-target --rm-dist --output .artifacts/zitadel/zitadel - - name: linting - uses: golangci/golangci-lint-action@v3 - with: - version: v1.52 - only-new-issues: true - skip-pkg-cache: true - - name: Publish go coverage - uses: codecov/codecov-action@v3.1.0 - with: - file: .artifacts/codecov/profile.cov - name: go-codecov - # As goreleaser doesn't build a dockerfile in snapshot mode, we have to build it here - - name: Build Docker Image - run: docker build -t zitadel:pr --file build/Dockerfile .artifacts/zitadel - - name: Run E2E Tests - run: docker compose run --service-ports e2e --browser chrome - working-directory: e2e/config/host.docker.internal - env: - ZITADEL_IMAGE: zitadel:pr - - name: Save ZITADEL Logs - if: always() - run: docker compose logs zitadel > ../../../.artifacts/e2e-compose-zitadel.log - working-directory: e2e/config/host.docker.internal - - name: Save Prepare Logs - if: always() - run: docker compose logs prepare > ../../../.artifacts/e2e-compose-prepare.log - working-directory: e2e/config/host.docker.internal - - name: Archive Test Results - if: always() - uses: actions/upload-artifact@v3 - with: - name: pull-request-tests - path: | - e2e/cypress/results - e2e/cypress/videos - e2e/cypress/screenshots - .artifacts/e2e-compose-zitadel.log - .artifacts/e2e-compose-prepare.log - retention-days: 30 diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml deleted file mode 100644 index 7bf3b222b..000000000 --- a/.github/workflows/test-docs.yml +++ /dev/null @@ -1,21 +0,0 @@ -# ATTENTION: Although this workflow doesn't do much, it is still important. -# It is complementary to the workflow in the file test-code.yml. -# It enables to exclude files for the workflow and still mark the Test job as required without having pending PRs. -# GitHub recommends this solution here: -# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks - -name: ZITADEL PR - -on: - pull_request: - paths: - - 'docs/**' - - 'guides/**' - - '**.md' - - 'release-channels.yaml' - -jobs: - Build-ZITADEL: - runs-on: ubuntu-20.04 - steps: - - run: 'echo "No tests for docs are implemented, yet"' diff --git a/.github/workflows/zitadel.yml b/.github/workflows/zitadel.yml deleted file mode 100644 index 2691109f8..000000000 --- a/.github/workflows/zitadel.yml +++ /dev/null @@ -1,88 +0,0 @@ -name: ZITADEL Release - -on: - push: - tags-ignore: - - "*" - workflow_dispatch: - -permissions: - contents: write - packages: write - -jobs: - Build: - runs-on: ubuntu-20.04 - env: - DOCKER_BUILDKIT: 1 - steps: - - name: Set up Go - uses: actions/setup-go@v3 - with: - go-version: 1.19 - - name: Source checkout - uses: actions/checkout@v3 - with: - fetch-depth: 0 - - name: Fetch all tags - run: git fetch --force --tags - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v2 - with: - driver: docker - install: true - - name: Tag - id: semantic - uses: cycjimmy/semantic-release-action@v2 - with: - dry_run: false - semantic_version: 19.0.2 - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - - name: GitHub Container Registry Login - if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' - uses: docker/login-action@v2 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - uses: tibdex/github-app-token@v1 - id: generate-token - with: - app_id: ${{ secrets.APP_ID }} - private_key: ${{ secrets.APP_PRIVATE_KEY }} - - name: Google Artifact Registry Login - if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' - uses: docker/login-action@v2 - with: - registry: europe-docker.pkg.dev - username: _json_key_base64 - password: ${{ secrets.GCR_JSON_KEY_BASE64 }} - - uses: goreleaser/goreleaser-action@v3 - name: Publish ZITADEL - if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' - with: - distribution: goreleaser - version: v1.11.0 - args: release --timeout 50m - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} - GORELEASER_TOKEN_TAP: ${{ steps.generate-token.outputs.token }} - RELEASE_VERSION: ${{ steps.semantic.outputs.release-version }} # I think this line is not needed. Nevertheless, it's explicit - DISCORD_WEBHOOK_ID: "976058224484687932" - DISCORD_WEBHOOK_TOKEN: "${{ secrets.DISCORD_WEBHOOK_TOKEN }}" - - name: Publish go coverage - uses: codecov/codecov-action@v3.1.0 - with: - file: .artifacts/codecov/profile.cov - name: go-codecov - - name: Bump Chart Version - uses: peter-evans/repository-dispatch@v2 - if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' - with: - token: ${{ steps.generate-token.outputs.token }} - repository: zitadel/zitadel-charts - event-type: zitadel-released - client-payload: '{"semanticoutputs": "${{ steps.semantic.outputs }}"}' From 234186c60c933fe8f76de0a0c974a513b08a38bb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Tue, 25 Apr 2023 18:30:08 +0300 Subject: [PATCH 05/27] do not run tests in parallel --- .github/workflows/integration.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 6c80e5372..f87938d82 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -32,4 +32,4 @@ jobs: - name: Run integration test env: INTEGRATION_DB_FLAVOR: ${{ matrix.db }} - run: go test -tags=integration -v ./internal/integration ./internal/api/grpc/... + run: go test -tags=integration -parallel 1 -v ./internal/integration ./internal/api/grpc/... From 90ba3a8d92a1479d31ff6e1b5a4b579a4d361f16 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 19:54:47 +0300 Subject: [PATCH 06/27] poll on test start --- .github/workflows/integration.yml | 11 +++-- cmd/start/start.go | 2 - .../admin/information_integration_test.go | 3 +- internal/integration/integration.go | 45 ++++++++++++++++--- internal/integration/integration_test.go | 2 +- 5 files changed, 47 insertions(+), 16 deletions(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index f87938d82..90edd89bf 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -9,6 +9,7 @@ jobs: runs-on: ubuntu-20.04 env: DOCKER_BUILDKIT: 1 + INTEGRATION_DB_FLAVOR: ${{ matrix.db }} steps: - name: Set up Go uses: actions/setup-go@v3 @@ -28,8 +29,10 @@ jobs: - name: Download Go modules run: go mod download - name: Start ${{ matrix.db }} database - run: docker compose -f e2e/config/integration/docker-compose.yaml up --wait ${{ matrix.db }} - - name: Run integration test - env: - INTEGRATION_DB_FLAVOR: ${{ matrix.db }} + run: docker compose -f e2e/config/integration/docker-compose.yaml up --wait ${INTEGRATION_DB_FLAVOR} + - name: Run zitadel init and setup + run: | + go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml + go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml + - name: Run integration tests run: go test -tags=integration -parallel 1 -v ./internal/integration ./internal/api/grpc/... diff --git a/cmd/start/start.go b/cmd/start/start.go index 361619536..3d6e4746c 100644 --- a/cmd/start/start.go +++ b/cmd/start/start.go @@ -89,7 +89,6 @@ Requirements: } type Server struct { - background context.Context Config *Config DB *database.DB KeyStorage crypto.KeyStorage @@ -203,7 +202,6 @@ func startZitadel(config *Config, masterKey string, server chan<- *Server) error if server != nil { server <- &Server{ - background: ctx, Config: config, DB: dbClient, KeyStorage: keyStorage, diff --git a/internal/api/grpc/admin/information_integration_test.go b/internal/api/grpc/admin/information_integration_test.go index 65f2dd93b..cac2c952a 100644 --- a/internal/api/grpc/admin/information_integration_test.go +++ b/internal/api/grpc/admin/information_integration_test.go @@ -22,7 +22,6 @@ func TestMain(m *testing.M) { os.Exit(func() int { ctx, cancel := context.WithTimeout(context.Background(), time.Minute) defer cancel() - Tester = integration.NewTester(ctx) defer Tester.Done() @@ -31,7 +30,7 @@ func TestMain(m *testing.M) { } func TestServer_Healthz(t *testing.T) { - client := admin.NewAdminServiceClient(Tester.ClientConn) + client := admin.NewAdminServiceClient(Tester.GRPCClientConn) _, err := client.Healthz(context.TODO(), &admin.HealthzRequest{}) require.NoError(t, err) } diff --git a/internal/integration/integration.go b/internal/integration/integration.go index 2cba61c2b..0b8fa2179 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -9,6 +9,7 @@ import ( "os" "strings" "sync" + "time" "github.com/spf13/viper" "github.com/zitadel/logging" @@ -17,6 +18,7 @@ import ( "github.com/zitadel/zitadel/cmd" "github.com/zitadel/zitadel/cmd/start" + "github.com/zitadel/zitadel/pkg/grpc/admin" ) var ( @@ -30,12 +32,11 @@ var ( type Tester struct { *start.Server - ClientConn *grpc.ClientConn - - wg sync.WaitGroup // used for shutdown + GRPCClientConn *grpc.ClientConn + wg sync.WaitGroup // used for shutdown } -const commandLine = `start-from-init --masterkey MasterkeyNeedsToHave32Characters --tlsMode disabled` +const commandLine = `start --masterkey MasterkeyNeedsToHave32Characters` func (s *Tester) createClientConn(ctx context.Context) { target := fmt.Sprintf("localhost:%d", s.Config.Port) @@ -49,11 +50,41 @@ func (s *Tester) createClientConn(ctx context.Context) { logging.OnError(err).Fatal("integration tester client dial") logging.New().WithField("target", target).Info("finished dialing grpc client conn") - s.ClientConn = cc + s.GRPCClientConn = cc + err = s.pollHealth(ctx) + logging.OnError(err).Fatal("integration tester health") +} + +// pollHealth waits until a healthy status is reported. +// TODO: remove when we make the setup blocking on all +// projections completed. +func (s *Tester) pollHealth(ctx context.Context) (err error) { + client := admin.NewAdminServiceClient(s.GRPCClientConn) + + for { + err = func(ctx context.Context) error { + ctx, cancel := context.WithTimeout(ctx, 5*time.Second) + defer cancel() + + _, err := client.Healthz(ctx, &admin.HealthzRequest{}) + return err + }(ctx) + if err == nil { + return nil + } + logging.WithError(err).Info("poll healthz") + + select { + case <-ctx.Done(): + return ctx.Err() + case <-time.After(time.Second): + continue + } + } } func (s *Tester) Done() { - err := s.ClientConn.Close() + err := s.GRPCClientConn.Close() logging.OnError(err).Error("integration tester client close") s.Shutdown <- os.Interrupt @@ -71,7 +102,7 @@ func NewTester(ctx context.Context) *Tester { flavor := os.Getenv("INTEGRATION_DB_FLAVOR") switch flavor { - case "cockroach": + case "cockroach", "": err = viper.MergeConfig(bytes.NewBuffer(cockroachYAML)) case "postgres": err = viper.MergeConfig(bytes.NewBuffer(postgresYAML)) diff --git a/internal/integration/integration_test.go b/internal/integration/integration_test.go index bb9b12f97..a01d8cc7f 100644 --- a/internal/integration/integration_test.go +++ b/internal/integration/integration_test.go @@ -9,7 +9,7 @@ import ( ) func TestNewTester(t *testing.T) { - ctx, cancel := context.WithTimeout(context.Background(), 10*time.Second) + ctx, cancel := context.WithTimeout(context.Background(), time.Minute) defer cancel() s := NewTester(ctx) From 1dc46b16b0b3bc5796d1c85ddc2f6cc2ff3cf227 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 19:55:13 +0300 Subject: [PATCH 07/27] remove negated integration tags --- internal/api/grpc/admin/failed_event_converter_test.go | 2 -- internal/api/grpc/admin/iam_member_converter_test.go | 2 -- internal/api/grpc/admin/idp_converter_test.go | 2 -- internal/api/grpc/errors/caos_errors_test.go | 2 -- internal/api/grpc/header_test.go | 2 -- internal/api/grpc/management/idp_converter_test.go | 2 -- internal/api/grpc/server/middleware/auth_interceptor_test.go | 2 -- internal/api/grpc/server/middleware/error_interceptor_test.go | 2 -- .../api/grpc/server/middleware/instance_interceptor_test.go | 2 -- internal/api/grpc/server/probes_test.go | 2 -- internal/api/grpc/system/failed_event_converter_test.go | 2 -- 11 files changed, 22 deletions(-) diff --git a/internal/api/grpc/admin/failed_event_converter_test.go b/internal/api/grpc/admin/failed_event_converter_test.go index cb6c6bdda..6edc36c1e 100644 --- a/internal/api/grpc/admin/failed_event_converter_test.go +++ b/internal/api/grpc/admin/failed_event_converter_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package admin import ( diff --git a/internal/api/grpc/admin/iam_member_converter_test.go b/internal/api/grpc/admin/iam_member_converter_test.go index f2b90031d..74dd329ee 100644 --- a/internal/api/grpc/admin/iam_member_converter_test.go +++ b/internal/api/grpc/admin/iam_member_converter_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package admin import ( diff --git a/internal/api/grpc/admin/idp_converter_test.go b/internal/api/grpc/admin/idp_converter_test.go index 0eb04efcb..23d378b88 100644 --- a/internal/api/grpc/admin/idp_converter_test.go +++ b/internal/api/grpc/admin/idp_converter_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package admin import ( diff --git a/internal/api/grpc/errors/caos_errors_test.go b/internal/api/grpc/errors/caos_errors_test.go index 6efe37b58..3a14f1bbf 100644 --- a/internal/api/grpc/errors/caos_errors_test.go +++ b/internal/api/grpc/errors/caos_errors_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package errors import ( diff --git a/internal/api/grpc/header_test.go b/internal/api/grpc/header_test.go index 085473328..e30490007 100644 --- a/internal/api/grpc/header_test.go +++ b/internal/api/grpc/header_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package grpc import ( diff --git a/internal/api/grpc/management/idp_converter_test.go b/internal/api/grpc/management/idp_converter_test.go index ae30b09c8..999be2ea0 100644 --- a/internal/api/grpc/management/idp_converter_test.go +++ b/internal/api/grpc/management/idp_converter_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package management import ( diff --git a/internal/api/grpc/server/middleware/auth_interceptor_test.go b/internal/api/grpc/server/middleware/auth_interceptor_test.go index d51de2ff7..abe50606f 100644 --- a/internal/api/grpc/server/middleware/auth_interceptor_test.go +++ b/internal/api/grpc/server/middleware/auth_interceptor_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package middleware import ( diff --git a/internal/api/grpc/server/middleware/error_interceptor_test.go b/internal/api/grpc/server/middleware/error_interceptor_test.go index 3ce69e0d3..82dc35f64 100644 --- a/internal/api/grpc/server/middleware/error_interceptor_test.go +++ b/internal/api/grpc/server/middleware/error_interceptor_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package middleware import ( diff --git a/internal/api/grpc/server/middleware/instance_interceptor_test.go b/internal/api/grpc/server/middleware/instance_interceptor_test.go index 194fafbdd..513dfe96c 100644 --- a/internal/api/grpc/server/middleware/instance_interceptor_test.go +++ b/internal/api/grpc/server/middleware/instance_interceptor_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package middleware import ( diff --git a/internal/api/grpc/server/probes_test.go b/internal/api/grpc/server/probes_test.go index 1d743178c..15c889e24 100644 --- a/internal/api/grpc/server/probes_test.go +++ b/internal/api/grpc/server/probes_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package server import ( diff --git a/internal/api/grpc/system/failed_event_converter_test.go b/internal/api/grpc/system/failed_event_converter_test.go index 27caeff91..f91c2d1b4 100644 --- a/internal/api/grpc/system/failed_event_converter_test.go +++ b/internal/api/grpc/system/failed_event_converter_test.go @@ -1,5 +1,3 @@ -//go:build !integration - package system_test import ( From e1655c3fbb59101abdb395d6a6eef2bbfb1302ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 20:03:40 +0300 Subject: [PATCH 08/27] Revert "temporarily remove other workflow for fast running" This reverts commit 68200dcbe96f5c05c00327f74aaced4dd9eae849. --- .github/workflows/codeql-analysis.yml | 41 ++++++++++++ .github/workflows/e2e.yml | 66 +++++++++++++++++++ .github/workflows/issues.yml | 20 ++++++ .github/workflows/release-channels.yml | 52 +++++++++++++++ .github/workflows/test-code.yml | 75 ++++++++++++++++++++++ .github/workflows/test-docs.yml | 21 ++++++ .github/workflows/zitadel.yml | 88 ++++++++++++++++++++++++++ 7 files changed, 363 insertions(+) create mode 100644 .github/workflows/codeql-analysis.yml create mode 100644 .github/workflows/e2e.yml create mode 100644 .github/workflows/issues.yml create mode 100644 .github/workflows/release-channels.yml create mode 100644 .github/workflows/test-code.yml create mode 100644 .github/workflows/test-docs.yml create mode 100644 .github/workflows/zitadel.yml diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml new file mode 100644 index 000000000..6ca453c32 --- /dev/null +++ b/.github/workflows/codeql-analysis.yml @@ -0,0 +1,41 @@ +name: "Code scanning - action" + +on: + push: + branches: + - 'main' + paths-ignore: + - 'docs/**' + pull_request: + # The branches below must be a subset of the branches above + branches: + - 'main' + paths-ignore: + - 'docs/**' + +jobs: + CodeQL-Build: + runs-on: ubuntu-latest + steps: + - name: Checkout repository + uses: actions/checkout@v3 + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v2 + # Override language selection by uncommenting this and choosing your languages + with: + languages: go, javascript + # Autobuild attempts to build any compiled languages (C/C++, C#, or Java). + # If this step fails, then you should remove it and run the build manually (see below) + - name: Autobuild + uses: github/codeql-action/autobuild@v2 + # ℹ️ Command-line programs to run using the OS shell. + # 📚 https://git.io/JvXDl + # ✏️ If the Autobuild fails above, remove it and uncomment the following three lines + # and modify them (or add more) to build your code if your project + # uses a compiled language + #- run: | + # make bootstrap + # make release + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v2 diff --git a/.github/workflows/e2e.yml b/.github/workflows/e2e.yml new file mode 100644 index 000000000..50f1ce85c --- /dev/null +++ b/.github/workflows/e2e.yml @@ -0,0 +1,66 @@ +name: "ZITADEL e2e Tests" + +on: + workflow_run: + workflows: [ZITADEL Release] + types: + - completed + workflow_dispatch: + inputs: + releaseversion: + description: 'Release version to test' + required: true + default: 'latest' + +jobs: + test: + strategy: + matrix: + browser: [firefox, chrome] + runs-on: ubuntu-20.04 + env: + ZITADEL_IMAGE_REGISTRY: 'ghcr.io/zitadel/zitadel' + steps: + - name: Checkout Repository + uses: actions/checkout@v3 + - name: Set TAG env manual trigger + if: github.event_name == 'workflow_dispatch' + run: echo "ZITADEL_IMAGE=${ZITADEL_IMAGE_REGISTRY}:${{ github.event.inputs.releaseversion }}" >> $GITHUB_ENV + - name: get latest tag + uses: actions-ecosystem/action-get-latest-tag@v1 + id: get-latest-tag + with: + semver_only: true + - name: Set TAG env on ZITADEL release + if: github.event_name == 'workflow_run' + run: echo "ZITADEL_IMAGE=${ZITADEL_IMAGE_REGISTRY}:${{ steps.get-latest-tag.outputs.tag }}" >> $GITHUB_ENV + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + driver: docker + install: true + - name: Test ${{ matrix.browser }} + run: docker compose run --service-ports e2e --browser ${{ matrix.browser }} + working-directory: e2e/config/host.docker.internal + - name: Ensure Artifacts Directory Exists + run: mkdir -p ./.artifacts + - name: Save ZITADEL Logs + if: always() + run: docker compose logs zitadel > ../../../.artifacts/e2e-compose-zitadel.log + working-directory: e2e/config/host.docker.internal + - name: Save Prepare Logs + if: always() + run: docker compose logs prepare > ../../../.artifacts/e2e-compose-prepare.log + working-directory: e2e/config/host.docker.internal + - name: Archive production tests ${{ matrix.browser }} + if: always() + uses: actions/upload-artifact@v3 + with: + name: production-tests-${{ matrix.browser }} + path: | + e2e/cypress/results + e2e/cypress/videos + e2e/cypress/screenshots + .artifacts/e2e-compose-zitadel.log + .artifacts/e2e-compose-prepare.log + retention-days: 30 diff --git a/.github/workflows/issues.yml b/.github/workflows/issues.yml new file mode 100644 index 000000000..cc350f8e7 --- /dev/null +++ b/.github/workflows/issues.yml @@ -0,0 +1,20 @@ +name: Add new issues to product management project + +on: + issues: + types: + - opened + +jobs: + add-to-project: + name: Add issue to project + runs-on: ubuntu-latest + steps: + - uses: actions/add-to-project@v0.3.0 + with: + # You can target a repository in a different organization + # to the issue + project-url: https://github.com/orgs/zitadel/projects/2 + github-token: ${{ secrets.ADD_TO_PROJECT_PAT }} + labeled: OKR + label-operator: NOT diff --git a/.github/workflows/release-channels.yml b/.github/workflows/release-channels.yml new file mode 100644 index 000000000..864a0a777 --- /dev/null +++ b/.github/workflows/release-channels.yml @@ -0,0 +1,52 @@ +name: ZITADEL Release tags + +on: + push: + branches: + - "main" + paths: + - 'release-channels.yaml' + workflow_dispatch: + +permissions: + contents: write + packages: write + +jobs: + Build: + runs-on: ubuntu-20.04 + env: + DOCKER_BUILDKIT: 1 + steps: + - name: Source checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: get stable tag + run: echo STABLE_RELEASE=$(yq eval '.stable' release-channels.yaml) >> $GITHUB_ENV + - name: checkout stable tag + uses: actions/checkout@v3 + with: + fetch-depth: 0 + ref: ${{ env.STABLE_RELEASE }} + - name: GitHub Container Registry Login + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - uses: tibdex/github-app-token@v1 + id: generate-token + with: + app_id: ${{ secrets.APP_ID }} + private_key: ${{ secrets.APP_PRIVATE_KEY }} + - name: Google Artifact Registry Login + uses: docker/login-action@v2 + with: + registry: europe-docker.pkg.dev + username: _json_key_base64 + password: ${{ secrets.GCR_JSON_KEY_BASE64 }} + - name: copy release to stable + run: | + skopeo --version + skopeo copy --all docker://ghcr.io/zitadel/zitadel:$STABLE_RELEASE docker://ghcr.io/zitadel/zitadel:stable diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml new file mode 100644 index 000000000..7a4793dbe --- /dev/null +++ b/.github/workflows/test-code.yml @@ -0,0 +1,75 @@ +name: ZITADEL PR + +on: + pull_request: + paths-ignore: + - 'docs/**' + - 'guides/**' + - '**.md' + - 'release-channels.yaml' + +jobs: + Build-ZITADEL: + runs-on: ubuntu-20.04 + env: + DOCKER_BUILDKIT: 1 + steps: + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: 1.19 + - name: Source checkout + uses: actions/checkout@v3 + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + driver: docker + install: true + - name: Install GoReleaser + uses: goreleaser/goreleaser-action@v3 + with: + install-only: true + version: v1.10.3 + - name: Build and Unit Test + run: GOOS="linux" GOARCH="amd64" goreleaser build --id prod --snapshot --single-target --rm-dist --output .artifacts/zitadel/zitadel + - name: linting + uses: golangci/golangci-lint-action@v3 + with: + version: v1.52 + only-new-issues: true + skip-pkg-cache: true + - name: Publish go coverage + uses: codecov/codecov-action@v3.1.0 + with: + file: .artifacts/codecov/profile.cov + name: go-codecov + # As goreleaser doesn't build a dockerfile in snapshot mode, we have to build it here + - name: Build Docker Image + run: docker build -t zitadel:pr --file build/Dockerfile .artifacts/zitadel + - name: Run E2E Tests + run: docker compose run --service-ports e2e --browser chrome + working-directory: e2e/config/host.docker.internal + env: + ZITADEL_IMAGE: zitadel:pr + - name: Save ZITADEL Logs + if: always() + run: docker compose logs zitadel > ../../../.artifacts/e2e-compose-zitadel.log + working-directory: e2e/config/host.docker.internal + - name: Save Prepare Logs + if: always() + run: docker compose logs prepare > ../../../.artifacts/e2e-compose-prepare.log + working-directory: e2e/config/host.docker.internal + - name: Archive Test Results + if: always() + uses: actions/upload-artifact@v3 + with: + name: pull-request-tests + path: | + e2e/cypress/results + e2e/cypress/videos + e2e/cypress/screenshots + .artifacts/e2e-compose-zitadel.log + .artifacts/e2e-compose-prepare.log + retention-days: 30 diff --git a/.github/workflows/test-docs.yml b/.github/workflows/test-docs.yml new file mode 100644 index 000000000..7bf3b222b --- /dev/null +++ b/.github/workflows/test-docs.yml @@ -0,0 +1,21 @@ +# ATTENTION: Although this workflow doesn't do much, it is still important. +# It is complementary to the workflow in the file test-code.yml. +# It enables to exclude files for the workflow and still mark the Test job as required without having pending PRs. +# GitHub recommends this solution here: +# https://docs.github.com/en/repositories/configuring-branches-and-merges-in-your-repository/defining-the-mergeability-of-pull-requests/troubleshooting-required-status-checks#handling-skipped-but-required-checks + +name: ZITADEL PR + +on: + pull_request: + paths: + - 'docs/**' + - 'guides/**' + - '**.md' + - 'release-channels.yaml' + +jobs: + Build-ZITADEL: + runs-on: ubuntu-20.04 + steps: + - run: 'echo "No tests for docs are implemented, yet"' diff --git a/.github/workflows/zitadel.yml b/.github/workflows/zitadel.yml new file mode 100644 index 000000000..2691109f8 --- /dev/null +++ b/.github/workflows/zitadel.yml @@ -0,0 +1,88 @@ +name: ZITADEL Release + +on: + push: + tags-ignore: + - "*" + workflow_dispatch: + +permissions: + contents: write + packages: write + +jobs: + Build: + runs-on: ubuntu-20.04 + env: + DOCKER_BUILDKIT: 1 + steps: + - name: Set up Go + uses: actions/setup-go@v3 + with: + go-version: 1.19 + - name: Source checkout + uses: actions/checkout@v3 + with: + fetch-depth: 0 + - name: Fetch all tags + run: git fetch --force --tags + - name: Set up QEMU + uses: docker/setup-qemu-action@v2 + - name: Set up Docker Buildx + uses: docker/setup-buildx-action@v2 + with: + driver: docker + install: true + - name: Tag + id: semantic + uses: cycjimmy/semantic-release-action@v2 + with: + dry_run: false + semantic_version: 19.0.2 + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: GitHub Container Registry Login + if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' + uses: docker/login-action@v2 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + - uses: tibdex/github-app-token@v1 + id: generate-token + with: + app_id: ${{ secrets.APP_ID }} + private_key: ${{ secrets.APP_PRIVATE_KEY }} + - name: Google Artifact Registry Login + if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' + uses: docker/login-action@v2 + with: + registry: europe-docker.pkg.dev + username: _json_key_base64 + password: ${{ secrets.GCR_JSON_KEY_BASE64 }} + - uses: goreleaser/goreleaser-action@v3 + name: Publish ZITADEL + if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' || github.event_name == 'workflow_dispatch' + with: + distribution: goreleaser + version: v1.11.0 + args: release --timeout 50m + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + GORELEASER_TOKEN_TAP: ${{ steps.generate-token.outputs.token }} + RELEASE_VERSION: ${{ steps.semantic.outputs.release-version }} # I think this line is not needed. Nevertheless, it's explicit + DISCORD_WEBHOOK_ID: "976058224484687932" + DISCORD_WEBHOOK_TOKEN: "${{ secrets.DISCORD_WEBHOOK_TOKEN }}" + - name: Publish go coverage + uses: codecov/codecov-action@v3.1.0 + with: + file: .artifacts/codecov/profile.cov + name: go-codecov + - name: Bump Chart Version + uses: peter-evans/repository-dispatch@v2 + if: steps.semantic.outputs.new_release_published == 'true' && github.ref == 'refs/heads/main' + with: + token: ${{ steps.generate-token.outputs.token }} + repository: zitadel/zitadel-charts + event-type: zitadel-released + client-payload: '{"semanticoutputs": "${{ steps.semantic.outputs }}"}' From ec8f741e58f4031d12d599010ffe97ff3a8874a0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 20:12:58 +0300 Subject: [PATCH 09/27] coverage reports --- .github/workflows/integration.yml | 11 ++++++++++- .github/workflows/test-code.yml | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 90edd89bf..e334cb9d0 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -1,5 +1,9 @@ +name: Integration tests + on: push: + tags-ignore: + - "*" jobs: integration-tests: @@ -35,4 +39,9 @@ jobs: go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml - name: Run integration tests - run: go test -tags=integration -parallel 1 -v ./internal/integration ./internal/api/grpc/... + run: go test -tags=integration -parallel 1 -v -coverprofile=profile.cov -coverpkg=./pkg/... ./internal/integration ./internal/api/grpc/... + - name: Publish go coverage + uses: codecov/codecov-action@v3.1.0 + with: + file: profile.cov + name: integration-tests diff --git a/.github/workflows/test-code.yml b/.github/workflows/test-code.yml index 7a4793dbe..b681d3b2d 100644 --- a/.github/workflows/test-code.yml +++ b/.github/workflows/test-code.yml @@ -44,7 +44,7 @@ jobs: uses: codecov/codecov-action@v3.1.0 with: file: .artifacts/codecov/profile.cov - name: go-codecov + name: unit-tests # As goreleaser doesn't build a dockerfile in snapshot mode, we have to build it here - name: Build Docker Image run: docker build -t zitadel:pr --file build/Dockerfile .artifacts/zitadel From 03789d43e55612c31c5c00a2e14c5d5b73fac817 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 20:29:43 +0300 Subject: [PATCH 10/27] re-enable PR build --- .github/workflows/integration.yml | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index e334cb9d0..4d273d29b 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -3,7 +3,10 @@ name: Integration tests on: push: tags-ignore: - - "*" + - '**' + pull_request: + branches: + - '**' jobs: integration-tests: From 596900aba6b39d00c790cc9f883c74690f718933 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 26 Apr 2023 20:49:33 +0300 Subject: [PATCH 11/27] nolint contextcheck in NewTester --- internal/integration/integration.go | 1 + 1 file changed, 1 insertion(+) diff --git a/internal/integration/integration.go b/internal/integration/integration.go index 0b8fa2179..f594bb743 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -95,6 +95,7 @@ func NewTester(ctx context.Context) *Tester { args := strings.Split(commandLine, " ") sc := make(chan *start.Server) + //nolint:contextcheck cmd := cmd.New(os.Stdout, os.Stdin, args, sc) cmd.SetArgs(args) err := viper.MergeConfig(bytes.NewBuffer(zitadelYAML)) From bd3820cc6c40c1c2fd40bfc21a55d1752e11c64d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Thu, 27 Apr 2023 12:03:57 +0300 Subject: [PATCH 12/27] correct the coverpkg path --- .github/workflows/integration.yml | 2 +- build/zitadel/Dockerfile | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 4d273d29b..619379e1e 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -42,7 +42,7 @@ jobs: go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml - name: Run integration tests - run: go test -tags=integration -parallel 1 -v -coverprofile=profile.cov -coverpkg=./pkg/... ./internal/integration ./internal/api/grpc/... + run: go test -tags=integration -race -parallel 1 -v -coverprofile=profile.cov -coverpkg=./... ./internal/integration ./internal/api/grpc/... - name: Publish go coverage uses: codecov/codecov-action@v3.1.0 with: diff --git a/build/zitadel/Dockerfile b/build/zitadel/Dockerfile index 1ed0e34d7..5de3dd652 100644 --- a/build/zitadel/Dockerfile +++ b/build/zitadel/Dockerfile @@ -98,7 +98,7 @@ RUN rm -r cockroach-${COCKROACH_VERSION}.linux-amd64 # Migrations for cockroach-secure RUN go install github.com/rakyll/statik \ - && go test -race -v -coverprofile=profile.cov $(go list ./... | grep -v /operator/) + && go test -race -v -coverprofile=profile.cov -coverpkg=./... $(go list ./... | grep -v /operator/) ####################### ## Go test results From 4b7f5ae186b43317f343a2548d1041e1378e909e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Fri, 28 Apr 2023 14:39:53 +0300 Subject: [PATCH 13/27] AddHumanUser tests --- build/zitadel/Dockerfile | 2 +- .../admin/information_integration_test.go | 2 +- .../api/grpc/user/v2/user_integration_test.go | 317 ++++++++++++++++++ internal/integration/assert.go | 25 ++ internal/integration/config/zitadel.yaml | 1 - internal/integration/integration.go | 94 ++++++ internal/integration/integration_test.go | 3 +- internal/integration/usertype_string.go | 24 ++ 8 files changed, 463 insertions(+), 5 deletions(-) create mode 100644 internal/api/grpc/user/v2/user_integration_test.go create mode 100644 internal/integration/assert.go create mode 100644 internal/integration/usertype_string.go diff --git a/build/zitadel/Dockerfile b/build/zitadel/Dockerfile index ba2c3cccd..7c0f7bdca 100644 --- a/build/zitadel/Dockerfile +++ b/build/zitadel/Dockerfile @@ -97,7 +97,7 @@ RUN rm -r cockroach-${COCKROACH_VERSION}.linux-amd64 # Migrations for cockroach-secure RUN go install github.com/rakyll/statik \ - && go test -race -v -coverprofile=profile.cov -coverpkg=./... $(go list ./... | grep -v /operator/) + && go test -race -v -coverprofile=profile.cov $(go list ./... | grep -v /operator/) ####################### ## Go test results diff --git a/internal/api/grpc/admin/information_integration_test.go b/internal/api/grpc/admin/information_integration_test.go index cac2c952a..8eb981824 100644 --- a/internal/api/grpc/admin/information_integration_test.go +++ b/internal/api/grpc/admin/information_integration_test.go @@ -20,7 +20,7 @@ var ( func TestMain(m *testing.M) { os.Exit(func() int { - ctx, cancel := context.WithTimeout(context.Background(), time.Minute) + ctx, _, cancel := integration.Contexts(time.Minute) defer cancel() Tester = integration.NewTester(ctx) defer Tester.Done() diff --git a/internal/api/grpc/user/v2/user_integration_test.go b/internal/api/grpc/user/v2/user_integration_test.go new file mode 100644 index 000000000..157aa00fb --- /dev/null +++ b/internal/api/grpc/user/v2/user_integration_test.go @@ -0,0 +1,317 @@ +//go:build integration + +package user_test + +import ( + "context" + "fmt" + "os" + "testing" + "time" + + "github.com/muhlemmer/gu" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "github.com/zitadel/zitadel/internal/integration" + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" + user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" + "google.golang.org/protobuf/types/known/timestamppb" +) + +var ( + CTX context.Context + ErrCTX context.Context + Tester *integration.Tester + Client user.UserServiceClient +) + +func TestMain(m *testing.M) { + os.Exit(func() int { + ctx, errCtx, cancel := integration.Contexts(time.Hour) + defer cancel() + + Tester = integration.NewTester(ctx) + defer Tester.Done() + + CTX, ErrCTX = Tester.WithSystemAuthorization(ctx, integration.OrgOwner), errCtx + Client = user.NewUserServiceClient(Tester.GRPCClientConn) + return m.Run() + }()) +} + +func TestServer_AddHumanUser(t *testing.T) { + type args struct { + ctx context.Context + req *user.AddHumanUserRequest + } + tests := []struct { + name string + args args + want *user.AddHumanUserResponse + wantErr bool + }{ + { + name: "default verification", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Donald", + LastName: "Duck", + NickName: gu.Ptr("Dukkie"), + DisplayName: gu.Ptr("Donald Duck"), + PreferredLanguage: gu.Ptr("en"), + Gender: user.Gender_GENDER_DIVERSE.Enum(), + }, + Email: &user.SetHumanEmail{}, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + want: &user.AddHumanUserResponse{ + Details: &object.Details{ + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + { + name: "return verification code", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Donald", + LastName: "Duck", + NickName: gu.Ptr("Dukkie"), + DisplayName: gu.Ptr("Donald Duck"), + PreferredLanguage: gu.Ptr("en"), + Gender: user.Gender_GENDER_DIVERSE.Enum(), + }, + Email: &user.SetHumanEmail{ + Verification: &user.SetHumanEmail_ReturnCode{ + ReturnCode: &user.ReturnEmailVerificationCode{}, + }, + }, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + want: &user.AddHumanUserResponse{ + Details: &object.Details{ + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + EmailCode: gu.Ptr("something"), + }, + }, + { + name: "custom template", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Donald", + LastName: "Duck", + NickName: gu.Ptr("Dukkie"), + DisplayName: gu.Ptr("Donald Duck"), + PreferredLanguage: gu.Ptr("en"), + Gender: user.Gender_GENDER_DIVERSE.Enum(), + }, + Email: &user.SetHumanEmail{ + Verification: &user.SetHumanEmail_SendCode{ + SendCode: &user.SendEmailVerificationCode{ + UrlTemplate: gu.Ptr("https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"), + }, + }, + }, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + want: &user.AddHumanUserResponse{ + Details: &object.Details{ + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + { + name: "custom template error", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Donald", + LastName: "Duck", + NickName: gu.Ptr("Dukkie"), + DisplayName: gu.Ptr("Donald Duck"), + PreferredLanguage: gu.Ptr("en"), + Gender: user.Gender_GENDER_DIVERSE.Enum(), + }, + Email: &user.SetHumanEmail{ + Verification: &user.SetHumanEmail_SendCode{ + SendCode: &user.SendEmailVerificationCode{ + UrlTemplate: gu.Ptr("{{"), + }, + }, + }, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + wantErr: true, + }, + { + name: "missing REQUIRED profile", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Email: &user.SetHumanEmail{ + Verification: &user.SetHumanEmail_ReturnCode{ + ReturnCode: &user.ReturnEmailVerificationCode{}, + }, + }, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + wantErr: true, + }, + { + name: "missing REQUIRED email", + args: args{ + CTX, + &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: "211137963315232910", + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Donald", + LastName: "Duck", + NickName: gu.Ptr("Dukkie"), + DisplayName: gu.Ptr("Donald Duck"), + PreferredLanguage: gu.Ptr("en"), + Gender: user.Gender_GENDER_DIVERSE.Enum(), + }, + Metadata: []*user.SetMetadataEntry{ + { + Key: "somekey", + Value: []byte("somevalue"), + }, + }, + PasswordType: &user.AddHumanUserRequest_Password{ + Password: &user.Password{ + Password: "DifficultPW666!", + ChangeRequired: true, + }, + }, + }, + }, + wantErr: true, + }, + } + for i, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + userID := fmt.Sprint(time.Now().UnixNano() + int64(i)) + tt.args.req.UserId = &userID + if email := tt.args.req.GetEmail(); email != nil { + email.Email = fmt.Sprintf("%s@me.now", userID) + } + + if tt.want != nil { + tt.want.UserId = userID + } + + got, err := Client.AddHumanUser(tt.args.ctx, tt.args.req) + if tt.wantErr { + require.Error(t, err) + } else { + require.NoError(t, err) + } + + assert.Equal(t, tt.want.GetUserId(), got.GetUserId()) + if tt.want.GetEmailCode() != "" { + assert.NotEmpty(t, got.GetEmailCode()) + } + integration.AssertDetails(t, tt.want, got) + }) + } +} diff --git a/internal/integration/assert.go b/internal/integration/assert.go new file mode 100644 index 000000000..512c006ad --- /dev/null +++ b/internal/integration/assert.go @@ -0,0 +1,25 @@ +package integration + +import ( + "testing" + "time" + + "github.com/stretchr/testify/assert" + + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" +) + +type DetailsMsg interface { + GetDetails() *object.Details +} + +func AssertDetails[D DetailsMsg](t testing.TB, exptected, actual D) { + wantDetails, gotDetails := exptected.GetDetails(), actual.GetDetails() + + if wantDetails != nil { + assert.NotZero(t, gotDetails.GetSequence()) + } + wantCD, gotCD := wantDetails.GetChangeDate().AsTime(), gotDetails.GetChangeDate().AsTime() + assert.WithinRange(t, gotCD, wantCD, wantCD.Add(time.Minute)) + assert.Equal(t, wantDetails.GetResourceOwner(), gotDetails.GetResourceOwner()) +} diff --git a/internal/integration/config/zitadel.yaml b/internal/integration/config/zitadel.yaml index de4eb8aa1..60389d6de 100644 --- a/internal/integration/config/zitadel.yaml +++ b/internal/integration/config/zitadel.yaml @@ -35,4 +35,3 @@ Projections: DefaultInstance: LoginPolicy: MfaInitSkipLifetime: "0" - diff --git a/internal/integration/integration.go b/internal/integration/integration.go index f594bb743..545066f05 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -4,7 +4,9 @@ package integration import ( "bytes" "context" + "database/sql" _ "embed" + "errors" "fmt" "os" "strings" @@ -13,11 +15,20 @@ import ( "github.com/spf13/viper" "github.com/zitadel/logging" + "github.com/zitadel/oidc/v2/pkg/oidc" "google.golang.org/grpc" "google.golang.org/grpc/credentials/insecure" + "google.golang.org/grpc/metadata" "github.com/zitadel/zitadel/cmd" "github.com/zitadel/zitadel/cmd/start" + "github.com/zitadel/zitadel/internal/api/authz" + z_oidc "github.com/zitadel/zitadel/internal/api/oidc" + "github.com/zitadel/zitadel/internal/command" + "github.com/zitadel/zitadel/internal/domain" + caos_errs "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore/v1/models" + "github.com/zitadel/zitadel/internal/query" "github.com/zitadel/zitadel/pkg/grpc/admin" ) @@ -30,8 +41,26 @@ var ( postgresYAML []byte ) +type UserType int + +//go:generate stringer -type=UserType +const ( + Unspecified UserType = iota + OrgOwner +) + +type User struct { + *query.User + Token string +} + type Tester struct { *start.Server + + Instance authz.Instance + Organisation *query.Org + Users map[UserType]User + GRPCClientConn *grpc.ClientConn wg sync.WaitGroup // used for shutdown } @@ -83,6 +112,63 @@ func (s *Tester) pollHealth(ctx context.Context) (err error) { } } +const ( + SystemUser = "integration1" +) + +func (s *Tester) createSystemUser(ctx context.Context) { + var err error + + s.Instance, err = s.Queries.InstanceByHost(ctx, "localhost:8080") + logging.OnError(err).Fatal("query instance") + ctx = authz.WithInstance(ctx, s.Instance) + + s.Organisation, err = s.Queries.OrgByID(ctx, true, s.Instance.DefaultOrganisationID()) + logging.OnError(err).Fatal("query organisation") + + query, err := query.NewUserUsernameSearchQuery(SystemUser, query.TextEquals) + logging.OnError(err).Fatal("user query") + user, err := s.Queries.GetUser(ctx, true, true, query) + + if errors.Is(err, sql.ErrNoRows) { + _, err = s.Commands.AddMachine(ctx, &command.Machine{ + ObjectRoot: models.ObjectRoot{ + ResourceOwner: s.Organisation.ID, + }, + Username: SystemUser, + Name: SystemUser, + Description: "who cares?", + AccessTokenType: domain.OIDCTokenTypeJWT, + }) + logging.OnError(err).Fatal("add machine user") + user, err = s.Queries.GetUser(ctx, true, true, query) + + } + logging.OnError(err).Fatal("get user") + + _, err = s.Commands.AddOrgMember(ctx, s.Organisation.ID, user.ID, "ORG_OWNER") + target := new(caos_errs.AlreadyExistsError) + if !errors.As(err, &target) { + logging.OnError(err).Fatal("add org member") + } + + scopes := []string{oidc.ScopeOpenID, z_oidc.ScopeUserMetaData, z_oidc.ScopeResourceOwner} + pat := command.NewPersonalAccessToken(user.ResourceOwner, user.ID, time.Now().Add(time.Hour), scopes, domain.UserTypeMachine) + _, err = s.Commands.AddPersonalAccessToken(ctx, pat) + logging.OnError(err).Fatal("add pat") + + s.Users = map[UserType]User{ + OrgOwner: { + User: user, + Token: pat.Token, + }, + } +} + +func (s *Tester) WithSystemAuthorization(ctx context.Context, u UserType) context.Context { + return metadata.AppendToOutgoingContext(ctx, "Authorization", fmt.Sprintf("Bearer %s", s.Users[u].Token)) +} + func (s *Tester) Done() { err := s.GRPCClientConn.Close() logging.OnError(err).Error("integration tester client close") @@ -125,6 +211,14 @@ func NewTester(ctx context.Context) *Tester { logging.OnError(ctx.Err()).Fatal("waiting for integration tester server") } tester.createClientConn(ctx) + tester.createSystemUser(ctx) return tester } + +func Contexts(timeout time.Duration) (ctx, errCtx context.Context, cancel context.CancelFunc) { + errCtx, cancel = context.WithCancel(context.Background()) + cancel() + ctx, cancel = context.WithTimeout(context.Background(), timeout) + return ctx, errCtx, cancel +} diff --git a/internal/integration/integration_test.go b/internal/integration/integration_test.go index a01d8cc7f..416602ea2 100644 --- a/internal/integration/integration_test.go +++ b/internal/integration/integration_test.go @@ -3,13 +3,12 @@ package integration import ( - "context" "testing" "time" ) func TestNewTester(t *testing.T) { - ctx, cancel := context.WithTimeout(context.Background(), time.Minute) + ctx, _, cancel := Contexts(time.Hour) defer cancel() s := NewTester(ctx) diff --git a/internal/integration/usertype_string.go b/internal/integration/usertype_string.go new file mode 100644 index 000000000..3f5db98d7 --- /dev/null +++ b/internal/integration/usertype_string.go @@ -0,0 +1,24 @@ +// Code generated by "stringer -type=UserType"; DO NOT EDIT. + +package integration + +import "strconv" + +func _() { + // An "invalid array index" compiler error signifies that the constant values have changed. + // Re-run the stringer command to generate them again. + var x [1]struct{} + _ = x[Unspecified-0] + _ = x[OrgOwner-1] +} + +const _UserType_name = "UnspecifiedOrgOwner" + +var _UserType_index = [...]uint8{0, 11, 19} + +func (i UserType) String() string { + if i < 0 || i >= UserType(len(_UserType_index)-1) { + return "UserType(" + strconv.FormatInt(int64(i), 10) + ")" + } + return _UserType_name[_UserType_index[i]:_UserType_index[i+1]] +} From 498c4436ae7a02e53c8e7fb297edc3370a81aedc Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Fri, 28 Apr 2023 17:44:59 +0300 Subject: [PATCH 14/27] inegration tests for user email --- internal/api/grpc/user/v2/email.go | 6 +- .../grpc/user/v2/email_integration_test.go | 210 ++++++++++++++++++ 2 files changed, 211 insertions(+), 5 deletions(-) create mode 100644 internal/api/grpc/user/v2/email_integration_test.go diff --git a/internal/api/grpc/user/v2/email.go b/internal/api/grpc/user/v2/email.go index 95928e2e6..d1c91333e 100644 --- a/internal/api/grpc/user/v2/email.go +++ b/internal/api/grpc/user/v2/email.go @@ -21,11 +21,7 @@ func (s *Server) SetEmail(ctx context.Context, req *user.SetEmailRequest) (resp case *user.SetEmailRequest_ReturnCode: email, err = s.command.ChangeUserEmailReturnCode(ctx, req.GetUserId(), resourceOwner, req.GetEmail(), s.userCodeAlg) case *user.SetEmailRequest_IsVerified: - if v.IsVerified { - email, err = s.command.ChangeUserEmailVerified(ctx, req.GetUserId(), resourceOwner, req.GetEmail()) - } else { - email, err = s.command.ChangeUserEmail(ctx, req.GetUserId(), resourceOwner, req.GetEmail(), s.userCodeAlg) - } + email, err = s.command.ChangeUserEmailVerified(ctx, req.GetUserId(), resourceOwner, req.GetEmail()) case nil: email, err = s.command.ChangeUserEmail(ctx, req.GetUserId(), resourceOwner, req.GetEmail(), s.userCodeAlg) default: diff --git a/internal/api/grpc/user/v2/email_integration_test.go b/internal/api/grpc/user/v2/email_integration_test.go new file mode 100644 index 000000000..91c4806b2 --- /dev/null +++ b/internal/api/grpc/user/v2/email_integration_test.go @@ -0,0 +1,210 @@ +//go:build integration + +package user_test + +import ( + "fmt" + "testing" + "time" + + "github.com/muhlemmer/gu" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "github.com/zitadel/zitadel/internal/integration" + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" + user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" + "google.golang.org/protobuf/types/known/timestamppb" +) + +func createHumanUser(t *testing.T) *user.AddHumanUserResponse { + resp, err := Client.AddHumanUser(CTX, &user.AddHumanUserRequest{ + Organisation: &object.Organisation{ + Org: &object.Organisation_OrgId{ + OrgId: Tester.Organisation.ID, + }, + }, + Profile: &user.SetHumanProfile{ + FirstName: "Mickey", + LastName: "Mouse", + }, + Email: &user.SetHumanEmail{ + Email: fmt.Sprintf("%d@mouse.com", time.Now().UnixNano()), + Verification: &user.SetHumanEmail_ReturnCode{ + ReturnCode: &user.ReturnEmailVerificationCode{}, + }, + }, + }) + require.NoError(t, err) + require.NotEmpty(t, resp.GetUserId()) + return resp +} + +func TestServer_SetEmail(t *testing.T) { + userID := createHumanUser(t).GetUserId() + + tests := []struct { + name string + req *user.SetEmailRequest + want *user.SetEmailResponse + wantErr bool + }{ + { + name: "default verfication", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "default-verifier@mouse.com", + }, + want: &user.SetEmailResponse{ + Details: &object.Details{ + Sequence: 1, + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + { + name: "custom url template", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "custom-url@mouse.com", + Verification: &user.SetEmailRequest_SendCode{ + SendCode: &user.SendEmailVerificationCode{ + UrlTemplate: gu.Ptr("https://example.com/email/verify?userID={{.UserID}}&code={{.Code}}&orgID={{.OrgID}}"), + }, + }, + }, + want: &user.SetEmailResponse{ + Details: &object.Details{ + Sequence: 1, + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + { + name: "template error", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "custom-url@mouse.com", + Verification: &user.SetEmailRequest_SendCode{ + SendCode: &user.SendEmailVerificationCode{ + UrlTemplate: gu.Ptr("{{"), + }, + }, + }, + wantErr: true, + }, + { + name: "return code", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "return-code@mouse.com", + Verification: &user.SetEmailRequest_ReturnCode{ + ReturnCode: &user.ReturnEmailVerificationCode{}, + }, + }, + want: &user.SetEmailResponse{ + Details: &object.Details{ + Sequence: 1, + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + VerificationCode: gu.Ptr("xxx"), + }, + }, + { + name: "is verified true", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "verified-true@mouse.com", + Verification: &user.SetEmailRequest_IsVerified{ + IsVerified: true, + }, + }, + want: &user.SetEmailResponse{ + Details: &object.Details{ + Sequence: 1, + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + { + name: "is verified false", + req: &user.SetEmailRequest{ + UserId: userID, + Email: "verified-false@mouse.com", + Verification: &user.SetEmailRequest_IsVerified{ + IsVerified: false, + }, + }, + wantErr: true, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := Client.SetEmail(CTX, tt.req) + if tt.wantErr { + require.Error(t, err) + } else { + require.NoError(t, err) + } + integration.AssertDetails(t, tt.want, got) + if tt.want.GetVerificationCode() != "" { + assert.NotEmpty(t, got.GetVerificationCode()) + } + }) + } +} + +func TestServer_VerifyEmail(t *testing.T) { + userResp := createHumanUser(t) + tests := []struct { + name string + req *user.VerifyEmailRequest + want *user.VerifyEmailResponse + wantErr bool + }{ + { + name: "wrong code", + req: &user.VerifyEmailRequest{ + UserId: userResp.GetUserId(), + VerificationCode: "xxx", + }, + wantErr: true, + }, + { + name: "wrong user", + req: &user.VerifyEmailRequest{ + UserId: "xxx", + VerificationCode: userResp.GetEmailCode(), + }, + wantErr: true, + }, + { + name: "verify user", + req: &user.VerifyEmailRequest{ + UserId: userResp.GetUserId(), + VerificationCode: userResp.GetEmailCode(), + }, + want: &user.VerifyEmailResponse{ + Details: &object.Details{ + Sequence: 1, + ChangeDate: timestamppb.Now(), + ResourceOwner: Tester.Organisation.ID, + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := Client.VerifyEmail(CTX, tt.req) + if tt.wantErr { + require.Error(t, err) + } else { + require.NoError(t, err) + } + integration.AssertDetails(t, tt.want, got) + }) + } +} From 40bf7e49cc46a152edce3a48b0160a5131d4d346 Mon Sep 17 00:00:00 2001 From: Silvan Date: Tue, 2 May 2023 10:46:44 +0200 Subject: [PATCH 15/27] fix: correct tracing in access interceptor (#5766) --- internal/api/http/middleware/access_interceptor.go | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/internal/api/http/middleware/access_interceptor.go b/internal/api/http/middleware/access_interceptor.go index 0de0e8c19..4e95a83f6 100644 --- a/internal/api/http/middleware/access_interceptor.go +++ b/internal/api/http/middleware/access_interceptor.go @@ -43,12 +43,10 @@ func (a *AccessInterceptor) Handle(next http.Handler) http.Handler { return next } return http.HandlerFunc(func(writer http.ResponseWriter, request *http.Request) { - ctx := request.Context() var err error - tracingCtx, span := tracing.NewServerInterceptorSpan(ctx) - defer func() { span.EndWithError(err) }() + tracingCtx, checkSpan := tracing.NewNamedSpan(ctx, "checkAccess") wrappedWriter := &statusRecorder{ResponseWriter: writer, status: 0} @@ -63,8 +61,13 @@ func (a *AccessInterceptor) Handle(next http.Handler) http.Handler { wrappedWriter.ignoreWrites = true } + checkSpan.End() + next.ServeHTTP(wrappedWriter, request) + tracingCtx, writeSpan := tracing.NewNamedSpan(tracingCtx, "writeAccess") + defer writeSpan.End() + requestURL := request.RequestURI unescapedURL, err := url.QueryUnescape(requestURL) if err != nil { From e0505b2defee141935b05e5d998b94bc8877ac9e Mon Sep 17 00:00:00 2001 From: Livio Spring Date: Tue, 2 May 2023 18:03:33 +0200 Subject: [PATCH 16/27] fix: use correct org id for external authentication actions (#5793) --- internal/api/ui/login/custom_action.go | 38 ++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/internal/api/ui/login/custom_action.go b/internal/api/ui/login/custom_action.go index 772017277..d6dbe6cdd 100644 --- a/internal/api/ui/login/custom_action.go +++ b/internal/api/ui/login/custom_action.go @@ -6,6 +6,7 @@ import ( "net/http" "github.com/dop251/goja" + "github.com/zitadel/logging" "github.com/zitadel/oidc/v2/pkg/oidc" "golang.org/x/text/language" @@ -14,6 +15,7 @@ import ( "github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/idp" + "github.com/zitadel/zitadel/internal/query" ) func (l *Login) runPostExternalAuthenticationActions( @@ -26,7 +28,21 @@ func (l *Login) runPostExternalAuthenticationActions( ) (_ *domain.ExternalUser, userChanged bool, err error) { ctx := httpRequest.Context() + // use the request org (scopes or domain discovery) as default resourceOwner := authRequest.RequestedOrgID + // if the user was already linked to an IDP and redirected to that, the requested org might be empty + if resourceOwner == "" { + resourceOwner = authRequest.UserOrgID + } + // if we will have no org (e.g. user clicked directly on the IDP on the login page) + if resourceOwner == "" { + // in this case the user might nevertheless already be linked to an IDP, + // so let's do a workaround and resourceOwnerOfUserIDPLink if there would be a IDP link + resourceOwner, err = l.resourceOwnerOfUserIDPLink(ctx, authRequest.SelectedIDPConfigID, user.ExternalUserID) + logging.WithFields("authReq", authRequest.ID, "idpID", authRequest.SelectedIDPConfigID).OnError(err). + Warn("could not determine resource owner for runPostExternalAuthenticationActions, fall back to default org id") + } + // fallback to default org id if resourceOwner == "" { resourceOwner = authz.GetInstance(ctx).DefaultOrganisationID() } @@ -394,3 +410,25 @@ func tokenCtxFields(tokens *oidc.Tokens[*oidc.IDTokenClaims]) []actions.FieldOpt actions.SetFields("claimsJSON", claimsJSON), } } + +func (l *Login) resourceOwnerOfUserIDPLink(ctx context.Context, idpConfigID string, externalUserID string) (string, error) { + idQuery, err := query.NewIDPUserLinkIDPIDSearchQuery(idpConfigID) + if err != nil { + return "", err + } + externalIDQuery, err := query.NewIDPUserLinksExternalIDSearchQuery(externalUserID) + if err != nil { + return "", err + } + queries := []query.SearchQuery{ + idQuery, externalIDQuery, + } + links, err := l.query.IDPUserLinks(ctx, &query.IDPUserLinksSearchQuery{Queries: queries}, false) + if err != nil { + return "", err + } + if len(links.Links) != 1 { + return "", nil + } + return links.Links[0].ResourceOwner, nil +} From c839cb3ce02a1687d72f439d1e6a63c56c06f3b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Tue, 2 May 2023 19:24:24 +0300 Subject: [PATCH 17/27] tie loose ends, documentation --- .github/workflows/integration.yml | 4 +- CONTRIBUTING.md | 15 ++++++ cmd/start/start.go | 14 ++++- .../api/grpc/user/v2/user_integration_test.go | 12 ++--- internal/integration/assert.go | 26 ++++++++-- internal/integration/assert_test.go | 51 +++++++++++++++++++ .../integration/config}/docker-compose.yaml | 2 +- internal/integration/integration.go | 24 ++++++++- 8 files changed, 132 insertions(+), 16 deletions(-) create mode 100644 internal/integration/assert_test.go rename {e2e/config/integration => internal/integration/config}/docker-compose.yaml (87%) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index 619379e1e..f3d360b18 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -9,7 +9,7 @@ on: - '**' jobs: - integration-tests: + run: strategy: matrix: db: [cockroach, postgres] @@ -36,7 +36,7 @@ jobs: - name: Download Go modules run: go mod download - name: Start ${{ matrix.db }} database - run: docker compose -f e2e/config/integration/docker-compose.yaml up --wait ${INTEGRATION_DB_FLAVOR} + run: docker compose -f internal/integration/config/docker-compose.yaml up --wait ${INTEGRATION_DB_FLAVOR} - name: Run zitadel init and setup run: | go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 60936beb7..3e47e7e4d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -199,6 +199,21 @@ When you are happy with your changes, you can cleanup your environment. docker compose --file ./e2e/config/host.docker.internal/docker-compose.yaml down ``` +#### Integration tests + +In order to run the integrations tests for the gRPC API, PostgreSQL and CockroachDB must be running and initialized. + +```bash +export INTEGRATION_DB_FLAVOR="cockroach" +docker compose -f internal/integration/config/docker-compose.yaml up --wait ${INTEGRATION_DB_FLAVOR} +go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml +go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml +go test -tags=integration -race -parallel 1 ./internal/integration ./internal/api/grpc/... +docker compose -f internal/integration/config/docker-compose.yaml down +``` + +The above can be repeated with `INTEGRATION_DB_FLAVOR="postgres"`. + ### Console By executing the commands from this section, you run everything you need to develop the console locally. diff --git a/cmd/start/start.go b/cmd/start/start.go index e51c7e4d6..bda2cc9ab 100644 --- a/cmd/start/start.go +++ b/cmd/start/start.go @@ -21,6 +21,7 @@ import ( "github.com/zitadel/saml/pkg/provider" "golang.org/x/net/http2" "golang.org/x/net/http2/h2c" + "golang.org/x/sys/unix" "github.com/zitadel/zitadel/cmd/key" cmd_tls "github.com/zitadel/zitadel/cmd/tls" @@ -341,10 +342,21 @@ func startAPIs( return nil } +func reusePort(network, address string, conn syscall.RawConn) error { + return conn.Control(func(descriptor uintptr) { + err := syscall.SetsockoptInt(int(descriptor), syscall.SOL_SOCKET, unix.SO_REUSEPORT, 1) + if err != nil { + panic(err) + } + }) +} + func listen(ctx context.Context, router *mux.Router, port uint16, tlsConfig *tls.Config, shutdown <-chan os.Signal) error { http2Server := &http2.Server{} http1Server := &http.Server{Handler: h2c.NewHandler(router, http2Server), TLSConfig: tlsConfig} - lis, err := net.Listen("tcp", fmt.Sprintf(":%d", port)) + + lc := &net.ListenConfig{Control: reusePort} + lis, err := lc.Listen(ctx, "tcp", fmt.Sprintf(":%d", port)) if err != nil { return fmt.Errorf("tcp listener on %d failed: %w", port, err) } diff --git a/internal/api/grpc/user/v2/user_integration_test.go b/internal/api/grpc/user/v2/user_integration_test.go index 157aa00fb..c389ee073 100644 --- a/internal/api/grpc/user/v2/user_integration_test.go +++ b/internal/api/grpc/user/v2/user_integration_test.go @@ -57,7 +57,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Profile: &user.SetHumanProfile{ @@ -97,7 +97,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Profile: &user.SetHumanProfile{ @@ -142,7 +142,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Profile: &user.SetHumanProfile{ @@ -188,7 +188,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Profile: &user.SetHumanProfile{ @@ -229,7 +229,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Email: &user.SetHumanEmail{ @@ -260,7 +260,7 @@ func TestServer_AddHumanUser(t *testing.T) { &user.AddHumanUserRequest{ Organisation: &object.Organisation{ Org: &object.Organisation_OrgId{ - OrgId: "211137963315232910", + OrgId: Tester.Organisation.ID, }, }, Profile: &user.SetHumanProfile{ diff --git a/internal/integration/assert.go b/internal/integration/assert.go index 512c006ad..336139298 100644 --- a/internal/integration/assert.go +++ b/internal/integration/assert.go @@ -13,13 +13,29 @@ type DetailsMsg interface { GetDetails() *object.Details } +// AssertDetails asserts values in a message's object Details, +// if the object Details in expected is a non-nil value. +// It targets API v2 messages that have the `GetDetails()` method. +// +// Dynamically generated values are not compared with expected. +// Instead a sanity check is performed. +// For the sequence a non-zero value is expected. +// The change date has to be now, with a tollerance of 1 second. +// +// The resource owner is compared with expected and is +// therefore the only value that has to be set. func AssertDetails[D DetailsMsg](t testing.TB, exptected, actual D) { wantDetails, gotDetails := exptected.GetDetails(), actual.GetDetails() - - if wantDetails != nil { - assert.NotZero(t, gotDetails.GetSequence()) + if wantDetails == nil { + assert.Nil(t, gotDetails) + return } - wantCD, gotCD := wantDetails.GetChangeDate().AsTime(), gotDetails.GetChangeDate().AsTime() - assert.WithinRange(t, gotCD, wantCD, wantCD.Add(time.Minute)) + + assert.NotZero(t, gotDetails.GetSequence()) + + gotCD := gotDetails.GetChangeDate().AsTime() + now := time.Now() + assert.WithinRange(t, gotCD, now.Add(-time.Second), now.Add(time.Second)) + assert.Equal(t, wantDetails.GetResourceOwner(), gotDetails.GetResourceOwner()) } diff --git a/internal/integration/assert_test.go b/internal/integration/assert_test.go new file mode 100644 index 000000000..49a694900 --- /dev/null +++ b/internal/integration/assert_test.go @@ -0,0 +1,51 @@ +package integration + +import ( + "testing" + + "google.golang.org/protobuf/types/known/timestamppb" + + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" +) + +type myMsg struct { + details *object.Details +} + +func (m myMsg) GetDetails() *object.Details { + return m.details +} + +func TestAssertDetails(t *testing.T) { + tests := []struct { + name string + exptected myMsg + actual myMsg + }{ + { + name: "nil", + exptected: myMsg{}, + actual: myMsg{}, + }, + { + name: "values", + exptected: myMsg{ + details: &object.Details{ + ResourceOwner: "me", + }, + }, + actual: myMsg{ + details: &object.Details{ + Sequence: 123, + ChangeDate: timestamppb.Now(), + ResourceOwner: "me", + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + AssertDetails(t, tt.exptected, tt.actual) + }) + } +} diff --git a/e2e/config/integration/docker-compose.yaml b/internal/integration/config/docker-compose.yaml similarity index 87% rename from e2e/config/integration/docker-compose.yaml rename to internal/integration/config/docker-compose.yaml index 85d68e4a2..a43cecf33 100644 --- a/e2e/config/integration/docker-compose.yaml +++ b/internal/integration/config/docker-compose.yaml @@ -3,7 +3,7 @@ version: '3.8' services: cockroach: extends: - file: '../localhost/docker-compose.yaml' + file: '../../../e2e/config/localhost/docker-compose.yaml' service: 'db' postgres: diff --git a/internal/integration/integration.go b/internal/integration/integration.go index 545066f05..39873f353 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -41,6 +41,11 @@ var ( postgresYAML []byte ) +// UserType provides constants that give +// a short explinanation with the purpose +// a serverice user. +// This allows to pre-create users with +// different permissions and reuse them. type UserType int //go:generate stringer -type=UserType @@ -49,11 +54,13 @@ const ( OrgOwner ) +// User information with a Personal Access Token. type User struct { *query.User Token string } +// Tester is a Zitadel server and client with all resources available for testing. type Tester struct { *start.Server @@ -113,7 +120,7 @@ func (s *Tester) pollHealth(ctx context.Context) (err error) { } const ( - SystemUser = "integration1" + SystemUser = "integration" ) func (s *Tester) createSystemUser(ctx context.Context) { @@ -169,6 +176,7 @@ func (s *Tester) WithSystemAuthorization(ctx context.Context, u UserType) contex return metadata.AppendToOutgoingContext(ctx, "Authorization", fmt.Sprintf("Bearer %s", s.Users[u].Token)) } +// Done send an interrupt signal to cleanly shutdown the server. func (s *Tester) Done() { err := s.GRPCClientConn.Close() logging.OnError(err).Error("integration tester client close") @@ -177,6 +185,20 @@ func (s *Tester) Done() { s.wg.Wait() } +// NewTester start a new Zitadel server by passing the default commandline. +// The server will listen on the configured port. +// The database configuration that will be used can be set by the +// INTEGRATION_DB_FLAVOR environment variable and can have the values "cockroach" +// or "postgres". Defaults to "cockroach". +// +// The deault Instance and Organisation are read from the DB and system +// users are created as needed. +// +// After the server is started, a [grpc.ClientConn] will be created and +// the server is polled for it's health status. +// +// Note: the database must already be setup and intialized before +// using NewTester. See the CONTRIBUTING.md document for details. func NewTester(ctx context.Context) *Tester { args := strings.Split(commandLine, " ") From 5f0c1b52902dbffd9b6f945cff1f6e7e88b681a4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim=20M=C3=B6hlmann?= Date: Wed, 3 May 2023 15:10:27 +0200 Subject: [PATCH 18/27] resolve comments --- .github/workflows/integration.yml | 5 +++-- CONTRIBUTING.md | 6 +++--- internal/integration/integration.go | 10 +++++++--- 3 files changed, 13 insertions(+), 8 deletions(-) diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml index f3d360b18..8f7ba48a1 100644 --- a/.github/workflows/integration.yml +++ b/.github/workflows/integration.yml @@ -16,7 +16,8 @@ jobs: runs-on: ubuntu-20.04 env: DOCKER_BUILDKIT: 1 - INTEGRATION_DB_FLAVOR: ${{ matrix.db }} + INTEGRATION_DB_FLAVOR: ${{ matrix.db }} + ZITADEL_MASTERKEY: MasterkeyNeedsToHave32Characters steps: - name: Set up Go uses: actions/setup-go@v3 @@ -40,7 +41,7 @@ jobs: - name: Run zitadel init and setup run: | go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml - go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml + go run main.go setup --masterkeyFromEnv --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml - name: Run integration tests run: go test -tags=integration -race -parallel 1 -v -coverprofile=profile.cov -coverpkg=./... ./internal/integration ./internal/api/grpc/... - name: Publish go coverage diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3e47e7e4d..b17d42c0a 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -201,13 +201,13 @@ docker compose --file ./e2e/config/host.docker.internal/docker-compose.yaml down #### Integration tests -In order to run the integrations tests for the gRPC API, PostgreSQL and CockroachDB must be running and initialized. +In order to run the integrations tests for the gRPC API, PostgreSQL and CockroachDB must be started and initialized: ```bash -export INTEGRATION_DB_FLAVOR="cockroach" +export INTEGRATION_DB_FLAVOR="cockroach" ZITADEL_MASTERKEY="MasterkeyNeedsToHave32Characters" docker compose -f internal/integration/config/docker-compose.yaml up --wait ${INTEGRATION_DB_FLAVOR} go run main.go init --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml -go run main.go setup --masterkey MasterkeyNeedsToHave32Characters --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml +go run main.go setup --masterkeyFromEnv --config internal/integration/config/zitadel.yaml --config internal/integration/config/${INTEGRATION_DB_FLAVOR}.yaml go test -tags=integration -race -parallel 1 ./internal/integration ./internal/api/grpc/... docker compose -f internal/integration/config/docker-compose.yaml down ``` diff --git a/internal/integration/integration.go b/internal/integration/integration.go index 39873f353..67ef9d60b 100644 --- a/internal/integration/integration.go +++ b/internal/integration/integration.go @@ -72,10 +72,14 @@ type Tester struct { wg sync.WaitGroup // used for shutdown } -const commandLine = `start --masterkey MasterkeyNeedsToHave32Characters` +const commandLine = `start --masterkeyFromEnv` + +func (s *Tester) Host() string { + return fmt.Sprintf("%s:%d", s.Config.ExternalDomain, s.Config.Port) +} func (s *Tester) createClientConn(ctx context.Context) { - target := fmt.Sprintf("localhost:%d", s.Config.Port) + target := s.Host() cc, err := grpc.DialContext(ctx, target, grpc.WithBlock(), grpc.WithTransportCredentials(insecure.NewCredentials()), ) @@ -126,7 +130,7 @@ const ( func (s *Tester) createSystemUser(ctx context.Context) { var err error - s.Instance, err = s.Queries.InstanceByHost(ctx, "localhost:8080") + s.Instance, err = s.Queries.InstanceByHost(ctx, s.Host()) logging.OnError(err).Fatal("query instance") ctx = authz.WithInstance(ctx, s.Instance) From 53654cb44a4362d4121b4e1aeccb54342b74ae71 Mon Sep 17 00:00:00 2001 From: mffap Date: Wed, 3 May 2023 15:13:07 +0200 Subject: [PATCH 19/27] docs: instances, clean-up (#5796) * instances * delete rate limits * service users * serviceusers * serviceusers --- docs/docs/apis/ratelimits/ratelimits.md | 10 ---------- docs/docs/concepts/structure/instance.mdx | 2 ++ docs/docs/examples/call-zitadel-api/dot-net.md | 2 +- docs/docs/examples/call-zitadel-api/go.md | 2 +- .../guides/integrate/access-zitadel-apis.md | 4 ++-- .../{serviceusers.md => private-key-jwt.md} | 2 +- docs/sidebars.js | 9 ++++++++- docs/static/img/concepts/objects/instances.png | Bin 0 -> 331608 bytes 8 files changed, 15 insertions(+), 16 deletions(-) delete mode 100644 docs/docs/apis/ratelimits/ratelimits.md rename docs/docs/guides/integrate/{serviceusers.md => private-key-jwt.md} (99%) create mode 100644 docs/static/img/concepts/objects/instances.png diff --git a/docs/docs/apis/ratelimits/ratelimits.md b/docs/docs/apis/ratelimits/ratelimits.md deleted file mode 100644 index d01b53b7e..000000000 --- a/docs/docs/apis/ratelimits/ratelimits.md +++ /dev/null @@ -1,10 +0,0 @@ ---- -title: ZITADEL Cloud Rate Limits ---- - -Rate limits are implemented according to our [rate limit policy](/legal/rate-limit-policy.md) with the following rules: - -| Path | Description | Rate Limiting | One Minute Banning | -|--------------------------|----------------------------------------|--------------------------------------|----------------------------------------| -| /ui/login* | Global Login, Register and Reset Limit | 10 requests per second over a minute | 15 requests per second over 3 minutes | -| All other paths | All gRPC- and REST APIs as well as the ZITADEL Customer Portal | 10 requests per second over a minute | 10 requests per second over 3 minutes | diff --git a/docs/docs/concepts/structure/instance.mdx b/docs/docs/concepts/structure/instance.mdx index 825af63be..ce4eb9953 100644 --- a/docs/docs/concepts/structure/instance.mdx +++ b/docs/docs/concepts/structure/instance.mdx @@ -14,6 +14,8 @@ which in turn can represent your own company (e.g. departments), your business c Read more about how to configure your instance in our [instance guide](/guides/manage/console/instance-settings). +![Two instances with each organizations in it using the same database](/img/concepts/objects/instances.png) + ## Multiple Virtual Instances ZITADEL has the concept of virtual instances. diff --git a/docs/docs/examples/call-zitadel-api/dot-net.md b/docs/docs/examples/call-zitadel-api/dot-net.md index 8aeafc563..31e7ce7cf 100644 --- a/docs/docs/examples/call-zitadel-api/dot-net.md +++ b/docs/docs/examples/call-zitadel-api/dot-net.md @@ -17,7 +17,7 @@ All that is required, is a service account with an Org Owner (or another role, d However, we recommend you read the guide on [how to access ZITADEL API](../../guides/integrate/access-zitadel-apis) and the associated guides for a basic knowledge of : - [Recommended Authorization Flows](../../guides/integrate/oauth-recommended-flows.md) - - [Service Users](../../guides/integrate/serviceusers.md) + - [Service Users](../../guides/integrate/serviceusers) > Be sure to have a valid key JSON and that its service account is either ORG_OWNER or at least ORG_OWNER_VIEWER before you continue with this guide. diff --git a/docs/docs/examples/call-zitadel-api/go.md b/docs/docs/examples/call-zitadel-api/go.md index eebef207b..52435240d 100644 --- a/docs/docs/examples/call-zitadel-api/go.md +++ b/docs/docs/examples/call-zitadel-api/go.md @@ -14,7 +14,7 @@ All that is required, is a service account with an Org Owner (or another role, d However, we recommend you read the guide on [how to access ZITADEL API](../../guides/integrate/access-zitadel-apis) and the associated guides for a basic knowledge of : - [Recommended Authorization Flows](../../guides/integrate/oauth-recommended-flows.md) - - [Service Users](../../guides/integrate/serviceusers.md) + - [Service Users](../../guides/integrate/serviceusers) > Be sure to have a valid key JSON and that its service account is either ORG_OWNER or at least ORG_OWNER_VIEWER before you continue with this guide. diff --git a/docs/docs/guides/integrate/access-zitadel-apis.md b/docs/docs/guides/integrate/access-zitadel-apis.md index 77f39392f..2509c0724 100644 --- a/docs/docs/guides/integrate/access-zitadel-apis.md +++ b/docs/docs/guides/integrate/access-zitadel-apis.md @@ -19,7 +19,7 @@ On each level we have some different Roles. Here you can find more about the dif ## Add ORG_OWNER to Service User -Make sure you have a Service User with a Key. (For more detailed informations about creating a service user go to [Service User](serviceusers.md)) +Make sure you have a Service User with a Key. (For more detailed informations about creating a service user go to [Service User](serviceusers)) 1. Navigate to Organization Detail 2. Click the **+** button in the right part of console, in the managers part of details @@ -31,7 +31,7 @@ Make sure you have a Service User with a Key. (For more detailed informations ab ## Authenticating a service user In ZITADEL we use the `urn:ietf:params:oauth:grant-type:jwt-bearer` (**“JWT bearer token with private key”**, [RFC7523](https://tools.ietf.org/html/rfc7523)) authorization grant for this non-interactive authentication. -This is already described in the [Service User](serviceusers.md), so make sure you follow this guide. +This is already described in the [Service User](./serviceusers), so make sure you follow this guide. ### Request an OAuth token, with audience for ZITADEL diff --git a/docs/docs/guides/integrate/serviceusers.md b/docs/docs/guides/integrate/private-key-jwt.md similarity index 99% rename from docs/docs/guides/integrate/serviceusers.md rename to docs/docs/guides/integrate/private-key-jwt.md index 278e4d908..a02f48b37 100644 --- a/docs/docs/guides/integrate/serviceusers.md +++ b/docs/docs/guides/integrate/private-key-jwt.md @@ -1,5 +1,5 @@ --- -title: Service Users +title: Private Key JWT --- This is a guide on how to create service users in ZITADEL. You can read more about users [here](/concepts/structure/users.md). diff --git a/docs/sidebars.js b/docs/sidebars.js index 2d7bc5578..41ece73da 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -175,9 +175,16 @@ module.exports = { { type: "category", label: "Authenticate Service Users", + link: { + type: "generated-index", + title: "Authenticate Service Users", + slug: "/guides/integrate/serviceusers", + description: + "How to authenticate service users", + }, collapsed: true, items: [ - "guides/integrate/serviceusers", + "guides/integrate/private-key-jwt", "guides/integrate/client-credentials", "guides/integrate/pat", ], diff --git a/docs/static/img/concepts/objects/instances.png b/docs/static/img/concepts/objects/instances.png new file mode 100644 index 0000000000000000000000000000000000000000..6ab053a1e1bfc143addb0f9fa0a6ac8844fcb5b1 GIT binary patch literal 331608 zcma&NbzD`?);J7^bV@fOAky6+Eg%RY4TtVScOxL(0+Q0*U5D=Ojzf3HAqC&#z0dR9 zuiW1s@A>S_o;`ck%$hYbs|iv3^Z^}(7zG9f23;;{vHVdT2pUU6$1l< zCS)!yt|%iePN`^bV`6S;3Jt+kdda3VHA$3{{}qN+1Yxv2cqlehqq6cd%n#q|)9n?ful-95 zpX^J0u7A&EjSxt?!BAFWnO@{J!v$l)d{sN|{w@X+Y!9|q%2bckf7$ekkh1%7n^!BO zc#HQ-$PJz4tIY+hdN>i)U3;1Z7&C1@!R+7!bS_T!*Us4I0aP%YL|6|5xN>Xasj!t~ zHQ3^ebEYOw8L^K%Bg3Nd%sd`g47*u$TY8zwsbfDceDXGZ68t%HB2GIa4> zo&Ir-4=z%cVv255M$R`8rBWq^m5p8(#N0+-LP@ zB?^YY@85chkA_fkUR?HY?;!C_&^MQ}zGc%+q9}>)Q|ZRs^#i;LR+o9f4`*&M-L8G> zw}!R7TxkmTS;q&^1a-smdFt^ldNJyPb})XpYp+`#zyD7 zgmJ2?9WxJ=DiLNYyaX&a5&{~fKNpT1Oryv=cxwE`X`E2zS5#_B5~Q!Op+tl+S$o(W zKsY)CA2Di}$qqZwP#su0zh85rs%}nj8lhmSo?yW<_zgHLd_%eY*nyPXd|#64UpIp2|uCHEN)6Qygv#1&;g_@DdWYt zAy4dc@#w@6LtKBoPMjHQ3v8~CxcCy6E%J66Q)Qd#vQK-BTXE_IX6IuDzj80c?#K^XVzuZ&uF^@0rH={3K({VCD{2O~GcMBj4%m-E<#o+4zeUjIzFM1=9~yMK7V^xCD0gsqrEwf>!Vno5S_%|8vpyVM;k6BW7BR# zeWUy=E%-gqh;ktqDdzQ5G@mqI6`DqvrI=<6?l+W9)lSjQcMSgM7}8lIa(< zFNX#B1ulg))6>(8)6Fv*)88zrr&WuOKMNFJiyUV+MK<~KYk7q?$$7=xb3--{>Ze!7 z%{WOkDVct%N^40JXa3At$@d!10P+HDId6$MxaheKxR`;>(>Z3Ez$(r@b9|tx*~wgU z!9up=MAd`=(5}|ROvQrBd}aJ#Di0Vn9y!50u2aw={*ZdjLH0c|;!`k&u4&n*$LDp6+eW{i^MC^ zyYXxcDc(Q%fB zZM~(3Ysxub)-v%fJ1w(G+$-oJ@CW(|&s80p#gQJVjo^%HwOxu`dPt#6V#vHv#DGjJ z`4_J#ktyvdyu1(cppiY3Clj%1Jd?iRG>$7mMk!%KuI%^;ptU8rH8aPm5!m`^p>vjM zAgkM;zDMX|5zQ3)kbQu0m~nZ0(hOa(xoWLyed)VdxkJ)Jm08o0)us8xocZBu^9nZ; zpx#g=Q(b9o3-CiVYDJ2fnw85;n%P**ShcRH&j75`nQgyafn&p7FuyxL3fUZ=Guj)p zOLAIbRiUH6*e0Bz!v4b9ec$R6{7y;Qy0N#qIK4djGJXpcNwaL292)e~}c5$8JV=Io*2 zX6&lswxV~yZkU9cWZHrZ76o&(V0!pmonO7XTG+izD37&CJH=QvePi_jMar7!u79jE z>ac#Gd@6lCeZ6g>jiX)gD~Tf68S6NEG(`i~*}I{%_@TuCccQIV)X4mVS82yxX`{mA z;V*+;CcLZ<+WSTwP=ek_VS$}Yrb)6$vV+adb>zzXT9Dn-{1!bDIjFC2{YuJJQZC9Y zLODt_paHAR$&)hz7X>%PhCE!BHl!fwrZ#@p9}f z_W9Jt81*<#@7p73*95}22Hx{e-vQql3u!bs+~n-#FCOC7;*8(@EbRJ{pRXg$A&Zm8 zl@~i1J5`@|6M;e0V(&Od7{!)rSQb@FCg66|XeYIK(MLv9&X*?O?St_84UOT4UIJ^h z`sAgAfq|02qwPw!Vpo=1-(PsYtbNn1Khq@rLB&Ar1DVQ(pA>D(pS33d5o=n8%A3%ZJ6qho*_((UP6Vg z#YZk#np~cpyU`_9igcFL)z)^aj^vlCgSW=JLx4es!8XP%Cc)o_!MbX{7u)E7pC1gy zdJYq?5`uqd>k?NuKCmAf_Y9FUQPehjzciFw2(4%6D;HE-*QwOUbBecA**z$ji2#<& zGHP5JTa7LP<3-~^#o@*H$}PHmx-M>BYxhm)v?PN(o{MzLt`1-3^X@HD4njw|M$QJEH{4d;IjgI_(BD7A93g)=KdX|1)UH5XM}kKnLM^U(@5(G zA|@ZjqVxPO+imQYH(^mqQKLeOJ|(y6t9Iw-X*dgS$!o)H8XednTQjo_v)5l@@<-D! zguE`$4u>nNy-hLGFZt#i)7)Cu{dNQHxufd*+dO`GSFBXGJY~)G^nL^XG31xqm+3U%dzEgwPeM|7dYAW_2ioqARG&)K>cgykS~(7x*R2;LXM`7}2A2GftCMo7-pbr<_|BCKz+Pq%4DI8&(5)#AElC+V=dYbA3fAuY-q3=#Xa z;h?aezUZUcQsd#aR^HyW=>Ek6q$8sPY16swJsYX3Ke5reH+VQ{V{pB>^IAac!d!aK z{yyz4?qYv`S4LM_SJkKX_u?<6i=~w(zb9`twN8~^D0&rH8X7RoU<4Q@bQpfY^v@p{ z#(YBk=*CJ=;Gb|*)3EV+aK7^2{wAM$@!Q%Orot3e&|B1Ngbk*95=Qz8p&(^RkBqnY z-Dv!U*tgxU5y-k6sO%kW?*=(`G3|aY!!;HO+%`TEOeK37gN|V1q4q?mvAT?jygUp& zw2TA;4@(U55?X?V-omgX|5uiRrGt6#uX;Ebm>_c)`2T713Hto=i-z8RVE+Al@jVa* z5&HHDdb?)8{cmeT*NhkcTZX@feuEMHA}%8XeSR^tH#W9*Ftc&IK4x}@Rv_C-YdFBb z;M4rMVP%x4&!GL!n=7k3s>{pq8`@Yg>l@h^7&E(C+5YJVM$nZXTC_5D)TeZ{vb1*K zcNL=gR||e<`A;l&%4F^E=HH$CZ$A>o z4ul%m4Ka z1r_{L%dcqeYHXFbEpB8wBu*`bJoUZz`KuBY zQnk>f(;{;%^R%>9Ii0@;r5^u{JZ&+n`f9vZ=QO9``<%>GltbzL%zJs7M~&jhQpc9D zF^<1x6W!iUt5}SX8(4aJV((JIu?`k%BbTm zarsjaH-TYR;zG-`EK220) zVXd;7b=4k9ZTuQ(GXFRn(t2xHdvf)?)b#rUvYK(k+<9sqZX!g@Kao}R!X&MAkovsX zHe@eNzS-o4Wrrl^OwI`qKU?1Db_3CjH`&7Uo;lJ~TQ8kr%pwC5imuwB0wjhS#sBrl;R?<#nmO2Vh9V%EP{d2h z84#s2H%Uyfd=R6#-#bq%;QLatt-(Q1F-ZegYu3C`k62xIg>Y#|KSBafs`iFpDw}^g z9ZLuC3;PHiKHF80H{$>+wd1C6>j;WkY85D!%uaNeX8t@Zo*mWSStDPXOCddc45kf3 zU%BO{AU?sFV|V9Y`kbq3enOv65%w3$k=ARHMC}#@dH0}i@|C8!g^n`Z9SXGhz4<4z zgO=U>Mbv5mG^L5@Z*^}>Stcta@9{P_`F^!Z-p};jqtmBuHqxW*&y9qYc4$$P8+MSi zaS?Qzh4pni7)jW%({bA$FYXz%&89SyuktL9wPoF<4MJocR9gLno)IK0R76d}NNSH3 zGqFur70pgJkCY*4&rhB6;kIDugfMK|Q#UPXEXKyP#T1@@%C(HaEf8N@Pi8k zD5%SBl~hU6>v%1HUOW`Bu7vsVS^r)#8O8Ty(rp`en{F4fucs0mO?CzVYsB0R0E|~$ zmM~T7gw2)FBQ3i%#Ha?G*UGqkH^XtU0$EJlUpLwI#n<^ZWYM=}FQ;wa1^sngV2~N9 z;3^4^kACn8rQr0@^k9t<>BgGRMamlRvBXt7#GT;0w-KbB(kXmH-ff=`Prnb^sE?Vc z6z<)nV|O}-8P65&J@C$iWYUl(v3)i;Z6JG-Jrv8pkbW_zN5wL z{c;m%D3ol)G7@@ishh+8on#BbP!@SgmeQP?RBgz9eBNXC;XN}Zl0VPAMH~^x)n(6R zU4uIGQp$>-+wEKj(;>hHdGS}PosWG;_su}ch;ZK7Q7pc5Rm`)U^%}`hRIswh9NJO?{SCktFX;7sV+r*^)eS+fM#VUZW)Q8j9Jr^uHxhb;PIe- zWGw31`cMrtZ@QE8yl3Qwyn+kcN^6LI<+pGy1Hqs5pg^XXE=F^qrv6@wmg>8(G~{Zj zFL&7{oVJVeW2ledHKteH=K=$vQ)il++~K9Ppk#wvAYSzu5eL2g#N14}YQ!lOQ{bEBtN4=~bi-`=o z&vf=8*G`KJp_p9!IM}^Agf3G)QeUm}^Xp;nuYyX>GM;{L% z`5uYx^678_^;4~hHDlS?`TBuTWP?&>>ZnF$`pEOGC{8(>BB_8S^YYO7anF$BQKo0N zBuBst!)#uOZ!%99Q#m>T$7^HL?)PxZ=P2vM(~s%(N+ofjn)wZjghZ!ZMg*Ff6`9OGcuJSE>zlTp9N* zf$_KUI^*7hblJggRo;e{;H!I97p2-(B|cBQ!Nc=8W&zsY+vmHZ_0|7WaiH>hyaAp* zq{p5H#-E!Gp$);XIb4D8U?4Gv<>v>~nQrzS-uFo#pzoLWSyIXUDzQ_d~3yFDTlz(;4my_Lw9 z1<34B#)yEJRzV+pvYgD%TzhA=iB}fwLhH0_@a? zkG$E`(PW-+5fd8`-=!4b& zl;G{UBfBvXFTQ+gJdAUrC6pu>=RXs4J{w+*qRC^~mB<G0^X8@AA#?-HqoI@=vfE%UF~eI-nPtmGD~ z^sphM*vccUE5GUzoxcB8*sii2{R84>D_;RKb?sbQ{8jppyNok^_3f3RUc*Nn>bE2O z3XR0)!al<94M%-F8xV#$=-wupeIncQ^0rEKL$R54G7@CA>Vqum7dxeVT*NiZH1FbD z?&{TV-69rRSU)cKW0RkMIK_T{h?1j zk$BDLnOb;SF!Ep*+1Gb$M|64i%<9_Hf}8oK7vnk{t`JAp>jsMdte_0Lc>I=V6OJIA z-)gRsuHLYumM3>xoldJQ0@;A7h1?1piOl*Ti^ns()-5{%sqOpv=Z}dDQ>^XulA5K` ztv&p+<%K3kd4^}lVoT-U7Ut>Nl^z-jCd|Yl);QPDoHB+(WcRJIg?w;1 zbHzh@^M5iv7t-u-V2>*Bedt#B))qCDD8PxjoDgRity`Uo;xYTR)+dtA8c84lWtl2EwJFyIh#&M-AZ zXE@)Wt89*zU}-i&*ZrF?+T?GV&hEY->~)vsES^TrlREY?66p^#Kk*L*=KMxqdU^i@ zsyElx$Rpk+D!XLKFF<*RN!j7FA|@@%iGL%j>3Cyq(@4s7wqlt+8$!@~7fsBOeH$AE z68o3G1shFN|5Ek8!sD~~jyh`U^tzFm&iR_B;BT-?7!l^X<7~cpOs;z?hBG#C^2pB( zPaSk>kD~QgzuG}Q?#hCt$^v?9Y9Ly5Yb`C(nTwrikKR|9`M>ZK%;i(ZtU_ttC zURxoJoS0E!-={8u7?9;(8~x*R0M@6)aqIUnyckZ7ajLsnBl4O^dU1B$Vhc-M>W*2u zyGT7-X%j7_6kU$Yab0oTqdUFjTefyl^gAs48)G`tZ4EV|nD}IN)rV@~m(FdYjwRe; zhe>rcRkNGiEzB67Fp|0Umcl>vaNXmObea=6nCV*X1bVC`pUKx*qgA@e+Tb5Qt*J@@ zFvE+T728y^yM+H*c6Df=u1FuywlR=NI7xvQtvajQk;61IfgxTG=rJ>w!@{Yw<`PO7 z_P>radU(x{jWJ_n%CwnUv#!B9+YvGUD^Gu#r>>PE?nwZLUJK8z3{ii$1 zi2QpQXV{`hK+X}|4f=6Q`Wt zH$=m$v67GErYDOxc-fXoq7qP?$2`g$SV|^UUblYd$sBjwxA^gqa5o6~DCfJ?4fcYA zqj{bG^RpiKI>SEu%vL|-6G3Yx>C?yeOL>Oc(|Mcz{Q<Y}DoY98PG`k+&S(>3qyk zg)jT#rpb?Ir=2+b>tWL`!`voJP1gNkv$h-|vxN)+Hs;yPOogT8`P!%NzF~KA#YKMV z1#kqLfY_!9;3dtbrEr`R`SQ>yS#R9IUP+EFq{_SekJKg!>rz+WkQ7l&X01c{W@J!c zA<)fu;4CFHMG&&$Do5pqNMnlAIiQUNsw^bwwm0KgFMZ_a6#SAGzAK%EK2{hc(SGi&FJKFaMw7*-{ej(@Z;@s)dq{>d$t7UZ(m zGk?+5mvD1+`h&^~|6^m>p4wFS{m=-&Y|PWvUS}y;s)vi;HTrwKHCp3mzFw>6&W9@@-%#QaC*2E* zyFBFBzL7Yb9z82}bWVDVY5!5VaBVB`^uxvPg(Qpql_d8Bw41W-JmDR0l6vLuU-KJU z0o@l*i%sXs2j0Z*&z+^NyOoCPHoi#D{u~v^=^ECpi_G@Ti1NUSR&XK*otasjzKD|l zvXd9TirKzYzPxW*4_V&(*$r zmmrMVyBYkxtv(=a(#BNLLOQ{5tSPB1YtkJ4p8N5Mp{ zT9ffteYH=zk&qOhWc9vA=S%LXZx~V}nfenu$(&_sD4(vO2f7G+MY)xsGP5U{GIDqs z)KtIZKy7&Rbe&f{mWi2Qp-z(C>}n;Y=AJPYRj?<|ALO%E6Y}yercCLJK#6t8$ zaI{t&5r1Fpst4^CM?hGojVV?=msn#a8dx2-*Ve#yuXB7!&d9HUy8#QMlLKjD+H;02 z*xlJT%z@F;E499(AHr4`g1X6rJ^JGUYfww(QPo#@RV;eg*i-=DCK@#snbui?wiN0rHURts-D`O43rO)5AOLe|Pk@v3@M-uvy4Wcv{|ky~MAlwm^02 z&E?(Xtm4^uo2aIx=5z?Q?Oz@3v+Ct<;rlyuUueuH^GeP-#gDgTly)j)e`^W&4>a z!y1j;EKm;s{{$)eEE@lKWQ^0etP#uyfMvWFrwh4Yi!-#b#J?qvt4PM7fF*{-u=1s> zEw5CA1Fy}@2?lt@6~$pp7sn$hTJoQ&vZbljaQYhxK1`$*#C_;Jr%Lkl{nMN-@pqNS4!9~sEpPm=Q)`wUYXl{}s4}%k zREJMen9V46N!{Ze`?In=i=Ftwe$*TFoGC9-`$C3#e4wccVW>GeY9z~h^O|TSI$%BJ z;L}`1ohyah=ff9)>nB31c4>jAl5pe(2L$O zD5|mHx^}^ywgLD=^__}D!V)BI&xCxm2pLkdV6}Xjcd1I+O#1IpZAEsQH~MJjO{_)Y zf_+jfXu39+W@ZHQg+xbL{CwiWP14u#&5K4cb0!xX)hbv6@$gjuKbiaUn7N9|`(m>b zT7S9fqG$=Oy_s&?h%2BlFW*dVk?4A5Cwwo_J?C-Q;^f-41VzG2`onpy1gjX#vV!*v zXfc@K*86=n{(r?+{x~0`;dg54hB%4<>E5*}X&%`lX!=vB_tE1S*4N3x5pqiz8aQuw z*_@}?3P9i<(xP{OF_Ul|vivW!2o9_fBWnTH0Vu^8x*g@;1Fa-t>&MW+&2$JNq*zVf z$~b*ky@_vv4YYSVd6B@J^nBQ@IyWj!s%rWIgktJ8W}WH*+!E}I<5Ao=BbuXOTj%tF zbE@JlrQ4cD@y2w)k3Y}<4&zXdd%&9j9j~U!M-p~dEn|1DOm`m0OtuyW!PNANlD3uy znvH(a*DVo@#;VlGLK}_!TU?iF0bKCx7!2-woDc@zR6%?BeDxuE->ZTGT{gI6rP@4m zb>-Nm{Yi!8M<@Y*1?pA zxX(5u?5jO1IFdGY`k6Hbe&uuY2O~5sKy87!0bzst z$cFU=cTR^^EbpvnWn&m{63LXQ?_KG}w6e*p*jlopRE~qpQJ^rFGZUQV5{{uuMdbNR zQzG!OlIbEwC9tSapnFmc&+D9Eul~3-f#0b2fr?{yFY2k|<*w)BikqZbb;RESPLC3s zusWwdktW3`iN^LiUCC=^BALl7U{E5>r&>ivF;fuo-hqn?e^>{vI%EPQG9T{6N>{RXK%@$KvHR>nOrB(sE%`Gq<%@*&etm;Q zrzGhvv7ugwyc+O3en}A{FWB2BQ}DNHis1Eyr<=XI)_4{@wR}QRD;hEPMCGD&vP#d} zQSyFELmYoXe(sqH{<3;Gu+&rqy6M?0b)*y4H#Yc+Fg=_>O*QnCWDr($9URZA`i>eV zf?l(r7!uXvz!{MB5rQvcva?%-W$UbMQpLr%UwKYHNwwsOTc)`6txM4IE!xv`$1{od z75+ec?M1dkUO4c(6~vU}@f|;9+^L&&*)n8VFlnwRkO{t=*dD6`YXB7=!5_b~L5>=j zp480G%>HQc2@x5i|#G$0jsHHt`( zX{4zRL8F%ZO5vDOKiPfPe_`&P(oPqV2(}-geOQo{yqr%}_x75FYuvqSq>tN8Dm*N9 zmM2W{B?;M*U`;_r6GgK-$|5x2eYH?nnSx{}Atk=%?!g4tD9y$7UApZ0#K3T_FP;;4 zYn0n`pvfufPkWE&rNfP*_B&_oUEe z?U4x(;|scgwkjdlJjK+g!}L{MJaL?$mug&sAZ)>sL51K!DVn>#Ugm!ld=@Yc8Eei{{5K|QSi+j2MuVV>usq;KBm^KVTe@>}|>45o)a zj~h}$JrYN3nKIX_4Km!?G{uH_Eno|&)6Mc484?K_s_#pbenPK^k6Arq-K8Dy4(P;j zJ(?JK9AlnPwl&o*nxq5uMkyeyZaitcpU(U@JA(2S6rO}vN_Qa)J9dNP6}eS)n=dTH zb=nLfM~49%j!vniqfoKjaain7T5`{29`r-R?=E@*0J>t|pm43$w>}uyv4N zp1^mZfTE+nkw>*Kw3v_x8j3Xgp@Lo#a-w6~@4eE-`cg&3Q3O0pvsA0Pr)4mJmbbv`=46g*t zg-x11GS5WR{NsKQ-kwKZhbtW7RhWem=t8c%pl1zPJ-$p26-Hm#KpNOS5@|mc z&;entv*vPW#dO?I*LSbk)cwH_#*db_k#WW!C}CB3$=!&u8pO*ynkS1dW1gEN(IT5z zgk?z~Sm-Tn#4YFKEtoC53T5tQbxF;wegvip3#9c>%nXcKaB<-6o0qu8z$Q_V;5Ea%NLwN(Aq-k5xUJmkGGsX&J3c#aEuVjgt!NF0B&`Ja`hwE=O6&`jHT4`Cx7Ow~^ z$(jdvg|*412iwMpFGjcS}w_wo+9%=vJ#ak&E{7e zi~9Emn2Ullc!T8F5!I!OGu%9GufJ#JHN_qjz1?W2M+d(WnklAL_s=_)Yuix3kuOrQ zsx8wA5^~Bkmmd@BqlI!~-P}Vd8|@%(fXM(YpTXe-yZeCB&O3P8HzG-he+R{(c?=lv z!gb!Up1=eXq85q$DZz_L!N!XYC2o2S7gRZLhJKf<&Q#TS34MZGSCL{sTEK~=TF@(v zXze!5l*oX@S{#W|@&TFhckje(s-GGR)EJX>(GAa3ar&SPp4H`ZV0ZxUbxX(wUbD%W z#i}0O0Q0xkKQ4Dpu);svHLvDiH@Vm2LOeI8$Sy|O_Jt)+S&|9bLC?*-_AIKig@}}` zB~Yg|BU!?Vz(;bATouigVMukT4o>gq6?yQ>z_p54TBfLhFUk8oVbbIQU zH;DfA_>aVnmgYUymM7c{*oh#2mE~E36R|e2sWM@c3Qzr|iQI(z+}JX!1RzBivPqN1 zU)f^Nq$*!;8NFI#iP7b14PnkYqmovr?K#>A`B`DFhCWyK@;=*Cci@m1zheM(x*4Lk z?fJE8e}P(>$g5*n#)2kG2Njx=evVZL!;?exdpo%Hoyd3Fm~IIw2bZA zXPP_pxGVfDpi;&gq+3ntR88^Qb3>?cd%rP&mL*&_*x;84;~P9xtfBbq4E>{~1t1&| z6;YOklQ!1y`l#f_e0re(Rbv{1Yo_RB5Kj;B>{YS1aE-=7jm5hM++pn+0^@Xc2Og*@ zRtM#KCS{0>phkgh|1RSM%mkgqBR8rCz%sK!+b8rCABB=s*U@T1^j4QHLPnZ*9o zS?4>j?y8bQJs+2gR;C7a>JjW9Z!rw|eJxZ5YT^YlUs;uCdA!Ow$^m8TKQ5l6lJu@Y z)HXK=8&mYxvQ9j37c_b*PeEF7vnWz!k+NmrJ5^f;4L@36@%kx7@2)L4dwG_JT#u>1BYn6NS%M8eQ{+n zqCxk*)mzHq;$BuqpqLgC-;AGQxyS`dCMfn`q9Za@u`AQH3&fD5_*VSW_7m2eR@e2` z2&A!t1a)(Mxs*0?v)@z!$R&L)29w`8KjePxIBb1FUOQr@;g<9xZVBI%F^*^TWAXDS zX>|Kn$}`B%%@FLGiioyemv#j4GjB9w<2LgNQ->0b5OZ8>61Ar&imCCC=$-<@dWj4O40t2IB0yx}8jCj?c$7Fn-aQUG zTqXC_9cMG58V)=u$wW&?qGM2AT;6%*v=UnVh~|8}NDdcY``AGCBgXgxT5sug!~&Jp z6UEb3`+u3G2+Y1#y<7us>F;uZPhDQ8{f6Z=8j4lGIlXI(imHQ2PMr9IrI$tPg3^3o zdn9*!(Lq-4ku8;G@|=={d3|?ori8exo9yCZV(z3et$ay?Gb)RPsDeZ(;cS*j?@wyS zV({X0!1vco7yY}@U=-Ri6r(8DPowIUs1rx#rIc|&MT%g(_}5jZdD*|%w*D9_iN$BT z2+w^g)T|ZAXrHaPAVdC+J!WgRtCtR2O&?Y{d<7}qC95ELaMqw2O}`GGFg0Z|g|8~o zM%rxd2&>b)VLvG1B^PiG4+qFxI`6YR&LpvW-G`s~Hr;}xyYQ1h!HR+2J-6WAe z)8CD?)hcRou@dY=#MN?t5mG3HYhFW-Ln%gL32b!~T05ThP)g_3}{<`nr zLR}4L4zkc90_E(d%n=hx65H9C;k0!0zo~)X# zIIBue1iwxfOy99C_W`-Sc&5I2i|hSDk-wN5OMt(SS7?1(FUaxXrM>yf@}#B^^~mfD zCS#6nHZ)xhcX1*EUhohdpa<1d`9V8g6pJ9lFlbICd#?QOfN!?kyHvQ4Op+Mi%FTfw z8P5u;fG^@{s!sI2OA?BJK#xT%l#8(F*^#?A#(ytw6)#`}S{SU|&firB*9c zA60x(wB!J5Q4+}iq_Jt8W4=_W{$ZRYmSUmui&CZfB{PtSn9FQl?{>Cn28%pXx{I0q zIP~GB2pV=UBqPCs`{!A|E?r9nQj)zblR&8P_js7uwS}p9P*kfeaSwq zq^<=2%GD#XAKbRx3PN^IdzO?dO-WNR}r@cTnL4@QzKWmIU$CmS+W=!_OrX!)7-PlBt4wFZ7nl4^q)gA|KJT_cJ{OI zODgv2SVQl%9xuz-Jw5sF=A#K^I7QCpX2Yw^#r)y@ht;^9vmUmiF zbM>jDeSj5a9}jlIVQ}xWgnDQ)mk6cpm65zttre@=YWf^=Thp6)&{yE-ubpd^CLeu#3pfpM8|I&gke^%O((+v^u9 zDocCXWXR~i_KrXwhB15{gn z(MP4*LGnRp=|zE9AT-Y{@?6&QbfuYBs=GSGfXjVq&y>gcb!2UGXRyhgU+AX3c;}GN z^JZJbpbozSqI&r}t#q#>>itAWn># z51JfnAvvfm`7LNc|JM=RSFlJA#Yd+RQYSr1(mXQ^;BBczpnF5ZbPTBQ)L zdVJpsqDZO8$uq%#9UNn$sqQ1a(oXi#!7ki<=d!9Opd(&(u=);EGkkait$`Pc8l5seX~G`BEC1JXBI-5lnYib}x|FXCbX zP+$kroaiwWuhEoSORoo{g-(aEt1xLifQpf zUJX_Apmle*Uzgl#Y?6IUp^oUn%S|5YWTzD!RPRBphAKHG*A_z6?sJEWQK_F4&C2A( z`If7t8}Ax^RnHcKcM({I0R^TG>gD0LxhoSxhN?O}0DG`dSm~mcmcl}81hhP*VE}PfU;>pF7-?WyTerHKj zE~Pbdm28aUH~IzluA7&YSTe1vL3N0;&&MX8D;c>su7IV*F7j=(8u=COb1&kcRwt;a z5(qoUzk@@fYOQ#6p?^0oDN_Ej#Y`k|KTY zk~jBEOTYoaffEAKLn88L9P%_dZu{f!*YNVk6pm<(RpFjcgKV?Cx4^y4G{L^47$ z{5_E0c=71^+PN6nNKlzk)dN8Kp{$G`?5Y@%PJE0?n&{zZV+@Hr1IcO1~&X`K03=KMS6<+3NV(mpPkg6OD9#>BPq82%EaJ<*q|wvJ!%ccJX1-iDKFM5 zjGo%?5;SJxOd^%sZwA65E@Yl z_EX)&x8jdN-E#jRVk2mmx`x>2k11bGQS5k8%y7?@o<;;aC_i3A|NqhT)p1StU;B!P zNC>D%w@OKuN*aWcigbxI2on$(ElfZG>5xX0kQ!YZARsju>1alGY~)}gejoJyKCkET z{{H^ZzkIoOopY{po$H*>TVIru&3S~dXUMJl?vwF`mZ!)I(;iEq>%KD&O?W3eFO;YJ zoqMQchX2rWEBMk9Qxu$@ET>sqMq+63I0#gJ>7up z%uJU(cO}_;HD5URr8|Vqo5>tBX-`zkPtylpx99hSSzz6j8|$3ZwZ)asBWxk2$V)t5 zH|>&S6&MOUa4F(X+o0Ep;{5%LLXKvyknniStaX0*`$i)tO-%^k1 zxHf3irMva8-Rnlaq=X;c%{p4g4w;1q2-ehzG;t)V!U6w7mPZ^lK8*~skYS=QVYXfj zex=_OCb?HtI_$(3UMY}~4rH|{A1pQPP%(_K zC+Gj}r#lN`g4gJ?R9`>=Vr0lbga@_*%HS31*4GLRY$HSe90~doR_{r7^I31+IG-tP z$6YQ|Jo)@?p@qbX^VL0ORw|A) zer*U-`a1p2wP$_8?$M$5)?rMDM@D0)`Hd){jgrDU^~5ojAJ^R;z>e1Z4+hWum)O2} z^{&drZKI`C-O9%>jOAF<1>t>+U{QJHSh=?DJGQUIId*L}`f(&eyZMM` zVaCN03ZrG3DC$f&@_vgI%uV8_aU^D{Pmpd>`Pg3g;ID2spgyKBy)P7`19x4l?n;ts zxP_^Fs^7}AGV&4|T!AG2VuvcFe1JfeYdwhMR2fw_wJgfNo@x99wmURW_tX= zJ+26iqFP@`a@;GxHjH_MU}-TSD*e}k5!>w!`5 z@)CEBM+bNB((2@{dilR>V)CZ2Q|;|TLNo^vK0c|)r6~>6C9`h!J|0HhQRg3>Xuiuy z#Q42vfOOeXQRulzQ(tAd{lip#MTNO%FuoY?x1z=R+T0WvLj z7VqgBs$Gm-l&wXUxT%V+K`8(A|Kh1-Ip5&9lNaXLu8?6gsp`2R;ot0%b#m(>6idpi zG6$-nKJt-iD5acSxB6n3=Oqck273+fIYi23nobk|f^6sT5G7)93RBJA*Mv=bSgs8# zbJ1+8sp9v$fM`U;RoI;)A$rI@uZlx)r)upEhxX9r{@%vA@<%;2@gzd}JAX&5fb^?1 z+pfs68NLS#X|6j)qQ1J`!XBkA!{Me9?&hnjRPV)l^y|Z1Z>yIhD%>kIIKt<|^@Lsb z{6Fen(Oe@DvM=2;;3caAD2p|{i2|MrI?S1`@j4O(X?x9CyWONuuaH2~pS4vz{OGRe z+ZwID-MW$3ve7*f)bwAFPUaG^T>Z0HACGG4Z%5G6o_Gh=A#r51ds;4|q^+KWSFAvY z=mP|w#+*1(%Yik|xcANr*~4$XudrTT{2$ECDjf>I*IMXSl4LUI$=QQcGYb@iGrW@7ht-&{f_YD_DQF6B8U7tZ=tqbn#&ZlJ(Dz3&rQ{`yHo@)@ zjCDxH^F_f6+Jt~9Y@1C)zgE3GZAvWYw`fBS|1jQ{94tKqU7lS($5 zQ(i}*>q#(S&ubfG0@8M$%*)o4l|~a+1HJFhD@zSbOVA%F{$HX~fk^gd$@TzeH7iq< zYnm+R%h6E=Xl!-zFyCZ}gU6t<(CW+6z?f$tewD9Z^cC~<1_mRozqn936u7%SKopyW zrFK4jfRH`>3^4i4-9@+XwLG$7`)CvEC((26#%O)`eO1e~42yA#zn^4(EtlDUW&r?B zYmXg!7SH$00prN7He8s6iK~kd3wN7HcuK1dzMj2H)43t+x%Wkei18KO!%>{DXlbg< z+h~>In-OcJfz`Hqf)u99I^P^LAhCOgQ2_{b6I;VLF^0Tf9hE4Uer-WgUP<7vnklM; z;8<1RBzAp3jBP8#z1GdJKjZxB*5ciNp>YZsqTxKhw92tUFioG5^Jl}jg zFo|4tjUg{8nye1xS3yzFsD^&N&uf`W=DivG&N8-?Z^0N@>(?qdcF0;CGj8rQM&N1bCtCtxrl!F;nt=98)KkzGkdpkEgHy z?aHIB)@&_5D8ql&l0C*tSq?Gxi|g5M-tO;pAM#4hF=%yRdR*Ez<&|trIuB+ujeNIB z1z5-MuX%N~$tL>~!(?mPDgi^MXP=UP+c2kkc`}SE#G~U0tT4*u7)wQmn5e2i5dB^B ziBh1t?Bf_>eedngORU^MGhrLojxJ|k@N^`7ex=Pxzt!mJ;JOjzMGHC-P+uA8^R}{q z7mfDP-4o}{u|ynMY5dvME)XetSX~Is<5IGz!X_p~dG6+sK`~5izlwqX!pwdh)uAtJ z;?P)VWJdN#bj#&$+gR=;ZYb3*XBOuroo|%8ugdDLgI|%2lL}n z6)k(%@d06 zwu1|$@FSKqtA8SRPpdVB71M3N(^&KUuDWXvn@|2Vd+E;t7gOXf3xU(G~m@W$cx;M@GYm5RBr;s)~@c3&Tg`ThPDZ< zGSF%793)Y;>QmASpOO}qhtV@o3c^v939Dxi3AFLjzf0(*#D0WP z>m<0Y7FbUnTP1VSIHXao)zn8x0!@YiDPw`>BQNX1WpzlLfPA^VPFe%(%oV1(Nq{YY zcuMe|Uv%gMTzrz4LB41Ker*w$0~SYUGIjur3BL-GVz}Dsobu26JyF=U7~t zB~F&!rDx9kt6rx-GlDeOb1TnQXC)6#rUP!2N4An;)zVJQTl~Zbl8BZY8r<(!MXnv`ACEqPK>o>D*bn z7x7N=3xx$;bT1!3J-19tJS+5d!p`#NE*W@d7{8B~?AF;1yu@1oH)-A386whGx_)-xY== z>EYBZ2{{HPFEv3yV*69A4E;S-bV6Afm6Uttb)g=y62YAjY=(^0@nTMPiDv4^F2A+e ze`TiZ0jyVRY)`F6U67dvJvAp1o*+MMb7FBdGeEhaP~{6Y-_Q3ZcV6c$ez~5kKjf-M zY3dVKoD4S^fa28-&n>)Y=Oa?>Pc0lnt~Wa1C7vKt<9tsivxD6`wxpr9p!575rGbh6 zikwjj$CqF33F>amg0Vrk`Cx9e_9H1`o^di$F^{=(3sFIcw|CwaB-f+|<+He@wNskf zK8vG?54XzoD*MVquA}GXAgY7XHhC_-bg?W2R#Oh0Zlwpvn;j;MnYap5fO}M^Y24)e z9`IBcCz*Az!79s9$@fISl~lJe?rVa)DMdy1ns*P{%*Gc&Ls-5_Y|;HYq@|G_t;ZtE z+TUm5d+PTnJuTc}-K`BU>Q4LVhd0LoW(h2SqSYk?U)K{1caESm{qTx(>BJiA6>6O- zMgofQn&k(-%pXz^77loKzTe?s=v77 zsZ~?wlXosE{mf$%)0G=RFZc7^gZwBLojRu_GW3d`)Wj;1KxN=zvkvd=UG-Y}o9sF3i_5&c`E40aM=0gJ+Xv}f7eh(TUpS~Jp0nKVMT7vTAa{ZMJpXd4~^J$v) zok0RI%@@RNL=p6>yJ@+o0ZFZ9Ldkv?U5^nf8UqfZP_Pd^k^!me&KH{sXMQ~S zP?O;)0~`g$PSfVW0LXM;)|0JSxLMd7h+R9P~7#ACRMeqiT5 ze`QBHQ)JVw%S=7XHpKtGV{W(GCBL+yl^a5ZO`?a{YPH9wk6_p9YbU0x!HHoz-gEccoFE zN2sTQ)Bi7BCZLe{mGq;5Num?yPELZ^i)<8#gp13^&f5DKjd;*S_gQ1}qsN0qv(nvK zI7tCfR^=v5pWXGhudvNC0-^8PlsiLq+$He$K-jw4uv!aji&w0~Vu)XLD!y9Ux) zIDufb_SGqJ!-~mjdQn$Bq%nXwjGh`%a9l$L7f{Bhafi2UbWa3z{x@vpK?;<0`lTIu zi0h;1#|vOz(2@9F&35!%NO42Ft?L{&=ai{wk`BhU|4x;)XMOSc9O}^ z!Wa6Tu){IcjyN}^QEmk<>u+|8f3*ai^@B(gpE%F68yIPo%+R&s<Iy#h*J2u}b?l#i>jzC|hE1yNI>f+kZcDf6T{j{&4`=&km5u@UJFuhX z*XP6)*|tiL#os$$KfmG4@L>HR>DuY8v0>5LEPaN+jgHd0o1bXmBOtm`bbJ+kC?)#K z6QC-qZ<$e6(cM>RzYgeZtD2@K-wG5@Zy+%|OaEu8*jWtVre=bldek$*J69*8vViDf zy_=t)_@j&gmhUK_Q$Ex}hK^|}2y+*(1#IkLWb=BElAGhISLF@Lwce35S3uYtq@aOA zqjCY(loL{|s92J18{AZ2Wz-r*3+GGVh)`!Qm?12r*<#(77Iql_#$wBS0q`d8kfLdz zJd`aP9yQCS;kd9U*u#1_kwJkzy74H_=w(^D#YSlO3;kMvReCN7QioI*nB9x`KQr~t z_*|!J9rSQ1+feIqe<|YI7Tz3Y$gpD%b8NC7k^w%V+p)_pUMP1N(B`dw0^9-nYS^cy zFcq71=WpaL0_zNNRZMV|_Cixo+q9dxj6PHZLbvF|8N(6Ik-!lO$n(b|=EzL5JN_kF z@ya-Rfjgt49IZO>vf(B9QtJJMfnaB0Fc63bOGpiaqYLB(I%I-Gi4tPZSrs_!^S%}l zKZJ1A1Xkl3bKn>Le$w;-Bh#|ldf4Re1*16+Z{(*or4Vz6#KV#K7C@7*cwsVZb+dT{ z$pnAn28#{K=Z5AD>tZF7zA`;GXe9xaSAC73g?mEi2%Cmp{Io69ohn_-`$7+EZ^ne= zs{{-0^DGN(>;}X&)eJ@*C;tJ43ZSd{E}ge5cbA`8Rogl`#!I0;KO5>H`OjSiw1z0W z#>!>#CS$Z9!_UPW-j|bGeS7Vs(?nr0oR!HDQ%U)~*qB}jOKMBkJ{D5*l5|l?v!9|q zSqg0QBG>CpnN>z$uzFzZBvvtVd&nN^)O;No)+z?y7d9JUT4u(4+%ScR`N;3Ko) zE;9Z*M*I31XpDaCLIUjX6)?f8Dyac2qM3k+>(x|dJ75d=6Spr;w-sIeE<%fDQ8LII z=S`Y`SNi%{?}xyuU%C%u9^Dz7Ht{+6vUT=5z^Eo*vSqvXtai+wsW=KC>JBEjb}mqV z2gq_-=%!H|J-o_4I@FpTo}LA$A04MmK7}f=-i{ljg=@vsUf0t{ttr3$_$rc1zAb`< z%X?k2GoMOMTpb%LAN33onU`0mQ?72OoEm_rrhh0M7;TP~oMSGU21+KcUvMav=U8b3 z#+kHxy%gPDe}gJB`t-GF?a1@Y^8_d=z9Ye8aUu!-h=LX7Xg*M)%Yhi4kj`L;swlL{ zARD7i2C&srUF^dGPJIS`uS-6m*57P`ZG&r#I;VqFl)MV4kC``2-sjm$xXt;3BS)io zlbJ9X6d50gRbD#Z7LKAse~p+hlN^8jb$5?->oC>|4L`I?`%hoE{>0^ADPa4<6w%?=k&_bOCX_n5V-Qt!b!(Fm4mec+-T`W0gcFui!83}4?@@1E zlLMpfg%}Hnhi#a3df5x)ElTM_h-zn>gUdzGN>SlxPxsVzV+JbEc;zCdqG-K7lwO z(maflJlh>UrEr$pG-lXY{73YE!-mL;1X?^zX;<{n%bKn&A)g_qSW!Na2~O@yWlGzn z-!xuK)4yRq)Lf!?uQ8BLjjpnZ$tE+ub$ahQQrNT9#e;NzS_d*bApW(GAI!Z*W(ru? zP9wFSByhV*H-)t*(L23_==D;<{tEx$9!M}2>jLAZxO-90u5=06D`O``k za9$x(7edEdWGKPNSO6Zpj?4!?BCgQ)Du|kW`pIM=*w>S3bh>g~8=tDu|JsP+Rsq=Y zB6M{^Ez}z5+A}f78ontjn$2#KK6m1Y@5 z!S5?Li|p(ECz^Tymnk3x_Pr?7qu&G&41g2)lxozJA_XpWq4Q>#dA(BfrY+P2@Yij3 zskEbC^Cmm8q1lt|u=}eX8L?*?Yz2n1AM#roH%s7Z#Ew!>F~S*`3;&oA#W^BHAT)|T zVz(JE22#@O>VcCgQ%P`u|J=v9bpbVhw;Z($xv%S=-f}C9R?`oR%!iVI$aUBAgDbBi zKLYC^PfAcsvCf$#Lzn3_|MvUKZbTRQr&&Z^JvrplxK;Udu2^nR@&ncXb8GA%tcI_yw)mrS zD3ASl$+Km~|%3c`DQgTh)HR1|H>GGr}*-PqEA225#vB4SgO7W>9nTX4jqa zw~Ok1)5z(Ue~j8NmJc~c$6{1uMIQXO~oAxIVBQIn=^?2 znS!%>J0QRo%j(r3x81_#a|;qr0{Wj(#24NJ5&48uz26wtM9ww5Kif)X8V_o~2~wgp zbg=`|EbOPv2O>c08lLv-KPj#l*xrUJpP25a+hP+q%>RInAFnik8O9xFJjsZAUI9PY z4lB5Ls&KFc_$J1f9}42&-h)vo%hO&z&K)^hto56cKfPYU3Z!q_rz`KgNRH1(4u}p; z3!ouVHdsz1P$^*vf2%vv_<WtNt zbC8#s^htzoDIJ~!Y{~H8XwCd1E?;Zw(vWr%xF#oVnqcD2z);`K<6RA^m(V^b!eBF` z(7aT#yES)ylF&-9LM~CoAf?7t+(*pI8ek|(Akz1r%F*BKl_3No4|fN9J1-zS7rQ;| zQ=?n{go4!vnWlhYY;ck>5@`3T&mtmF+H;f;S5Y?=7*5VgA_2)Z1f~8qmO7=gGevu2 z_zIv^Ws`X(r@i*8CR7MtoNO|h-q5-H2@`@fpZ1HCp0V>iRFc^IR(pmBrT6#-?((jd z-WA*QjjG9qLxv7IX|8V4Li#0I=wF^0ev6*9hY7F+Q&g*?BRQW2Y(7S{<5GK(piRax zi!3yn0T<~%aXazkWK4~TPi!jP%B!f5%l-$vZ*}~2c~W6{k6}JRsY~>0V#2Aqzk21G z_#pHpahh(IbMscnO2huhq^X+r=^m)MBTT3v#`ON%W$MvqmD4@a>e2Cf2K{Ar_1I>9 z1kTRW_*CglmjF)1!NK8v1AkC7SE6Xo!JWQ=gF6r-k~M;tk*V()+`N0sexxnu2+(R2L<|*)Je(FF|-jW zGl~(cSJJqHFHKiS1%Oi}1%rJc_Ne(*MM!(!4D15Z_W*yO_US;M%~=tWy4CJfVQHzlizHCg>}JK`TnrB|9lB9Jq;QFjVPI9FZQ zJD!+kd7Z5L$%Ilvk|m6Nfk&%$fEAd!?S0ITVEPSR83H!x;d-VgEg`iE`mDpG5A`cT7gFNE*7MQ3feCFxo_}f`sOMa*nxvLR+ z!(5IoPj!7p(o@O$j(i~`n~x^-bocr%{kk--?ah(|s=BYX^fmInmYfIHRMh97q*(<0 z;T<|7!|lt_diYL$av%LEq6=rad+OSItS33;qM1Uri1%o4OT9=%m^c(8s-!wS8YUh_ zdA;j;rp(IDo#A7-h*lhKdECDAV`=4%7K6Xo-3@888%IUo%IAiRFwxicFjNPuTYuCK z`r^d)5?~|LbQ)+(2Wbk3UJBBIHgOw9xCA|100QK~2@ghP!6CN*hW`@gP2ncWSs8;3 z*fkQ~tO&A8`U5co&>UJq5W3)1Cm0K7;_1xmuye%=b~ODkj7>x|ohi6>7F$$}ej!-9 zY-1v7z0{q=FMrezoj)QMl-knez2(}PvUop~0?qL#xC7Vd9mouxPETWm)vnBI4o|Qv z`)~aUZ7%DW-VkUwd3|a9^vU6-UAxCeG0sB&-8r+adyRE3^j^n97cX+r?;Ol2>7DR6 z<7BD25+hHYP?#WjsekAPSuQP0?8BoTqrTVjAH32d%c?3@0ZH8%d=&35Y}pOZ_+o!< zaC&1D7peCfet3}nYME~JZG1anCu;xe`L?43o9~`o<*~TvT^!VO(5LY9I)X`3aMtcMbRjH4X@hnik&%#6n zK8WUCpqE%RFQj8(a;#}c-RZ)R1!g$NVsRmCM_A^2n4>O+JY#G`fR&m@9IONF z0g)?h${5ubi~->^bK+Zn_uUe~%VDvF$@DPfq%fExJR~oP9OCgg{aHv8d9=^3D;y?d zo5~Qn>%XJ20_JL7VpCYI&+%UM9k*wC>GZQ3?=D0N!HN4@t0!G*vv&lTwX$ixM^%rk zYTu4h7Lt9Qeu6`qh%(H5-vJ<+n2Gb@==RLzwVy3@FXRs6GCD3c)|X+E0j=eQH6)$u zm4WNbOBn<%lK?nN{^b3h`vlHIG|oS|_Qv-#=*ir@vduaNn=yx?BV6O4)pndOnYQ)t z{Y&kC=&QFHXDBI6Qd-14#j2RG&I#MR3oy4@6o4G9)gCAjTecM^00h?Aa1kd7r}t{c zuHORCe>8&Dnaf8;?KHpPvl!8yC>Zt?`m$}aW-wqI+J0iP&++o==@!Dwee~_m$DeT) zFgCssR?>D{qem9A-$-uJ1jxR$^ z+7k!QEh&wCBwIYz2L-SC&gm;^c6}7&CyL0c(Wt45?cFDC1_247c%X{0K zGna91CoinbhCyR&a_eoq_01b|1tc?gGL9a5zQ76f);?}<9W&@h-T9OA|4LD40}44N zN%+^D)2;cFo_sN-{{1rJjXaMZa|wv)ZgFO#W|Ol`mDyi_q-kCWpR6KC0}TPqYudA&VzL|riD+^55F%T^hf$z@n?tOf6S)Ciurzx2zQo>;`)`-V@_poG4>}` z3y;IWQ`i}m!XMfxU!U>n=bFM3B_*{%M%WR+|`@=P@{>M|RnP{!fzX4y7^ z-)ixlAKGQx^v373m46U?X7O1*mne18Tfs+(CU%DVvQwh#{4jSJ&R(7P&48yQQ!P~T z9MTxCH#1^-V(jL`Cs^gBjv%_@XVeU9?H_1V5e7DX1#hx>_C>}pp6@ zq`Ehks6NlNGZP$>q(FW-{^+y7yV{01p&m}|l*AwYeOLV?{PYHhbupsXd&T*OwTJfRI+@p%wd>vwL`Tb@2StEnmnDjeL zd6Xkn%T-1~be7f4TVoC&1cQw!d!pG%qA0Q&BM0m3?LD$K7_-M7E?>#0T-#~PXMpRS zu6R*S9M?_`LLo^$-E>qj&2SM6_s=_hj~e;(Y0~6@F|CP>GV1Oleg$fJHvDN~ zkbnBnmv5YBgzJ>JDYHvGVlEJ_Di2*~N^V2=8&<4)V*&n%7Q23?B}SlzJHQ3uuek%gz^Mj9==fkSdUy?+ z8oH=zLVvUV^jYmpu(W8K(~*pT07L?Dpjoz>KkEB=v+>ldY@9Wu?NO0&rvjAQY+`wQ z>L`ZU?bmrLobu|jcEibFXvQVFm$W;=5@6p*o($rZLZ{l5vNGS#8J>%t#}+?M0)4&t zS-8`{@29!tc%m#Af6u-Igav)m*-b{LAX=N7XZt|k0``HcrZfHipxQ?F7jFmgUL};( zU_YP%7>TohOFX_ec(N{59hXfREZ0WXm(IK=40iUn)Eu+HM0W1ft>Vr=^~g@uK!C3; zZeV)lK;g!B)X+$NlumS0*h}+egsQ*4ql|ivv1Q?_a|7ay2ebT1r5&Wf=N4`yb~A1Y zzw$sYyd)SWk-NlOB^Vf@{k(OPdRkeVmQEHg)%J5Lv-sv4ySdetZeB3oM*E*uT48+F z9QP{=P30o~bb`3o_*4vo@v z;u=oFDp(8`gO)Z`)=cm2EH%cT!6m5snz0b1nqO*4Lr=)e&*0Gg-bnf-quUFSoDdww zzftFk-2AtrJ~dxxy?dpaMv_v|Iw8qo9)QrD;(BCSo4gjp30yy92UW)<^zx z!RgmB0hd(0G{xETyA}|Z@FPncoU%)mE!6ln@#R|D0S`ia7Yp&{9Zz)YNv#c3m^`wd z0vGone9f`1{3l>JraJq!DiEJZGbcU=OmS0~Z^Y?-;#30CW1Cl=#xfx^vY=R|ec(>J zW8Y^cM>q_=)fQe;yC_=bSbuQzqUoMo{>BC7$Z_B5NW{gZ)4NVFXZeoL>7~Z*ihsuI zXvqVdenAN^67S*_*co5&Qsiby9wi!bWkTBzAFGW}@pI|z?K1I@kFz@k2)j|aQs9PO zwhHZw)*Xd5cI*vLneH^y%4wR>!xfvUddnyG3Go{u)?g!@wOhAOGLGLD)(_by`K|B7O;PcSz59nvb^3F1<7TX;zdOTx zAHRIY2tW9sDdP@dmwn?i;oIA?{ZW&ZMym4`T?P;rE8KFB`~U|6-}E5p)$Wfm&HE3U z;TDs7fRp4*6Di|gh}3TM3_e<%=-NgOm_X>pFq^Pq!4ynxZU+CsN2;nS~(8I~ed{czl#rsYrE+zXEaXctNz;gA$C(`wLtZ04Mp<3BvISq3o`oNMip%0!KEj$FLY{+o|R727FJqJgHIH|1qHBV;GUsCg{ z@+M}zy!ZZyn-m_tBN3uBJ+U~;Gy_hQGM@pess?#8*J1@KU1@-&;H@>pxgXE5o!$mD z?l@I`8LH-?Fr^=HC@#&vBkT2TWjJ2fP$SCkuK#X)6YS^J7Pst;w8Qpj!vTdvlj{;M z#{8ui2NpQ@@1kFa$-;bCg#Ki-d7sX1vCeX$pwgF*lVtFr}Cr?`7l~oC9|&;)(_l# z-(~PqVuI|f=aQKdZ%NmE`_~7ECmD&?H1ERO`YS10s-CB);lYlOd!fGt3YlHRz}6oq z0e*-1_eUaryi&=GrZk;q9T?yQD8?G*omPm0ae23}G#cJkmlQ9F=Y;<6;52M{=tB&-Zc^E>Ht;d*Rkk zfA4+yM^X}QBeZ#6r}Dj=h90`QC`l^)x@713##I?Vn6;45#Ik+5K6x2Vxp&&W73mH2 z29a+_Uw%T4ihLS+LlL1{!5L5XUF(S=`E!FTt-ST8+0UOy8&*&o<`oJ&t+1bR_Mhs- zrDH^FQd~D{af=gM$?d0~lQ16EJ>9N3Q>T8t-iy+;)~PAwPqxdDcgMrk4bmBwQk)xj zJu-?v@dx3Gl}-;dO@ruO5}hZeR>&M7vbr_xb}2bFR$wo(m zgraFjpP$Fba^X8iZKT3RGbC-?;%lu>2U!*yVfb$+D053lv104)|ECedZsv=KcK zWX5Sjg>AfH;)uv43o^s1y9RA?!ooTEMmWFij<3Bxyf`s_kRtpFTMRpGhwLgz6F^+bp6XLq$sWF;`Y$2udjx7HEGQ9mb#lD7YK zeP!Ig#=}|KWa3@5>QdD};}l9{93^~Mw|1!$zbD`NYem{K(N~5)$4B)dd~~rhYe9AC zX9Zy|cyla7f|fFWkYRUm12^R@XpJgeob0G4P<-UgJ-Zc!mtEx4SbXXQB2zZzd|*KV z=g8s~-VLWkj8!@y))U!W%4bU5`wLAZl&M-TgI!%+tx%zQH|6DpUX^zS_N$SD9Z>fb z7Q2%fohj~@`yA%FOk7_2w%5R6avDCE(&202G~D@tqo3+L4Y>&9?98zlp1Qf$upQVO9IF5IzcQVKa6aK+gNwrN;GAAwwTsg@lFrtxc&3XK*h=yda`2h zW4cd-f$)PSBaj>iK@WQM8O&+2+C>c_wg9}l4?H#`|LgD|Zy7tP9IWeX_n&2xojrBq z0Cr+{KA{JmYuR`#>9GT~qBEILP4{(=&`_fANS4motND7Veg~HVYKRn!_zW7ER`HzO z>Zh@~@2awK+ZhINC%?Ulw^McNFT`B%8yB~nbE6rW2`pF$qBHY=rN1#oza8JhG%|6n z^1m4AdF@fR-artfS!g`o53ysfj)pd#2xiIjtC^ZQO>lp?CZKr_IQVx8UPMW(*xS}AvJ2Nx;rdVGTmt|Ucq>XzG_`lE#zWlrQ(*;d$_nO7@b zt;qd)4JV`ixw#1Gr(S#Oca&K@^TL_rKRK0V1$|VoD*HAG8;6CTyU9J{`g20d~XlM+H^&x#H&V)Tk`dY?Kte( zZMlS!kOCI>yqDGEJ@6dcxnRnH)m@D;7t|8XxcP6x$h183tTLCuzHjm#0$U{FiTZvX zDruVG@07*tzWhM<7^Sz=*#~QDBd&*S)|F5A4yzA*b8h)i{#7%S)$8Cpjg?c5`dW^t z*ROL@OsxKu`%L{fRsoYbg!}O~%CQ}3<6CTgHJos@?5EzHF!GGcy|9n%8DP`mI{eUw zT#Y^Yu?jgI{N4t~SgQ`)9N2W7{KvZ5f#5Cd%r(o+iHqA!v)M5=jE5*3l(WcCG9gS* zMtk?N5lcn?c%3?3lGLfJH0C5}zeCog`LZ%>6noGse;U(o!74hlb*W0)_L$XoyKaa> zVuNLUY_iIurfPUY)XwFIjTPP{^6AXWMWvrPb&!|d6$cLB#Tsd_YhOU0uQugM6O`?3 zF2q|_dJb>;Zg+Q&Rw3src6o;jitF@?Yw=h0EZZ+$yy#N6a#epgOsd=4!D|AYnC`QB z%e$q>9p|%hYY72}-&CqMk2xhvZJQ{*8+&3tl+p6b#}4)`-|=#Vdi3>q_OT3)rg+vb zIGtU09TlGNBTPuGOtY)b*Ttg#f#-US^86%DE(WT0P}E-7<$-bk!tBy<-bo}$c1gf) zxIy`+xAz{&T#{JZ$Ka;^7HNzRdn{Y3U{|6qUxA+gE&SukD)SU^JKHgWy4AR2^<`+* z5+*K(Wq#PqpDIx#;B5a|WkkeqxpefY{Njn3;k_L>PL{W(Ya4|OYq2ncFQv6lkUcgj zo`fr0J7`Xp#No&WsLGUuC0ctPZ60TX*xqGPvQB05@{f*yNunp}tv{VGZQ!=4etWT% z%Yb!^XS*7$Okq|(UpU?Fsw}fd*$+}5KimIakqZCrn5ORqr+lIxmdQ-+ z_VqP<_NlRwZ;PWLi@JO?@)7|qh8Q>OAiJ&uI$4RLz67fa%IWtGP&XAVD#G|d6=dX)A1kk4VI9n&UHr9CR#GwqZ8 zq_ln6?wUL&$HWEPlsTwMz2;pmCq7>KS{r2qL3}euJ*687@3QRAy7j!Yd4JJv+E4_O zwfA~R!)fK6p2w?>X|&6OkfDCq4H0O2j>&Cq#-962E}k2ehcu{1n02nDYI&}#J84M` z$06fP?Slr1Zok1t%vtcKr@`Wgu)Z7aC2zI89ndFrE?@u`Xnj z=9WCgIa9~vMO8I<5f;@WHf)q%lGQRUM=Q*hKf6F5;b;}KRKAPzTZ7$W1k;YO42wyDXel^ zJ=7NimHRl3Nnjmldf)CRb(i3qxKBES8KSuid%JIxcptz>=K_8a1MVyp`1608r-bImD*?DraHfxEnly>ZI-iX4a{Km7TlKAwk? z*^cA!YjqzQlz8GFw6rO+rtwx!`e{xuS%0nW|LU#0;`?ZLdG_;R5IJ3!RpOK-?3#N# z-f}gnN$NljmEUELQOC1R16MB6UK$G*!+ihXZhV^$lcCeC&?GtH{e+fxZvPk*fKn?Xa|H#DkE%-UfN22-eSCI&0o17<#@Lq!R1 zecsleesqUTmdreJW}5b5l|KQ;cl%ldoT2*J_7C5fY|dcdxqu2F++79_Hh}fdOn&4c zQ4%ATF9e3Er)*^;UyEH-t*v?oHaMnsCM3BwR77j%eW5pW%N7tu&yCHb`~4CHRblQWVU{i(?Cthgs$5>9ADEj zbq)}h-gta(IrDh#4o6laLw5!)y<51EX?b7DY2v!aJu(0l0-!|q-MiuT*muL1Lim1f zQGl;xr$;)pVO-~tnX5yo&;BUm;rfomHV_%FJ2bjadR z!Q>VkSH0Z}bPDcxV=6!Yzi`>%I2)%2Gy8uH>9Q83#2o?U>E)pd99xGW7pz*fBT%%L`8YXV2_h-d3T)xtQUHzhxpqcPYW`3|otzp`hviaT~wg-0#1LZbo&U zKa*Q=D*yU_?7eqXQ`@^PEGjB0q9URof(=BP(jpy1RJsa^lz>XFp(a2CLbH4iz16gLxHP@W;EzkQrZ+Jm- z#(Bx5lAhFvYl|}_MlK0+j`XWx5lXe}FIDJhK9A;6cYeG}p}AEa?u31gk>Ww>^#eib z#u7ZaTpPTw%+{$BcTlINCT&77HXA6Vj1?UepzWC7m$+^{e-80AaiXImnH|df=apUFTsuY!5Sb?j{&|7x z5pAMVf41MBo5_PKdogrX@e(KgIm&^GU33MV4BWrW%AfHMyxZ}|&jrno(Eq*-c)Hz! z^0h>#7r$fFKjQyUbSk7ut-Q7g-U=EIY81;r)-zc(Xo z`^I-0K>@M?*hS(Km;wQi`Ch`T6+3n*?M2%m^?s0JvN zBV}f&;=U`%YI)>TqS+2W^=Geu#6ehQR2^Od4g!N~SoZzke;qHAHlCaEKXSi+b2_9y z#-&7YqiNC1pM&%1z)^C;I~zf+QM}E^6aT!zb<|`Bmf|uRIm7k~X_TXWYm_gqAQjwPT{u$*c*UmI{K|9VI{O5(e z2DEAHW&Xcs8cpA57$G9$!t5NZv>&A}bci)SAOskT9HL1S--o0;{@sLA+COovU+2J^ zW*1f@uFZ(PD=u-cVQYZfu(e9)(vNAni9ltu^fV(tHJv0na*#i~7d!UAciDzO@U;oBOkQACW$l+8z( z=J*2HD#CU;6#cNsW-!ZfWRt1cmvQ4(yoC8{8QMXoL2(7aUjHHU_Bi+G_4yKJ)2~0y zjTzf^%^r`D+ukH^^j$BUN<=qHEhUC-Y)B)2AP%3oguu&qTBnaj@A%cPw5_P%ptKjG z@#5M)SBmSX&CU`&HX1v_0WQ27+>J%e^UD-eiekb5U>8z2ewMKl7RbyPBy%HE?i%;A z=}uXx+k#aUIfJjr;st4)P^xb`F~_{JYlna@cM(soMXH z9#vkq#Ny4yj~*e@#ZxNoS>=P=Mzj3|7l6a`dA79{8%mJIDbnn~<@z0)8T?iMyoG7qwj|6_P-v9CVV}ol!if_n!kfyRKsbd* zj3`xaO-c=Zcw(%AYinr!PAF=&=#HV*rQG6hO@c)kI8u6-;HJwWJq|l%-5K1LHvqc4K@0ZyI z*NbJg_3Na1H%%nKR!ZhSNSjpTU&Kg{Tf4k}>_+8h%|~#0ZRmQgO_cvQbTX|(bm;ur znp>I25{S!Nz(gJdVEv&FaGYSZb8W}NeP4T~xx>owWkmosEtDd2Mua!G@phoLSr@Vw zM!-XVsL`5UTO$_KXh8)sCWcFM=NCZ^Cz9b3DxjTG2ZwukZLT1wBM!=&sIQxb6lAme zQVp}xwXTtK;u~lM&-FD{(quF(*xS+q$A;7Hms9o@zLFdmB!Y{-A`qK&vGJ_Fj-!*) ze2B%P^=6)2)9+tRh3(0w)&OXrBzuF=xfAB)8xJ3Pb07Usy~{V_$j~X>D(8r28{bvj zzGw8CuEv)ix1)yocZO(b$|zJ(reQaxT;LLnXK;!ADw1$%)zyOPBolMnP;xYlH+m)u}xH>yClICkZF>CE^087;D@a)fDe zJ7h%PxYYAUm$}K>qNdhX5I`4O3|V=^B>VQgw^Oo}&k19b6J4>?Et_N3iEx&F`a@un zttsT}q`~Z3w?h4(U;?gL*F2FMxlkD=K%Fm_Gx_*}>D#3KLg)nFQ;Hjp6La0AsCYi} zq+YcvIt0}cx*W#N3^OBwClz}7X~zVqX8TF`UvfJhXy%ZKdoA*2!sh(Pd}z7hNkP5S zPRYOHSmUh`|8FKNcY-?N9M)_^Y#S=g@_O7R!{V^Yi%vJj7tQoqol0!NM6V~m_>!;J zwV*>)jx*Vs4Xvycn3U(GMPA1b%vsn;&woxS6_uH|F0nyYted|EHK^}~jObki*+-7_ zMpHlu>??m@S<@Syz9

q$@lL&H;?Y&R!7Pp^Hh+)_rV^+7p*D)#6t3PO`dLJagP5 zF}}u>h_1WxVUQdCL!m9-y5S)MA^u zG$9mR{8+h?n7KmnK8u$c8ad%^&@0zb&T^8&?OTeY^|rOi+`#Q`-+2<5gtF#42oUFp zTRdltVJ8tRLw0Ay))jD`2va2vVx^VSEiL5yLQ$&*+yx8QDcEW$Yma(XVZg2Cs^+=D zTY6O6i+G)yH#tf1WzP6mc)O_#XU9yqwApS3aP~z&^K4FU?$N6Lh^ssdidKdmE{3j1 z_aMO<%*!wNTB^$sR$Hpq+Jxk3x$oC1x3{t#wjrrcUS61J;S+pU-!(1IBI9!oCs!G;fh9B~arwp`X1blIEMyBa=-hpO)x5PP?z zrfc{2LQ_lZGLa;)B)&`1$i}vsUAZipE$~cRA*pR%u%Gckp&3 zS;cPvJMkL?A~{4@D;j>(wnE**)mOWqx=dp@2<~%erdwAq>Vaa zybxzq_wmV??Smn6O}CB0d-wB)s#gX3FR4bxk=6;%yjJW7avA4{cBd`}%d8r>VojK5 z;WZMsY}+=h7qmCOY>bi%El+r^4n`G`s*$SmLt?hO^0&9OC^JFcX(}6Uo@|cEccvVg zT$$--Iw@2-^}#U%o2PS0q)*=EliwRh3Yno=(~P**cZ*Cv`I?KP`m@iS5SdC81XA(l~{HNQC%17Y&CDynWUsbj$E2;`iyVo$Z z#KVQGK*en)8rvOTa9GLbrEEEoKZ==*a$s-bvL&ar+T2C5%M?nm=_~FRvdg@Dx!YS=AwEjVkOsr@J{P5}!CUm-@=cYf-te z<;!bdocPv+4#6f$OBLErpW)t9zO@ay^|*YFD=wJp>(^kN;AFfBWB;rr8E-TY)Mu{^ zyYr*ABn=YF1s}PBRBhjrGf3zz(aDnqN-hA!gpzbD(E6QTSohbsiDmA^;5PL|_ps8w zUfE@NWV=-cVHm&iHqLZm81bw;JEBW){nc7@*Pd^nJT*8XEIQp+<~pypKX&Bq72Jr; zNkIettn!89TLKDRUZ<$F^2jAW0)Hxmi2 z^dNZiehPg1`mW3#d5|m9?bIs)UNz)ext3|yy;8Kg%Cy|9l_(lGz)*H?6o1K<%*5uJ z5Rb4^)ql2HsdEv#M{5txPRH=FdsZRAc70S)vss3sQN~EWxo1Smf-6h&3mh|Tv$j$` zG7)Wz8}R*rIL%5XbW;S8JS)pQ4bfRrtgZQbZZ$~D^^7-4#{%B`OE5pCH8*`$eE zn;T071f{u>tw&d930teL_ioaqDEX_Zq_>`Dlz+{Ly{A`dW5cdm9-F+ne8YDjP#`3on9`)U=Q@Z>B$AzU`bW3johr50CEtUzon zCcLx5Q~!!bPYXHFk(vW>s`+~RA5r$V;lH>yqPKQ^-G`NhRcr~*5a!P#ojx)Ib`;A6 zobh@lc(~9MDD5>4a<92FBn&eEx#D|l+ z57;Qv*}h!CWQG~^rlm3FFK~$Ia%;HP?TaC7b|?BBx#}IZh0p&OM0kf=8p4J8YE%Vw zTlia0N2{-us|IdTisxmp9}yEdomjL@me`~D5t0>BF~_%Ws&wA&Wpy+?;5fj0;Hkd$ zL(E;HA1Q-z!7}~>&8q4`3gyGy&}Ff!2qsRU@{wy-+(XEiL$1B~?t$YU?uH(~eY?X+E*LNGYB6kfJ^1#Z>D{B0;PVNUF-^S~qA9$gHndqlhhTcG*8X0Zk5 zNVN5-@w!{+_>568@Ne1ZO#V+d)aV%_cH3Dug`mcPaRj=Ni-W}y) z$+Nj`Xv!YOA+`DzXTQ2&ITD9f)mhqKwa+R`bbd7dZOnpOdqy{LsAE;Rmk2v$g8m+; zdpSp*WG4GrTAli(rx5X>>N#RDd?qt4&3J;B`RS}yTGx|8oC!xy!sn$R<)1~rk9?%q0(%J^5mVH_zxD5kG= zu|Za+i6s-A_J)}=%CMg)KsWO}J)5&NtGabN`h}$7uqr`}vCHHoyfU5C)g`r@wx7{< zB!&{sm{&?SSgD$nu28b|Bb5=onX40m7@^+LkeRQ0HKkP3NsmDs@u-Ej4(H!C>S}P?cU_|SYfTr3NU{8>{==b<5TafFC^ zJwV&JL~mD7oy&+=;a0~oi0BHbu{Bt*Ysg9B%b=9#cRcH^DpdlhniU;hRAu%v6rx<6 z^a>@}BUF4HiCt1}CtA{K0DNugB}09xCoDKT2R>$U2sab1yPKBle*+8)iXFF^9!`x( z#Jw(jwASpl;KNisw4GjCMT({xBW_Z;u-6?jE(HQ5HtdQtr$v7cvF13n*O+ z2|~iQ5;ZB8>0ru9tTme|4|Vhw*0D;Au3{x~gtVkKBvILIb7gI{ndAyF=aI^ET^VYp zY^-Sx@>ou_dua+*F0WTWpveB-WJ-K-oIl}mzPJ5ya)GM*Grh5PdUuf$f<>}sB$aV} zq#k>Lire-Tb?)5`I?f38HT#s;+6shuV6w@FqoA|~_DTPC@b^+3&cXt1NsNZb(wBwr ztCl~CJ1U1=xjmmgf?f5pZ-K6w`5Ln)#`N(Oew}Bcf$7haXc)+mUzn8q>EoZX9>yi~ z-APRRUgUwWEQ0oHkJ0yn47q#V`nh`0e~Enx>MwQ4!8x{CBJR64R#h|U zb~+U8OV`&V9rxNSwJbvy0utHd0$v?f88}@5*x%60Jj75HuMJmNml{u3kjwwYrm3Ybk$UQp6d-=JB;^?FGlI<$2wU*G8udF1+Qg!lv8p@}%cPRA6r5x> z;M9DWIjc(2Gb&sZ>AK}~v4#om)f$%Q;!=`Rm5=S%e5U_=WMu_TmO5wV*y&f-&)F-H>N8EX^%qt<1$h)JW_{v2 zVQhK@Y_pUFkaEU_zLCB7;preBFawL3hn5tr#FU4|qdW`18YF3>JRbE-L!X?bfpQKs zkmdewkmdQI3MuhY_6dyyWaAmzh%3}4eVFtU#T$%5VxRcme5A*$FASq5H?L+NUO&s` z!KU+?ftfRmh~f-yv07~eOpS~8biS+$W-<}HG=O4~#}eSDJuE#`UfX{3=lvuZo^{2W z5jl*<2`nV2towRiu|_deXmha@cAwI8(qV+kj@2k~^Jvi>2~LNKBsmcxnokC2_w(#M zDd2hwjiGtIsL*rEEw-p1(x7y6p+;@$0%2Z9BJyougj3 zv&@A$^p}8(&fdLl*xzsH_Q^MaO~vZE?w60)7V`u*#F=Gb)pkIb# ztET7aEHewn+Py!gq%(2#fzgoG!z(~M6|64O4|8m>@Y7hiHI!+(dC6!Go>7|^UfsTtY z*_?n1xFZ0xCu_xiNz5wIV&oEY@!infh%C6I-0ta2JkzNm`WU#iiE)G?_ zaMJoBGFV%Zu7I+sI3!an+nfLv&AX4{w>GbN1^47MIE|03PtwXL_}BukAP(;$Zu>4D z^X6pl{$@1EI3X1=APvj+L4RXsLidp zHw|OCBr)BN8xnATeW-w@yU!npL%GR|#ZcEpaqUj+FWE9SZ&neXVh~B^gyF+!*QgP8 zwZt+iV0k%yztsPi4a86ZptGB{w~~Z|DK)&``%(_m&Q=i3-l|wyr!m5k2FO#-caE3J0IESTRNNE`}yQXe#(NmQ@9n7?T z;hp&KSH_vWnDvWw21`Lk99MKCxHAN+Tm}zGmYnp6(n)1M?tFS5ScqM8UbISu;WpnZ zJwSH7Nax{&s=iGLxt$aO5~K{Q^%5agus3I(50GA43H&qoyUOKCq659pDS$eA6zdJI z_YEWzs9IJ%Xl+=m-9-3}P#v{~-kG2C@S1}VPY#6Mv`q&z-K<3S7izKgSssfzuq}1b zbbv=MyLEX~mYMV5q;yg@9VY0z&^d zR1RY6j!{dzu3f$1m_L)BYkCEJ3=xxpSS`FovkmMr>FnencBwmhqH@Z&2qMaM99ME%dz)fcukw@*f0FSC=a^a48$PG*{fYr?!f!QkWokl1%Xb`k=pAQ0KASZ{c>$HM6W8^tSti z>-0x-#`k7Mlcod;PBS(xq%kY-_`K5XJ!cplF^XVo7_i?kl3QBEAh1Rei_02P3tUwR ztVZt84wAh~3-OXZ8CSqMq$Fz5Q!C(3-uG-~xx-l{Y}};f+Y{w_jP`CqsH~8CUalNc zarsmjqY&mtm2<^tjZ^<7uT`!77nENZM{ytLGkZoimyY_?QdR0h3Gqy+CGE0f*Z`zJ zWc7lI5i(+7)U*6EJAND=od}Ms;kD$z2xzuVe@`7FS5xkt z%Gope5>?b@o0JP>2#Lsk^aRT!~%RD&Nu(-fg2~7nyZMgVbKZX*yeWv$*^^fzbuYJ$k ze&!zrsEJA2G%j@O!#f)^G7gnZfIzipl1bmYZaFW@*Rl)LN&hS}g7t^bILFc(pjY?D zTyyd~Y$iFc0}8pfKp{6d-~eWG(mC7E!>F=I-^k5*sI7#uj(P%7MwjK^L`zlA&g$3W zctPA#U86l>ybkITt^56>d~5g;7(9gSzkaG?SM)EchI62U-3q3wBPgL9@Vv_`Wg{B! zfs_}AD^}RhF=|XSv|!qs*p8DJ98~7*_t?zme{^@5B9lc#Nrf}e6%g^(AmmX^sA>Tu%BE(s%&|`*s@1ySudOCFn0|J+>HS)% zC&P~|`||D$qX)GlBEJecS0pN$=s~0*e+v*u7Wcw#870r1*?r*VfxNY^0@Q`! zuVszyP@Jy2p;Puey)shKQPHwQNwD(Anaa&FYyXvlXUe^@gAl_hsqyx8UERqakKHG| zug|dRRp}GxS_i8a+2E#ZaxZ={)Un^A>D6;ek>Gr~(MaxFe9&sF>^k|5#P?6@09^j= zNae_uJ4eL(YM}eAH>sq3T_cRC`*#y8j!hnu=ek3yyPE%|+$0}9Xwk19WdyIb9i64x z$!Avr@J)KU$oVjWTW%f>$C33(yP;0hNMv!lGUvHn)>1o=FX_- zTio=R1)2J=EVZb_euClC#^_n!)nO-y?uKVdezoGAkxSacW5Z5*O@3qLO+aXM4qz4u ztCMiNi}~7*`lz|}H&vG}jH<^)vCz0w0_SNE09r{*7c(P5nz zXkvNfHpprGk1B4;{uni;9y~jrGJ_`d;mSy`noU8YXNEsepMP%7A6HLS=A`3Y_6wgI zwFM5-f-;!ov6}HE*XvdY^lScA$D2kHQ*)E|hez0lk=e{H>gu)Znn}Wd-S`&xi_Vyf zzY67-6?eP2RSG-b;gkR|dKn$H78HL98$pYI;?36~a~zn31kIQGf*7MXbA%%!C#dSd4u-FxO?HWWWUBK#WZ!877?I#tMQKwy7FY!@F z#`gQ~t8kAZS5rBdDbVV@nC27NG_8R!ptS(>Wls!O)wAr)8hM7)h;m z(c)wiWZT7f)-h>VV%gizRJBUreyNpd%=T(ns%?k|#rpAxIoo%iOQJnA0(KAeU~_YG z;XEN*%e-j=L7>=D!!r;xH_dwv&dZ3vm#ZE4$$Xyqt8NuGaiuZ5sgy`apw8wleVcPC zxI+~+Ae6qGCS8VMD(~u*&m1r20Cwj%usb{aC|RCAyD{LvbXXO0BhyYL7S!qFC0!P5 zNroC_)aKm;eX5Z_f>dcKX{47zj{NctSWKFHN=uWFM23oAa%uC##fVtve93WnZqPM< zGDdt}w?;`TXGzvgpZXzlbyJ5o|5WK+|4E+aio%!ANYy-}fj5j#0)yW~Bi!sJ9Im-J zD6{t{`9K8^%%8eEGTfi3+#cKeRhGe^+cqRV-exI%PM_PgJ+fY%NooDl6J;hg;Z+i% z^cm1CNYvCnSR8xJcYpnD(FxkSQD(T@d?RB5WfaFi2m3o1)1&v;Ur_B|UhxvSSXP0x zX2hgLIb){hUTN-TCZD9J70Ln|Rz%xMgXey4r3<^&Zi z7(Ip+>Kb_%!1fp!64cVgJuAE{rsYP=33Am!0nl(AB*aA3#_K}pEQKv!ez;f`b z2@--OJTN+5&%}0-R$lB6~rga#NGCJ%$9W`-wjDzo3&YX$9tVqxi)}1Q@o=0{_rbPv+J!H>a}T7T;w7>my6~= z<#Ux+*F&$YLJ<_!Ojlc(21hJ%9>OlKqZK9VFJ$7DZe>!J0KvWW{XMOx;@}w-Zvg%x zjjq){W%8TI6@JW{+AwTKkos~nQ~F1`LC;cII7L#o7WwJe>lPr4!QE;qWb7;~0hWc6RJl$LmeuuoRzB;(nojnUM{vPbW#47JsW401ybk`JKsy`u4_E?_g zK310|z}0|E%5u|mW1#;*xy)`uo{y(!@dNu#rfE8^Vk&e@UY>q9S4Z4#_~MYpXT-~s zF7_mrO~8(w_*}0UG2*p-VJFe7v>s6JM%nU#7*yR7heCd$uplO19LYBYjQ_=%ETg8b z#uCBq$(H-Hj3wjFqkD&VyylF#_bqT5SwVwvJ+2tSF#YW0wEw9?2sj|U`DOF|_OztZ!q;+Ii5V1hnqtL> z=|JZB_3S)zaA2q}V{m9ArRp@Y+~>07;MOFCGwS)fT>#mB|*U^!L%1^p&ijndZi zy)WZ@vx`Fm`d7CtX@r<>Ik~Wi*O{`=FY2H8jj}WZ+{P;3i1VYoY^-&$>$%aU8wU+^ z?yqbAxOY2Aux4XXe;CLS$BXXz(Y*VPgc8W{TJLg2jzvLxm(Chy zYc{P6If)~kx&+D^oJ$-afgeN`;7t?35OQ*wv8B_O51r%>S|d0g`r8p(h8SH)KRJ@8 z|G1`XAw*!JRj9vV?uD-d2s7&=t=XrSI{QEIkL%d~9f-nl>l|-Tv?=^~xgoZGA||WxEkV0$v_fQ_`1bxqm5ONMX;qlYXZ9%< zoYH9no%sT+xDn89ELP+mCpVa;90f#G;Q5G7=YJDbTl{K2OHl{*g@_N7jwQBy7(c=? z5%T)B-#%|oI#Nn0Q+Sk7?0KLf>IR6WDJTJH4Pr>bF(=8h9Ubx4Itb_FzI9NQg3|We9H|QV`x@BJWJyl+Sdftq+k5C#=G?yRwv?~rc#GKa242`SvGB%(F;Gle!}RlNd$JTN?2w>^ zF{{uaz;3qyV5c_btAJMQ!n#Myaq?{SG_hb=?2)FLmx3VCJ?$im_2-38Bc9e(+MsHW z?76HRVhYGjm;HC*oWNiFG7#ZfD7rKyvzyTL zh$=ltlt~AA7yMS<^s2`lOb23wXL}4UopRCil2~f%nG0rMg+9yY*DaFH4j`-zQGHS3 zTpQ$imSe5vPiu*ZuJ{tmu)`eUeV)#egUO_+%EC^TMZi>727H94C;Jf_N5rQxXFVfK z>OM7^ZoIO*)@q?(x3;)A$sVihZ(xe34tfi?^_3+G=x@qtNP^Lu=i6T-FtYW%b@A} z1fYVIk`R*AVZLv8gj~Qt1dw*Q?C+F7R~`l)+XnF678~LYWyHBnb;K4_2Mr(~X^8GJ znSu;wVNHV7Wl76!X2%4FH{uSOT~#Y=5DB?4CSjK?gkONjN2)B6bj~P$^OmGb^|>bq zv)7#P56g3I*`k)icOwO%m-0I?YMwvFZd1g7Ae&hn5W32!<{mno6Hz1a`vo}<;c z495wqDd2-m++W&kjr2H9c!*)xO>n&uPU9oT@V%R%gSAes@DqL|`tSbGv^;wv;`4Sl zce#lOCfR1TU+)iak?eftSPW72)UYrhs9C!OMaC?!F}>$<$$eNt?e*;Dj;X2QGUMFI z@>TTY6_puz^?}mf0I4=|tm;X9Lv%s6oo@lLSE(viJO)mW1S$2mjufU(C0eOEfUD(a zw*+d{xVT59S?4__Iycrxx4lXe`nlGDZhWBZ8=Y8AOP!B@28cHn$2Dti@)u~1%Sw0z z*v8HFe5`5%T*T9b0UZ`mZGiH2Yab(~!%lI8eq%HoeG_-j^wMbW_~pQ*RGh%<-PnaH zp$rc4EHHOptO0Og6Ha$I3u~T9RHulnX8=^QF#IjVO%arIN+3^6aZyHM|%T3Z6XqQk5vD{d8 z`sQ^AwEo)$tqsHgJ<&TE2m{vR@7c~(eN>MW3H((VHjjCe_xUDxB8NVUX1AWwji9O$e3*R5}Hut1DjMXh}1x)CE0d+JteeKy$3T1kMkk!oK{=xeLM)UM}4+dXan3-^S<2#lN(g>>$33C-rGh;qvU8JxR~H#63%o&G|~%kuGJ4 zT1JbGy0lvB=&pa81w=IyPwDqh>kW0X5E?b>v(i+V^;aLnUwmbxN%Xg@%2l9}h7WLyLiDVs zm!fhzhCVMH8S$jP++4_J>U;;dX0Ex%HLNdtDZCbUG>g;9u*2&en^M>5=Ako8q6XPY z(-^t0aBomtqk$)Ps##4mrhVdQ`y5|5R&kfN$?l3(UGle)dT-By;+ZP-(+Iwv z$8Ut$tBdG11+w5&TwhkORQ!k@;H(?t^a-RMo)A_+J$~?A2$!@tJ@uBk`%PZ@2KKMc znG9v-+a%9J4Hdt|baotLe7llq0x1#KR0=xPMJu!3D)BfYGu;zPizH8Sx-8F#fA%+Q zfEgk+V};$K@ny1?;w?_eSUsPXvb`M;Z;|v>t;E3D4a7jxq&wn9YzylNG;4;KMy4R0 zYnlkx6KHJ@Vk;Kk9!gJ~A?U)A2fCb><~eAxOheZ(u^0=(#&pPobYY98VW9U!7JF|| z&dB5$ZHKkRu4D#a5TT5oX~gk%W^#iTtsL=UC)niv6KuYJ4wur#>ah&kmM7SbyW;yt zT4sBVE*&=Lkx`q!MSQ1dHLx$#w}IH_$wzA=P!-qOv;rr%-5x}e@bmbw^&lLq-NAFS z9pQjhRCV4pbU=E;Yd>zGX}RNj>JfMIb%p&8%RiDKBe5iiCL_;55UrNMzn7IW1R_M_ z4$K7ef@Ah_zD$>N)NDtFb)alV&Gn(cKIn*d{%v{K=y0QSevYl|CUvWEMb6)vFFgGQ z0F_G^bt}6K;WecKsnk3ycLwfc*9SF4VUP3o_sqkpw+uzU9nnLJuE&Ff{0+ggXsu`# zCG&K?ve9m}dDVI7%L6r-;rge_>a)tY3ATol=ATFGoW0;fZu@bB?Jerc*ul&;CKbccjUC8s7E>Xbu05w(fvf`3PX|BV=DyrT;JdpPgMJNdNcFCyBXasK;A@c-9Cv!4VG zp*$JTyMbI1cjupaY(w*ATIJ!-ay2>A?3PIQ{{wbwY|mMzZKp9yNQeeC;(7nfHJU#2 z&(JNAG^4fl-^OVDCl~M2E7l@I_K*8r-)Rp77UDpvyn@2f;J3ytG?)}rHPIIbIsUOe zpn#XMiw<^!?HFwJfnbS2rK69W;0&e@rz_GS%&eQ@0Dn04tSqMUf33fR_wi$7!_iAc z3gW-JC4{H$ItSzZT4V`216&%NsM-5350RV)B=YO=ys$0PB0VYa>+^dL;CnHwh`~YY zRZ#lh*-&M0x*LT2&4ZVF$2)&I?y>PCz+C|yD_plfX_nGD62yUiJ7K1F+GUW-L<}L` z#_mqvnt@24CE{ffAvzCoWhx57DZqqJA0B;v@P4_K5?X4W$2N2=*KLuI!2XjN`a3sK zrnUa?1EQ%u9ycK8*dLM8%|bRTneo(8wz+^OnStu?&m)$6@y2lIz&`V*xy((=&mn^h z-?vU{*2by%yZ`zhJ7*%mpe@0`;8oLY)$)@|1nX6GHsmKSCq<;_ji) z0bd+vgT4>Qd^O2-EUc3I-~3KofZO+`HB^!aB;@h+N+s_Y;43n8q`zWk%hQX4>~Ncn z?`A0<0N>bi6-3JK_@&+n~_9B>tCyEzhVa~h$*qc>83xlUZS{n>R3EcJlo z-fjk1f?AP_7K6Q(Zi5Hsc)kja!GOrE8kKnT&sTc6hn9n9b;gBMs`-ONJRql=m24RP zrn(&+fVLkO07QA1o4}HtRF`l#4JO=~Y%{pM?q(en2EBsQFpV*3l=m3@*?I$U&q@BD z@8jqrn%UGMwig+kyaoDB-g?k{$W^HBroLuL0NNt0e<_kj58}>Yh+)4#t2*zz>+o04 zAu%h1iI8{dB`S4`H(3%%OLik#ZQuHKUJu#@`u&W+uXUk4Qn)E?km9NKY6I@S2RY~} zRC`ljqeSh;3-u3AKe^kD{b)UTbfMvO%CDoKax*#p;-SYfD{o#rD)(c*P0~$W!L()+ z1t8oq_w49q*em>F_x#hpde`ox+Ip~kljpAjUwSo1>^t%|s zhPB4~)DK+e+j`l`;}cdpUOfaTn^qgz6?j&2W&{x%3I;N46QcN2sW=c*(*&_!fNANpe-QMvwxeG$m=@v`~+ zB|ayYfL~Faw>JI84Q-t%M$>xJlp8v%fyrB)#1_3@Coj02WDsITE$2-M7)z3O z2o2sfO%n3I_6NI-{4M`J;MpoA~3N$B@>x9adh%qgrI4ThwAC z+W&JedW|gXLoYtC(x;^M+6-e_g(ZvMU=L12jLdMLZCzV;8a?b7*y9YYioG{mEh-P0 zVtY_+wu)0&)5Mu}&7~p6X*r+PDwjj5YB6yKdXZ-JVRq=T-Q539APH-jDB@3~nYSw* zz-CUCeHCzGP426-gke1nLEqoFtv3Y~T)^npdW=olvfi}C6@Qv+_A?b{75Uv^=o8DG zQ;~KWdaae<&$fi{J|CjXkoKi`Ap={d0U{K!#2w~~v7;tFh(3(k!7l9!?1E^-@82=m z3vOD0{}y&F!oLm#6}9iLR6VDhUqa0bAXt<7&@=YfEt}I}ZyC}`Mu77iTh#|^HoHdb& zzP##v!=;_S!Ci*{-7Hv?Y7j)h|3 zKfMpIa&h#b^yw&B!lRcXev5ZU+1HuPoId2z6|AX1`#gtBwqi{94pMk9`R!=)TzpI{IOPFi<%K&(Q$J#9FwMg$uF|6rAYL6tu zmUzg#jx^LOEKoE)JyW+%dzIPB5-mxR95ZdZB8hFzPxBJ=Vdc;3$*)R{wuJdSj8!Oa zJW4y2y9x3}qi245T$*Ly3%pkUl=CeU!<31iOC0;0vb#qNyF}RaAgkUbB?~^kIGMz+ zmF=?1tk)p|+cV^-o8rEdmfmOTGdVBr3|&HIL=s;GIg@QJNW*waI@Bv1)Vy;a|L(_i z%KQD}FH*!CS~`=v^<0Wg6SG{P3GCJj#LV`(3DLG*g;voMeY!fFiG6aWa{-*gaFWSYI4)&rC{Pe7;3^xrPFB}w!Bdhsl zDbm^e$cAom!zzdg;t%L03;1wX`!}x7+<py;J1XYU?;VhS{%0Uq$ON-0yW~rT; zTPy6zH@5z<|JNzF!!^oqyR{NAKbwk@ermJT_gM~7!Y|!7^ZrA>Z$;)X^RjQ!bScpa zI_4gN>#lKDtMsfJ$(3SeD`{aw8BPIHkmx|Od!T2Qi-ObDe{tNj6-nwLwxbL%N;{6b zYwvl%51&~k1x4|pab>MOiNn3Z2?%4>wxOarNA_X&mw5XMYtJa>6qJAn?(KmWE@@Q( zYY#-06GF}v>{tyWY2O#E|CD#U&l&7S%!O-{gbx$v0^Z;}q!N zVXY_uO49QKqVcwSblIDS`Z*lJPU@t`g54MtPjQ)o?~<*Y;Mq-{5lMVUq-0SgV_)6!QP1&Wc6_*2n;=xdbCoW^c4lUBX zYLTG-E|Y6mv+tHcxxeieb2Zt$*Nr-b?T9@M3ZJo{@cC%{5OC#XYqwr*pK4vL28ggVld!*N*Z(-s$duOU}T{)bHR$ju3YX|$jd zu#D0l^(O`O;Qx~Am+8^Az7}VQkx!&*-(M`ieqVmz^Tet|aoH#Hv{eQF>=U?s8Pn>d1j# zhJyAEck|KK$VzO)@nzh_QJ3=pJ;%w0+EsLMe0(4Idba^ORsiB7DPEa}&t$Z8k?^=*ewAGMqyXM- zLv+?(SZfmU# znG?;A{^{K)v!q0-i9(%S>@_QjOD74}k@hW)*yUQJM6 z9?eCYv?@}~ZkwHkSR@>=Gq_&92DVgO)MHv>UfQc}DUx^oF%$Gx1iDZFF=J_QEgo@%b9NR4JCQScSyAi@DBY+x2V7UE zZArqh{AdrcCAhtDf`dy}4_sl3;lkS=6#4v|YP2*PdYzzcb;88ju@z zU&1bp9cqhsT?Z8?f07&Xxe#n0Y{eJ~>DV8nUO{|eC<4oxU-$WF=e@6Pq1g~h_`(AC zaxjG81{7}C>g=URJ>z+$Uof{d?jus#=hBA%-^X6RSpFuL-hpG^OA7j4CngIVc5cVW z=I5s5_*Uqd%jucP4&jR!?MpFN+e#G*_En0vG0L=q9gDw(c?ZF?*O7QPWHoi#tBk6c zBr6I*qG193f)T9WNuL>9TbJqEI{s;4Y9G>iML1Pq-6C2GcLD(w{!wi7@O>2jGl!Ui z`jZR@7s9?`$<0I^xHBBFR=Y^R`DAz29^}y_XZLPDO zdi^G4MP0AJG;a*~@xa9@@Q-J0z*pSO#`=I~C^z$b857L9ST*4yf!_~pKrzQcE^P9( zd1mzy(~pc5#$DzY%=6cp%r+~s+39{7na>xARr(YXrIrN4Kt3yoh_MjB= zRf!zOCtk&xpI=>ieB%K4_9n)iuXw#dAmZAyYP1SbM2x#Airz(QH#gB z6^0`TsbLukudMXQHMc9=BT5xA^`f}UdUGc&=s#-f=iR1G8|nG3 zy?+n7=f$oUkj3a?&lWGn3|YRl-Hk0Bwz~KJ2XSv62z9&ukGCk=$RjC|og$PhAxoi6 zLnRbuwAhE4!Z7w|QAxItk(5G~q3mX%c_jPJOblZx`!FW^?st#UbLyPue9rfrKYoAI zA1&VZaxJgxbuIUnI*UXOi=9^V*U>H;JIQ^=afOa0*nH6uOhKW?>60NT@)##*a7qHk z!^!WHOqfUsS#wCvL+YB!sxq#C4UaJJu+_RtgI%aeu?i}DBK5k^QyDlHEn;cMA$ew(X}A5PdBF6NldX?u+q9`%A>3(}wd6F4o!U!n zPrXlzrWM_jbW)*(?;|D4am3wXyFOOU~8>3THd=bIsZskjsX+%0o82Yo7JGkGZcWstbK7~c0MLksfSo)KcsSraAr(C+_(!>EK)*K=!`YYF|)b-^RkKJ;p18*;n*!X z%27kvZAM87=y|Bu*I9F$rJC#-#yBjJ^4woL4x=vTC4Ws#e=L2gQIfA|pM^-&p9;q> z8Sj#G-A*t%D3fTC-?NR%`vc*06A10`H6U`TI4)*WEs6-%Z$2>en>N=l8+caUv^bi+VBR z6%wkPWiW~vfOrT*XUs}IR7(@eskg}K)n1k=Q#)|tZm^-)-Jd&~JaOgQp9W)%q0^NT zYPCDwy@B!-#CR7|^FE!Nv$#yvr}VnyIKTvUXQml^v+zT{LT@{#&O0)cyKVABB%|&R zUDh9@cwwF%u^*cFLqA%T)^Z?w201wGp%1wgfNprHFMbx^tgP}5Zp2LzTB~s`9$eZ% zE)+tveT|`#LS%tJ6TV6iCw7L?cfn8`6;%lh?Q@aa+`X-^>taEBfbWdWg%wR_|NO>- z97~Ih*IgOOhySR8pT|ji$Umecp&(3!P3H+Q=2Z-FG#`nYu@4qstv*8y7bH5jB2>E% z+Hm%TilTW5>)m?XD68_cqSLxsU>_%*Tim!oE}w{Z(SqE(ONSi!c34kTGdxq{Ny{<* zp#x{koah)s7^8n3n_JdSAV&rMJobDex|RevGQVKvg>%uUk&-PpMzv7SrbXcj zgE34eiopUFQNkNCCLKgcaWEo}*Kt|%9QSZar|xEn z{hDtMASYogjpB@JYOgykI;eVO?B*vF4?qRd;vdjdny83gv)!52K}@eNVne?9nN*zs zFYHnD(x}yQk)LPz;`t`unNNN_WfjbL+Mg;qMOJ+cK9{AkA9P7Rq!^6dyAR_ds2aFw znC4<@GD<7WEkevw5hqwFXwI`6fsqwHcsoJpFUe&8*rDfaBg^FmtDlw#Qd{>Zg~^d~ zyV4@Jm+lSe!DVk(*%pB(XG`gWLfHrOZB6(XCmk7-ig#gSmMuR{)nNSbNxw7X#m0?H z3=A{*rqj386Z((q<>ev-gx$<(i>oNMoNee_jOfmjyv}TW&Qh!%zZk%EDDzVGA!V7t2HRq+4U3_^F)sq_6EhaO#YRbb2g36tl#9&7H#oU=Egs2V~O%I`m|tYaQyIXQvXLLOv{Y%qij*}d{a zY1rLtQHG~`!KwXu61`d(+ajb!4}=SG&)usHm{XsQSooo5Kzu`wU#SQwRT!m?mF1v6 zix-bk1q>-k1_s3p8|0xR3Z!K?3B4#tOrx7N!TrhAg2k3k2vZrD*b-8AieshCDGjk_ z`=hX$>$qSX$gXV`3cG$WJiFdciy6r}d~eZyWZ8&2Z__#0!+C#rTE zvL9GkB7yAl5$1%iD|nkrxI>0JF4ieLR6AR>r&(2?j;cMQH8zM88PSd#=o(%x%Jbc4 z-_n)f{WO$WHMZ1Mh$@_*BtoJDM3#+nrkK}6${8un1zfOb90Fq(%4*B^YC)mpz)tkD z7iI1Kq)29`#-xau9OtXDT=%-8`_!`gIa`!u!M1+HFD

ZAM3csCH_vHF7mkfpo!RkO?I*usTA|I!=Lxbtxh=|^#f%Fo#j@}Wi(pFDI+7*j z>t>+7SjO7ga=l+M(nGfT7TpfXRY(id`~3>cQX`60|Fp_OoHC_56;mf_j}51s$7_32 z^pWvK4bJdy={>@#-q1K!oFrxgDc*0*&trFxT&GU*VJs^3j~-5Td}+Xxb}c+@n{Dt7 z=KzaOy4;I6^w3-a1z}-^N1F2<(eqEy+=XH5?Rg3B_5oRe@+h)TJB#z6z^W{MKkcpi z0Jy09%B@h3d#w%BRqTYx8BtC2aod9WjZdgiXVpk>INR9IGE(ddattPMC{GtbJ3c%B z?UWRIgfW?hiZp-a6&&VYdiIF3=X4bpjkV^~s%vymW-mH^6V2y!74TL=L&|jus3!ce zv3tt;tn?mJlAJ6$-Zh9abl@Sy-*()L(t~Z#c-(7)D8`+*O?y9W!U!sqnMlqSBA2EG zPn&C|7|ee{L~-V;3cPNs#uVf`z*;;Y^4%|ed<ZqE=C`UL8!>&J_G`pM@U#GT<5qLursQ#$#uKrGmUvMILkQAtX|5G>j z5^LjtwW0LTHNvML#UwrfLKnFkb z40o(Ova<K7U>akvIeXK~t2=`f?DLuk;veGkZOgeof;UwM_Pj0hsa$qoPrsGEjC zZXei(K1-FXJJ{RB26e2&*{2)u2t>k%L+*Q79 zKPI6O`ew}I!2|1%FWZtR#!b#ao~L7tnx63zj3%6vvrkN@7Nby6z8WfrO_bHhx?`TV z=>{y-p7(tzs{!naI}f}k$%YE#XRpQ=w-b1;DD!XX*=YQ>xMNRF3{G1boqz5$s{s7G z5PI9iUc?_nMsik_Rmi9OH?Vk2dy&r)dndYl6(MS{7lg!Hz+X-c= z7AK{dA#{1|?XIgoNLf6P8DuVj)@wyPO}||8U?9I$+*>6-EiQrHmIJA9<|Rm@A)OZb z*_&X6dyxPGud#rJ;~fQ+O1kFWwMngIn{WkA1%Yk9ILxiz)u`cD@yr0?Da1z*ddr_A3;%Z%FipPKLap6}+{erZO`N^<`%_722e2L#x0@kbCBtKnm> z#^0p;hZcO!c8BHS_R4L0bBq1ATsDLzDw!x#pVX?_y5$=5ckHOE(@@E+f8%s26SufurvN)+X1?~0 zvl+|6nhKy~iWrb|5BbCsEDSxL3uY(>7D0yWZ2YhunkQ}=p2J4DRubNez#o%d-SJna+PWVl*C>(AkIzFj5lAd1) z1#X1gg~Fe)R#V9(<56gN5Kjt)M;-s+02+%ps<*)SaXZU}UT2*c2jB<7vJeg`yvg}N ziMAX3Tl^!v`(>+W=SP5&smzwkpOqKw z(uKwNraP*jJaDkMEq^U8L>I==7SA1hnxH=l{{KGM%_Pc6mPLZWNFPTw5S`(CztgeG zD6e;b%ghXHu30hcKI#_-HvVEhbzgLEVoQzaFH*yonWY*GF3dQ2KL#>{>2ayr0t@MB z8;o-cqG0hENfh#Da8`+H|60y-T~AU5FJX(o5Hpz>RBHhw^qvS$jrVOfV9R+d_IQ<( z{2^O!bJ)WA+U;@uGzb%JHC>bp7dlEBa&oH_M~7toLj0qNZF>%iW0dB2g8RT9kQ&@*iiB@UQTD z$-oot{L2&W3>*XQ$QJenK7y&-W}I>96FNH$S8-7G{;nOu;18B#9&+K z^Cat2@7j3SfXvKXQO8Ce<%fBF#W9x|gCn&ZxZ6YJmoGd;8am*rwv$ASINSb+j!hK% zGkVn&y&dKl3z|M3=T|YDL{~|hR|xWK-_P^x@CvY4#Jj570(BBmpqx$ zYfMfc4bVdpA-Std`oVu*S^}VxH%0wq|GXGl;=P0HAC=plUqR)o+wc+$%zj?OEnN|y zXY*W-%c{ZsiKA<{x61xzIa@{9q5sRCf4*6uYnLNdq1~EwegHL&NF3poGh}BfkV`FG!m(rqia z@612rzRMiQ2>ze?BieWpn0@V_uWxg}r@3f3>u;a=#W}56r*diyNyuy8|33%y0^p9F z*H5NWv=}87&AydAuw%Zq#-rIDXAMnABXxCLwD*xae%m^BMTpJ;0zQ7E_mcG^Xu4tz zw(hPwvc=aDehj=Wf*gr_yc1%n+=k9>tD{83HJQYucqyTDzbht#n~k!h z_h0JB#3v(I%7$XI9tJh?7vAE?J0l8I!JpG)@2YlDsd+{%Mi3Qb@9~rP`!T^T2QNq) zb&vuvnkYHlco`SW2=BF{wX`DfRF~7Y{^ULI(UBVucqS% zKzOI9SP5KoV_@qOp`&(gi#yrD1{dwty}u6NB9JUg`9pIRz(_x!hlcWWteTS_UcU7Y zwyZj`WtGxmt@|rH+X;}@iS?_<>(=|tz+gg;UEv&XxxmzA8exdFk>BdD$L#OzP*~eGjMvR|2Xh|H9XD(ZuC`8erWQVL(j% zI4Z8%f=}}jY&kbZ|2*999?B`4ZR*as{s#_9mo>$^Cpa2_3Y^mrY?`YU(Zw1oD4OEwghV{TNHGTy^@>sA6{43?QhtA z<@RJxVwkp=XM^vH3b=L;o%k9{#8&td2U+hI-E8Y`hfSr(`2mmC3se)o=c=nLJNTPz z_%;5&rAuUIqMl#;TN|+T#yY)w1oOQZH)2#qh=5{5ooaX2gC_pKWFi*At>Y`w9N26+ai~rD_ zy_;<(sEo2l1tlpyVvYQ$r%3u2YlU4gH(rybQ9wNWh@8snLX z?C1YtVq#Bz)Mxt7k4UHbj$FFz*~QCzVi-2uI>u**9+Dy=2O zT5+Cv`25m%qSx3rthN*s+6D=++H^5^>2pPx;!&t}K81tQTP|Q7;Z{%7Pq9W3FS#R( zshm1R5xzIaK7*&8_@M5?!|Gv`5sC8w*S-`q$M6%#{hT@raSH>_63vH7YA3-9d#|kg z+ryg2FUp~f)h9V!2W`z$D%jb%p62lYl!a3lnbHJO{66ZM2e2;6@L~^)jfl7ZA8FT4x za?YLXbFFI=zz>jtHt8`-;JD0!q3!BDjfyqf0!p>Kosohr&@SucA**)Z@vu`b&)tY1 z^;_SFBaGMMiRwow74=t>&=V&Z__X^jXTF@V+)kL*IcToB{3*B>8oG7qL&5x%_rv}( z{qp9>7NdB{!c*5R*H6ES_kTOIAHz%Nt-Qb)I0wRSY*_zAMe_%Ash~pGM_J0IU+)`u z^xf;(9({5`pz)_qAq~mi3O8VJzixU@JpMvFFcG3SKR*D62FXRHlAsxKKTTY z@+E)v9N}se1DY?aohMk*VfP4S z*L4EkYEnpoyuK|EPdf{9XH_nmHS`d)UUO8ym6FhsoSUmBJ%Y;X)EW=$o%#&Ve21we zFk~;I+DKz*#IOjUi)TyxWrIA6*Y@def3qHV6%F($l=}lNAVv&_BG^#)IeRBN!kRo( zJ-JE<|G?B-Ktlrc{vDQozee(HO+B?58Q>O3Se(+#8MMP! zEzBZQcXUvxy)V@RBHGNYO&@FbwWd?*x?F3*s`C%~f3By*er?%u`QF(ydcH}!2BDyj zC6`T*wsgrYB+T|%*045xnb}>DrZbQAWl;NZZoDM?*;DGf)}c;=6ORqU+9?XMPrRK} zb@#Uu-zRp9F26QXzHd(gQkP}7DI)tvSV;pQ1$+PTMy{q<+$9F05ZuPIRF#EVU) z4t6i)oYiKYEB;zPZ!_wrZQZd)etG84mfjZ5;X!eW!gi1D=)FX^fVmONVlgqRSihjd zDfiiv{5hvWVb4yBtcAq@F!PxxX6ZsKBrJW5XYSylIh}46SvP46mb={WHipTLZ?MVV zD)WEDpR2z7KFGbF82H;r>HQjsgRTjml^C?$*IJar5^p@M^E8qR?_nNT{EeagQN423+868^y!54qz0u|P#HotJYLBnlOpcTX zwKQj;uy$Ppe)0@u^8M|w*mwjkS1nk6T05E}+pp29-`|8=9j#b=K6^xz_|d7bVNXfe z0*li+wjvR2;qmEPOR>sBUP4>*YaNcEMBx6G60gd4tp&@qG&JRDi(8!q@HGPdSNY0{ zY1z(ZvKs#u$Of*}e}ToC+I0scWag6v$D*_SPx_Bj;j*+vSk%Xw2F0c4gl`{x3yntc zqY7_6sVVRAZIo1BCLoI)auBv5{jf$LK9|t=xz-{5t_(eU0oFmOL9? z1+0AaiYJdr38JE0c^zF8PGv-^xWJnTDI*w*620lE7==OSNyqp;Y)RV?&ZhGzNy(#i z`*c+>j3#wBQQ?lE#46#vii`t$&jRPLwj)-c$8K8bz!yM+cqmp*MLH{jhd*oH5+xa1 zZlI4b8*$vrNzRHNuO=S#xA8{3N<9D>w;8$x@DPCi6k&GU1-bAx@3N;MYUq4Iq3PzT zLOBaWL{M9P!Tr4a(<`{~jihW|p<@E5A9SKs-+k=CE6+o{^7`zvyxZ$lJcpFyG*#k; z^0_NPaOmK$?pQ|&umeUNA2~9suEZnSZTezMl??pn@w>Hh)IZNOR6ANP2U*5@eC1(w zUSH;K6O%@d9F{TGK5Mj0-Zb`sZ`tE~QOHh3W?Ql^Bfg?Wp!7x&&=g|MsDA}Yb0dkm zZ4*Bmx*cO>c}--DkrxVkV{ml^j?!r zC!2->SVdib z$EvRXh&Yu&(-yMl{8aCT-RyF*a12O7J7;wtCtsj&l7t$=k6#hp{#4r~{Snn;OYuaG zT<;T;fX1)#0blbJtAU40su+A$_MraAqMU2zyWpb15S@1;B`>{`QvvGpSiBu=x%`cD zC185AU!dApVa_y+QbhBX=&7eJ@55rTIW>3mdOrs*w~ah4*-VqmUdZiqWz-`28EIeA zQlCd$&fPnlCIr~B_nRfRbBx}vOSBG5Y~GcsUCQ|Iu_%HcEx`8C=5*GV)?a+|8jct_ zuq_Vz-Vec6n`=Aul5ZsqR#R8 z)PPu1keFiVzvLG;Q3bV<%r#JsrOwHsYZ5ZlP^HUdi9IuX^#c&|IbeI`?gKM1eTA2x zm3th7h(3FzCVpJYs$o7S1YBZ7|8Ke1f1sS!-+Av@>Xx*}ZQ__|4Mk^xS&`FXL@k>1 zcIl#h@~96piYnvovg|uL^X5_FjY})b4yEUBDH@wzme*t!})=(dbZc9*|~g)R)BaeDy&oq-56BZpBe}P|EZ&A27c#TR9B)QvA^Xt zHm(V*ujlr1sGrOkO26G3QW0S3e1=X#fM>j;7RH)Is)3!n!I&!f_Hp51aK{|JfO`}? zxgZmd{8sgF(ac>BxncCad>c6i-UE zdOz$!hm`!ZDXYW1UDZWZh(q*T07no#UoO$F`<2rC^3de!rZ-e?Sr>IoVzmC7bAr8v(uJ;=H7 zISJN{g2O{Pbr=@AwSDE)M}%}D6RpSQA6Bd!Nwxv*amS7M9|w{Rt%&Q^I{jFCNLQep z(Eqw2O{nVrA1>X<(yrd5<>%rJ^*+Z6ng+TyY}si>@Z~@nC@brNGHFrt*RY)=p?;H& zhinq(@uuqE^wbFyTdIxO{4E`HWzF^(#$>50?;9QbOyO7^GQo0Ec)2uNSWd=&a^EcF zx^Z>U$W%6(fISa~w{;Y>S9rvFH4rbo8-3{f<^(GX#CCCB)22CdLmAaQioPaGM@AF} zleY=B?)U6chn~n>)Smq_wnS=qT!)hE(yPQpbG`WHw(fO6QGQHR3{tC4&Ep4HNnV)m z$?vSPEZc5Y{Vi6~z0Ef>kRtL#XvyO)zJ`quU;!hc>7!^?`1C`Fy)!j+O8W$pz*x%Z zzvNb@(i0K9+}GhPp`yy}I^ z1iE1qWrwP`w)unq)I^4b?xQJhxWyjF*=o;+HYSj zEb#RKs(`#CHbvn@9HE7U?`yuep3-mNu>EYI30)+k{^UHh)B7dlf-u zUqW0%_r+(R&0oWI{4Y}SB5>2zrb=pXpOvC&8>^|}nJlHY=w*Ya=FKnMV;R=ZC4R7H zP!PSe<@9TS=bU4zDuiXn`%C3Tgz&*^ly5tat*mz1kPWQ?a8RLTX~v{b`x}`$EN?yE z(O*thD4FVr@2PxMLe8iGR%tU|f@tG8aFpLF0FgVs-^BpfZ^H@>+ux(zGwf(r>2KNj z#`heL=Q>k+GY=cbfElc&+Uf8wm}eslyYpGobvQEiqz`#oA#z-?C~r88Y>B)BB3Gw( zOZLwv`HJa()>KbfMnwDZ5y% zGhXYKQy$}U+T7f{-3>MoHCpLE&+Pj!Rs@1Pb8A1Mb1A=RyE$ooX*yfNvvW$PnMPwO zj3gy4Ss3YjU4U6j2NhD@3~&YB16V&)=gi77;Q-AvGvwv_L1N+hFNuW$}=#*G8*$tT8ywf^F7}rS~7&RY#lK& zCY;}EZ-~tB{MJdw$e`ppoaGAd7>P8`>lELR(SlM-#zHp76cnC$37MW!#kS;`nABMo zH@>`}UsI;KYd@dN2wk@>K?BlflmO#wEYjyv-Wh1@oLg+=*H(UE-wvA^td5ki&f>6A zH@yR1YRshUgN4*<{UD!+!|D}}_DZRB%?QbyS@!=boCU0IbqBx>BXdC?{Fi29ZSca} z;cB#}-He(OtSLc$VKGp`4`lG5U7Pumgh^Ci}rmv!>Ir& zqudaMT`^-Uz2zqqSU_&`$tT#8teEoSQXGO9VDFbeYT%}JGM1g#AAI^^>#yY33o~}w z!dUum-Me7;dp2*MD>9S2ky2R2d-C}K3YbXXimyrV=s2;&!i(Ss<6JOy@ma;qQ{y3} z{p6hdDK;Zyq(13Z&pu*wPKIb3M zM>a^}bYGCz#);>DGfrzaJ>}3EVOVdEw?mK1PYvf@ln+ihy}az&&}ANi1^vr_t-suj ze`BR)PDyDgO7sLX^=_@7y3sp78gQuuHRt8ppyejJ*Cgv|6ht-Vu+j2EHW+6|b-iz1 z8S}=^6*u3bWA*QObLn33VtcL!;^?owXF#rsi`IPT*zVu+Z)~*i{OsSR9h7&i4RI%W z_O<0OaS}bx+!P~n0}i5!yFbU4%_6cOtQV`#BSv5h z2lzD1udcgiG@w)u<}(tSQvuQu={ZEB=%bF!3OW6Imy>g=)rwJf!nFG?#%c9O6*5(a8?;M1M{f)?w%OJXGdg!PR`@P4jL1_H zVr&))`DVxSBF2;>CD{<))4l9(2J`*K?={_|YOx!vvR@=WnKrv#dxDnM%oiE zoA|@xb(USg^SqiMlqa?sEUe&MKSQA*2rC8_U|qeM+Zm{Nxo177cmvPCBKPe5U%<{9 zj=9iVkg}t`GZr~y3wWhqMz%DvKEN>5&%Ye9=$vLSlfx#)-q?aGo@qJ8`Z)WffQ+Me zU331%lWW&CeQB_l;kvmzJ$z(vvF)*=qij)^G}GZfBosV(e-H{g6z~6))BF)f9WV!< z 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 Date: Thu, 4 May 2023 08:32:02 +0200 Subject: [PATCH 20/27] docs: technical advisory (#5792) * docs: technical advisory * Update docs/sidebars.js Co-authored-by: mffap * Update docs/docs/support/advisory/a10000.md Co-authored-by: mffap * Update docs/docs/support/advisory/a10000.md Co-authored-by: mffap * Update docs/docs/support/advisory/a10000.md Co-authored-by: mffap --------- Co-authored-by: mffap --- docs/docs/support/advisory/a10000.md | 26 ++++++++++++++++ docs/docs/support/technical_advisory.mdx | 39 ++++++++++++++++++++++++ docs/sidebars.js | 15 +++++++++ 3 files changed, 80 insertions(+) create mode 100644 docs/docs/support/advisory/a10000.md create mode 100644 docs/docs/support/technical_advisory.mdx diff --git a/docs/docs/support/advisory/a10000.md b/docs/docs/support/advisory/a10000.md new file mode 100644 index 000000000..9943bcc30 --- /dev/null +++ b/docs/docs/support/advisory/a10000.md @@ -0,0 +1,26 @@ +--- +title: Technical Advisory 10000 +--- + +## Description + +Currently, by default, users are directed to the "Select Account Page" on the ZITADEL login. +However, this can be modified by including a [prompt or a login hint](/docs/apis/openidoauth/endpoints#additional-parameters) in the authentication request. + +As a result of this default behavior, users who already have an active session in one application and wish to log in to a second one will need to select their user account, even if no other session is active. + +To address this, we are going to change this behavior so that users will be automatically authenticated when logging into a second application, as long as they only have one active session. + +## Statement + +This behaviour change is tracked in the following issue: [Reuse current session if no prompt is selected ](https://github.com/zitadel/zitadel/issues/4841) +As soon as the release version is published, we will include the version here. + +## Mitigation + +If you want to prompt users to always select their account on purpose, please make sure to include the `select_account` [prompt](/docs/apis/openidoauth/endpoints#additional-parameters) in your authentication request. + +## Impact + +Once this update has been released and deployed, your users will be automatically authenticated +No action will be required on your part if this is the intended behavior. diff --git a/docs/docs/support/technical_advisory.mdx b/docs/docs/support/technical_advisory.mdx new file mode 100644 index 000000000..c866c3293 --- /dev/null +++ b/docs/docs/support/technical_advisory.mdx @@ -0,0 +1,39 @@ +--- +title: Technical Advisory +--- + +Technical advisories are notices that report major issues with ZITADEL Self-Hosted or the ZITADEL Cloud platform that could potentially impact security or stability in production environments. +These advisories may include details about the nature of the issue, its potential impact, and recommended mitigation actions. + +Users are strongly encouraged to evaluate these advisories and consider the recommended mitigation actions independently from their version upgrade schedule. +We understand that these advisories may include breaking changes, and we aim to provide clear guidance on how to address these changes. + + + + + + + + + + + + + + + + + + + +
AdvisoryNameTypeSummaryAffected versionsDate
A-10000Reusing user sessionBreaking Behaviour ChangeThe default behavior for users logging in is to be directed to the Select Account Page on the Login. With the upcoming changes, users will be automatically authenticated when logging into a second application, as long as they only have one active session. No action is required on your part if this is the intended behavior.TBDTBD
+ +## Categories + +### Breaking Behaviour Change + +A breaking behavior change refers to a modification or update that changes the behavior of ZITADEL. +This change does not necessarily affect the APIs or any functions you are calling, so it may not require an update to your code. +However, if you rely on specific results or behaviors, they may no longer be guaranteed after the change is implemented. +Therefore, it is important to be aware of breaking behavior changes and their potential impact on your use of ZITADEL, and to take appropriate action if needed to ensure continued functionality. + diff --git a/docs/sidebars.js b/docs/sidebars.js index 41ece73da..ca0250612 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -310,6 +310,21 @@ module.exports = { collapsed: true, items: [ "support/troubleshooting", + { + type: 'category', + label: "Technical Advisory", + link: { + type: 'doc', + id: 'support/technical_advisory', + }, + collapsed: true, + items: [ + { + type: 'autogenerated', + dirName: 'support/advisory', + }, + ], + }, { type: "category", label: "Trainings", From f1534c0c4c736381dda22fcbd9de8b26febb2109 Mon Sep 17 00:00:00 2001 From: Livio Spring Date: Thu, 4 May 2023 10:50:19 +0200 Subject: [PATCH 21/27] refactor: use new protoc plugin for api v2 (#5798) * refactor: use new protoc plugin for api v2 * simplify code --- build/zitadel/generate-grpc.sh | 7 +- internal/api/grpc/server/gateway.go | 15 ++ .../server/middleware/auth_interceptor.go | 9 +- internal/protoc/protoc-gen-zitadel/main.go | 147 ++++++++++++++++++ .../protoc-gen-zitadel/zitadel.pb.go.tmpl | 29 ++++ pkg/grpc/protoc/v2/doc.go | 3 + .../protoc_gen_zitadel/v2/options.proto | 26 ++++ .../session/v2alpha/session_service.proto | 9 +- proto/zitadel/user/v2alpha/user_service.proto | 24 ++- 9 files changed, 252 insertions(+), 17 deletions(-) create mode 100644 internal/protoc/protoc-gen-zitadel/main.go create mode 100644 internal/protoc/protoc-gen-zitadel/zitadel.pb.go.tmpl create mode 100644 pkg/grpc/protoc/v2/doc.go create mode 100644 proto/zitadel/protoc_gen_zitadel/v2/options.proto diff --git a/build/zitadel/generate-grpc.sh b/build/zitadel/generate-grpc.sh index 6f85200da..891125cb6 100755 --- a/build/zitadel/generate-grpc.sh +++ b/build/zitadel/generate-grpc.sh @@ -18,8 +18,9 @@ protoc \ --validate_out=lang=go:${GOPATH}/src \ $(find ${PROTO_PATH} -iname *.proto) -# install authoption proto compiler +# install authoption and zitadel proto compiler go install ${ZITADEL_PATH}/internal/protoc/protoc-gen-auth +go install ${ZITADEL_PATH}/internal/protoc/protoc-gen-zitadel # output folder for openapi v2 mkdir -p ${OPENAPI_PATH} @@ -79,7 +80,7 @@ protoc \ --openapiv2_out ${OPENAPI_PATH} \ --openapiv2_opt logtostderr=true \ --openapiv2_opt allow_delete_body=true \ - --auth_out=${GOPATH}/src \ + --zitadel_out=${GOPATH}/src \ --validate_out=lang=go:${GOPATH}/src \ ${PROTO_PATH}/user/v2alpha/user_service.proto @@ -91,7 +92,7 @@ protoc \ --openapiv2_out ${OPENAPI_PATH} \ --openapiv2_opt logtostderr=true \ --openapiv2_opt allow_delete_body=true \ - --auth_out=${GOPATH}/src \ + --zitadel_out=${GOPATH}/src \ --validate_out=lang=go:${GOPATH}/src \ ${PROTO_PATH}/session/v2alpha/session_service.proto diff --git a/internal/api/grpc/server/gateway.go b/internal/api/grpc/server/gateway.go index 7fae522d9..a4cbbbe61 100644 --- a/internal/api/grpc/server/gateway.go +++ b/internal/api/grpc/server/gateway.go @@ -12,6 +12,7 @@ import ( "google.golang.org/grpc/credentials/insecure" healthpb "google.golang.org/grpc/health/grpc_health_v1" "google.golang.org/protobuf/encoding/protojson" + "google.golang.org/protobuf/proto" client_middleware "github.com/zitadel/zitadel/internal/api/grpc/client/middleware" "github.com/zitadel/zitadel/internal/api/grpc/server/middleware" @@ -38,6 +39,7 @@ var ( runtime.WithMarshalerOption(runtime.MIMEWildcard, jsonMarshaler), runtime.WithIncomingHeaderMatcher(headerMatcher), runtime.WithOutgoingHeaderMatcher(runtime.DefaultHeaderMatcher), + runtime.WithForwardResponseOption(responseForwarder), } headerMatcher = runtime.HeaderMatcherFunc( @@ -50,6 +52,15 @@ var ( return runtime.DefaultHeaderMatcher(header) }, ) + + responseForwarder = func(ctx context.Context, w http.ResponseWriter, resp proto.Message) error { + t, ok := resp.(CustomHTTPResponse) + if ok { + // TODO: find a way to return a location header if needed w.Header().Set("location", t.Location()) + w.WriteHeader(t.CustomHTTPCode()) + } + return nil + } ) type Gateway struct { @@ -62,6 +73,10 @@ func (g *Gateway) Handler() http.Handler { return addInterceptors(g.mux, g.http1HostName) } +type CustomHTTPResponse interface { + CustomHTTPCode() int +} + type RegisterGatewayFunc func(ctx context.Context, mux *runtime.ServeMux, conn *grpc.ClientConn) error func CreateGatewayWithPrefix(ctx context.Context, g WithGatewayPrefix, port uint16, http1HostName string) (http.Handler, string, error) { diff --git a/internal/api/grpc/server/middleware/auth_interceptor.go b/internal/api/grpc/server/middleware/auth_interceptor.go index f02a822d8..d87e57233 100644 --- a/internal/api/grpc/server/middleware/auth_interceptor.go +++ b/internal/api/grpc/server/middleware/auth_interceptor.go @@ -11,6 +11,7 @@ import ( grpc_util "github.com/zitadel/zitadel/internal/api/grpc" "github.com/zitadel/zitadel/internal/api/http" "github.com/zitadel/zitadel/internal/telemetry/tracing" + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" ) func AuthorizationInterceptor(verifier *authz.TokenVerifier, authConfig authz.Config) grpc.UnaryServerInterceptor { @@ -34,8 +35,8 @@ func authorize(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, } orgID := grpc_util.GetHeader(authCtx, http.ZitadelOrgID) - if o, ok := req.(AuthContext); ok { - orgID = o.AuthContext() + if o, ok := req.(OrganisationFromRequest); ok { + orgID = o.OrganisationFromRequest().GetOrgId() } ctxSetter, err := authz.CheckUserAuthorization(authCtx, req, authToken, orgID, verifier, authConfig, authOpt, info.FullMethod) @@ -46,6 +47,6 @@ func authorize(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, return handler(ctxSetter(ctx), req) } -type AuthContext interface { - AuthContext() string +type OrganisationFromRequest interface { + OrganisationFromRequest() *object.Organisation } diff --git a/internal/protoc/protoc-gen-zitadel/main.go b/internal/protoc/protoc-gen-zitadel/main.go new file mode 100644 index 000000000..bad527636 --- /dev/null +++ b/internal/protoc/protoc-gen-zitadel/main.go @@ -0,0 +1,147 @@ +package main + +import ( + "bytes" + _ "embed" + "fmt" + "io" + "os" + "text/template" + + "google.golang.org/protobuf/compiler/protogen" + "google.golang.org/protobuf/proto" + "google.golang.org/protobuf/types/descriptorpb" + "google.golang.org/protobuf/types/pluginpb" + + protoc_gen_zitadel "github.com/zitadel/zitadel/pkg/grpc/protoc/v2" +) + +var ( + //go:embed zitadel.pb.go.tmpl + zitadelTemplate []byte +) + +type authMethods struct { + GoPackageName string + ProtoPackageName string + ServiceName string + AuthOptions []authOption + AuthContext []authContext + CustomHTTPResponses []httpResponse +} + +type authOption struct { + Name string + Permission string + CheckFieldName string +} + +type authContext struct { + Name string + OrgMethod string +} + +type httpResponse struct { + Name string + Code int32 +} + +func main() { + input, _ := io.ReadAll(os.Stdin) + var req pluginpb.CodeGeneratorRequest + err := proto.Unmarshal(input, &req) + if err != nil { + panic(err) + } + + opts := protogen.Options{} + plugin, err := opts.New(&req) + if err != nil { + panic(err) + } + plugin.SupportedFeatures = uint64(pluginpb.CodeGeneratorResponse_FEATURE_PROTO3_OPTIONAL) + + tmpl := loadTemplate(zitadelTemplate) + + for _, file := range plugin.Files { + methods := new(authMethods) + for _, service := range file.Services { + methods.ServiceName = service.GoName + methods.GoPackageName = string(file.GoPackageName) + methods.ProtoPackageName = *file.Proto.Package + for _, method := range service.Methods { + options := method.Desc.Options().(*descriptorpb.MethodOptions) + if options == nil { + continue + } + ext := proto.GetExtension(options, protoc_gen_zitadel.E_Options).(*protoc_gen_zitadel.Options) + if ext == nil { + continue + } + if ext.AuthOption != nil { + generateAuthOption(methods, ext.AuthOption, method) + } + if ext.HttpResponse != nil { + methods.CustomHTTPResponses = append(methods.CustomHTTPResponses, httpResponse{Name: string(method.Output.Desc.Name()), Code: ext.HttpResponse.SuccessCode}) + } + } + } + if len(methods.AuthOptions) > 0 { + generateFile(tmpl, methods, file, plugin) + } + } + + // Generate a response from our plugin and marshall as protobuf + stdout := plugin.Response() + out, err := proto.Marshal(stdout) + if err != nil { + panic(err) + } + + // Write the response to stdout, to be picked up by protoc + _, err = fmt.Fprint(os.Stdout, string(out)) + if err != nil { + panic(err) + } +} + +func generateAuthOption(methods *authMethods, protoAuthOption *protoc_gen_zitadel.AuthOption, method *protogen.Method) { + methods.AuthOptions = append(methods.AuthOptions, authOption{Name: string(method.Desc.Name()), Permission: protoAuthOption.Permission}) + if protoAuthOption.OrgField == "" { + return + } + orgMethod := buildAuthContextField(method.Input.Fields, protoAuthOption.OrgField) + if orgMethod != "" { + methods.AuthContext = append(methods.AuthContext, authContext{Name: string(method.Input.Desc.Name()), OrgMethod: orgMethod}) + } +} + +func generateFile(tmpl *template.Template, methods *authMethods, protoFile *protogen.File, plugin *protogen.Plugin) { + var buffer bytes.Buffer + err := tmpl.Execute(&buffer, &methods) + if err != nil { + panic(err) + } + + filename := protoFile.GeneratedFilenamePrefix + ".pb.zitadel.go" + file := plugin.NewGeneratedFile(filename, ".") + + _, err = file.Write(buffer.Bytes()) + if err != nil { + panic(err) + } +} + +func loadTemplate(templateData []byte) *template.Template { + return template.Must(template.New(""). + Parse(string(templateData))) +} + +func buildAuthContextField(fields []*protogen.Field, fieldName string) string { + for _, field := range fields { + if string(field.Desc.Name()) == fieldName { + return ".Get" + field.GoName + "()" + } + } + return "" +} diff --git a/internal/protoc/protoc-gen-zitadel/zitadel.pb.go.tmpl b/internal/protoc/protoc-gen-zitadel/zitadel.pb.go.tmpl new file mode 100644 index 000000000..4b321b3b3 --- /dev/null +++ b/internal/protoc/protoc-gen-zitadel/zitadel.pb.go.tmpl @@ -0,0 +1,29 @@ +// Code generated by protoc-gen-zitadel. DO NOT EDIT. + +package {{.GoPackageName}} + +import ( + "github.com/zitadel/zitadel/internal/api/authz" + {{if .AuthContext}}"github.com/zitadel/zitadel/pkg/grpc/object/v2alpha"{{end}} +) + +var {{.ServiceName}}_AuthMethods = authz.MethodMapping { + {{ range $m := .AuthOptions}} + {{$.ServiceName}}_{{$m.Name}}_FullMethodName: authz.Option{ + Permission: "{{$m.Permission}}", + CheckParam: "{{$m.CheckFieldName}}", + }, + {{ end}} +} + +{{ range $m := .AuthContext}} +func (r *{{ $m.Name }}) OrganisationFromRequest() *object.Organisation { + return r{{$m.OrgMethod}} +} +{{ end }} + +{{ range $resp := .CustomHTTPResponses}} +func (r *{{ $resp.Name }}) CustomHTTPCode() int { + return {{$resp.Code}} +} +{{ end }} diff --git a/pkg/grpc/protoc/v2/doc.go b/pkg/grpc/protoc/v2/doc.go new file mode 100644 index 000000000..bdf6bd92c --- /dev/null +++ b/pkg/grpc/protoc/v2/doc.go @@ -0,0 +1,3 @@ +// Package protoc contains the generated protobuf structs +// the folder will be empty until the files are generated +package protoc diff --git a/proto/zitadel/protoc_gen_zitadel/v2/options.proto b/proto/zitadel/protoc_gen_zitadel/v2/options.proto new file mode 100644 index 000000000..6ab648e74 --- /dev/null +++ b/proto/zitadel/protoc_gen_zitadel/v2/options.proto @@ -0,0 +1,26 @@ +syntax = "proto3"; + +package zitadel.protoc_gen_zitadel.v2; + +import "google/protobuf/descriptor.proto"; + +option go_package = "github.com/zitadel/zitadel/pkg/grpc/protoc/v2;protoc"; + +extend google.protobuf.MethodOptions { + Options options = 50001; +} + +message Options { + AuthOption auth_option = 1; + CustomHTTPResponse http_response = 2; +} + +message AuthOption { + reserved 2; + string permission = 1; + string org_field = 3; +} + +message CustomHTTPResponse { + int32 success_code = 1; +} diff --git a/proto/zitadel/session/v2alpha/session_service.proto b/proto/zitadel/session/v2alpha/session_service.proto index aefd47e21..dccf0bc0b 100644 --- a/proto/zitadel/session/v2alpha/session_service.proto +++ b/proto/zitadel/session/v2alpha/session_service.proto @@ -2,7 +2,8 @@ syntax = "proto3"; package zitadel.session.v2alpha; -import "zitadel/options.proto"; + +import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/session/v2alpha/session.proto"; import "google/api/annotations.proto"; import "validate/validate.proto"; @@ -19,8 +20,10 @@ service SessionService { get: "/v2alpha/sessions/{id}" }; - option (zitadel.v1.auth_option) = { - permission: "authenticated" + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } }; } } diff --git a/proto/zitadel/user/v2alpha/user_service.proto b/proto/zitadel/user/v2alpha/user_service.proto index 2a4629779..f899d91f7 100644 --- a/proto/zitadel/user/v2alpha/user_service.proto +++ b/proto/zitadel/user/v2alpha/user_service.proto @@ -2,8 +2,8 @@ syntax = "proto3"; package zitadel.user.v2alpha; -import "zitadel/options.proto"; import "zitadel/object/v2alpha/object.proto"; +import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/user/v2alpha/email.proto"; import "zitadel/user/v2alpha/password.proto"; import "zitadel/user/v2alpha/user.proto"; @@ -82,8 +82,14 @@ service UserService { body: "*" }; - option (zitadel.v1.auth_option) = { - permission: "user.write" + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "user.write" + org_field: "organisation" + } + http_response: { + success_code: 201 + } }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { @@ -105,8 +111,10 @@ service UserService { body: "*" }; - option (zitadel.v1.auth_option) = { - permission: "authenticated" + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { @@ -128,8 +136,10 @@ service UserService { body: "*" }; - option (zitadel.v1.auth_option) = { - permission: "authenticated" + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } }; option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { From 9c3f149cd7450f5e5361159e1629e5879fffa9fc Mon Sep 17 00:00:00 2001 From: mffap Date: Thu, 4 May 2023 14:37:01 +0200 Subject: [PATCH 22/27] docs(sh-manage): add logging to production setup (#5800) * docs(sh-manage): add logging to production setup * Update docs/docs/self-hosting/manage/production.md Co-authored-by: Florian Forster * add suggestion from review --------- Co-authored-by: Florian Forster --- docs/docs/self-hosting/manage/production.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/docs/docs/self-hosting/manage/production.md b/docs/docs/self-hosting/manage/production.md index 8e2aae0be..1bc926db2 100644 --- a/docs/docs/self-hosting/manage/production.md +++ b/docs/docs/self-hosting/manage/production.md @@ -45,6 +45,22 @@ Tracing: MetricPrefix: zitadel ``` +## Logging + +ZITADEL follows the principles that guide cloud-native and twelve factor applications. +Logs are a stream of time-ordered events collected from all running processes. + +ZITADEL processes write the following events to the standard output: + +- Runtime Logs: Define the log level and record format [in the Log configuration section](https://github.com/zitadel/zitadel/blob/main/cmd/defaults.yaml#L1-L4) +- Access Logs: Enable logging all HTTP and gRPC responses from the ZITADEL binary [in the LogStore section](https://github.com/zitadel/zitadel/blob/main/cmd/defaults.yaml#L366) +- Actions Exectution Logs: Actions can emit custom logs at different levels. For example, a log record can be emitted each time a user is created or authenticated. If you don't want to have these logs in STDOUT, you can disable this [in the LogStore section](https://github.com/zitadel/zitadel/blob/main/cmd/defaults.yaml#L387) . + +Log file management should not be in each business apps responsibility. +Instead, your execution environment should provide tooling for managing logs in a generic way. +This includes tasks like rotating files, routing, collecting, archiving and cleaning-up. +For example, systemd has journald and kubernetes has fluentd and fluentbit. + ## Database ### Prefer CockroachDB From 696fb390ae961479427f163b4178162ce5f8df59 Mon Sep 17 00:00:00 2001 From: mffap Date: Thu, 4 May 2023 15:37:28 +0200 Subject: [PATCH 23/27] docs(concepts): Describe audit trail feature (#5747) * docs(concepts): Audit Trail * event viewer * event api * future plans * fix broken links * external system * link to logs (dependency) * correct link * Apply suggestions from code review Co-authored-by: Florian Forster * service user link * replace image --------- Co-authored-by: Florian Forster --- docs/docs/concepts/features/audit-trail.md | 64 ++++++++++++++++++ docs/sidebars.js | 1 + .../concepts/audit-trail/audit-log-events.png | Bin 0 -> 419723 bytes .../img/concepts/audit-trail/event-viewer.png | Bin 0 -> 597316 bytes 4 files changed, 65 insertions(+) create mode 100644 docs/docs/concepts/features/audit-trail.md create mode 100644 docs/static/img/concepts/audit-trail/audit-log-events.png create mode 100644 docs/static/img/concepts/audit-trail/event-viewer.png diff --git a/docs/docs/concepts/features/audit-trail.md b/docs/docs/concepts/features/audit-trail.md new file mode 100644 index 000000000..8b7136a22 --- /dev/null +++ b/docs/docs/concepts/features/audit-trail.md @@ -0,0 +1,64 @@ +--- +title: Audit Trail +--- + +ZITADEL provides you with an built-in audit trail to track all changes and events over an unlimited period of time. +Most other solutions replace a historic record and track changes in a separate log when information is updated. +ZITADEL only ever appends data in an [Eventstore](https://zitadel.com/docs/concepts/eventstore), keeping all historic record. +The audit trail itself is identical to the state, since ZITADEL calculates the state from all the past changes. + +![Example of events that happen for a profile change and a login](/img/concepts/audit-trail/audit-log-events.png) + +This form of audit log has several benefits over storing classic audit logs. +You can view past data in-context of the whole system at a single point in time. +Reviewing a past state of the application can be important when tracing an incident that happened months back. Moreover the eventstore provides a truly complete and clean audit log. + +## Accessing the Audit Log + +### Last changes of an object + +You can check the last changes of most objects in the [Console](/docs/guides/manage/console/overview). +In the following screenshot you can see an example of last changes on an [user](/docs/guides/manage/console/users). +The same view is available on several other objects such as organization or project. + +![Profile Self Manage](/img/guides/console/myprofile.png) + +### Event View + +Administrators can see all events across an instance and filter them directly in [Console](/docs/guides/manage/console/overview). +Go to your instance settings and then click on the Tab **Events** to open the Event Viewer or browse to $YOUR_DOMAIN/ui/console/events + +![Event viewer](/img/concepts/audit-trail/event-viewer.png) + +### Event API + +Since everything that is available in Console can also be called with our APIs, you can access all events and audit data trough our APIs: + +- [Event API Guide](/docs/guides/integrate/event-api) +- [API Documentation](/docs/category/apis/admin/events) + +Access to the API is possible with a [Service User](/docs/guides/integrate/serviceusers) account, allowing you to integrate the events with your own business logic. + +## Using logs in external systems + +You can use the [Event API](#event-api) to pull data and ingest it in an external system. + +[Actions](actions.md) can be used to write events to the stdout and [process the events as logs](../../self-hosting/manage/production#logging). +Please refer to the zitadel/actions repository for a [code sample](https://github.com/zitadel/actions/blob/main/examples/post_auth_log.js). +You can use your log processing pipeline to parse and ingest the events in your favorite analytics tool. + +It is possible to send events directly with an http request to an external tool. +We don't recommend this approach since this would create back-pressure and increase the overall processing time for requests. + +:::info Scope of Actions +At this moment Actions can be invoked on certain events, but not generally on every event. +This is not a technical limitation, but a [feature on our backlog](https://github.com/zitadel/zitadel/issues/5101). +::: + +## Future plans + +There will be three major areas for future development on the audit data + +- [Metrics](https://github.com/zitadel/zitadel/issues/4458) and [standard reports](https://github.com/zitadel/zitadel/discussions/2162#discussioncomment-1153259) +- [Feedback loop](https://github.com/zitadel/zitadel/issues/5102) and threat detection +- Forensics and replay of events diff --git a/docs/sidebars.js b/docs/sidebars.js index ca0250612..1858d4357 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -281,6 +281,7 @@ module.exports = { "concepts/features/identity-brokering", "concepts/structure/jwt_idp", "concepts/features/actions", + "concepts/features/audit-trail", "concepts/features/selfservice", ] }, diff --git a/docs/static/img/concepts/audit-trail/audit-log-events.png b/docs/static/img/concepts/audit-trail/audit-log-events.png new file mode 100644 index 0000000000000000000000000000000000000000..1774aa9dc7416f9f4550ca233a4065eb77741f10 GIT binary patch literal 419723 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�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%0A|Ah@dI8w8+5461Z)RMSgmX1s7ZV1jFI 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

br9_o{>BTQy0(juf+lo#f=jX8+C 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 z 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

Rwtf3509yZiI6?iMa>eun0oaltrtC)lURFe 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

K<8M|hH9NQKHq?_~ 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 z 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

Rukqt0cJZa>d9!ff1dKw2H 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�T7e3%_tHimF^clGDiaueu0y>SGgJ>X(ru#!2|eF)+ixECQI5Ah zF^n~pbFsp_3_wSdP;F;>2IR%B0Mx*(?)+x!OeVS=#b)!1BzEsJ4FW5r626 zW{E$l_3#512&f~C$^!wz#{EFdhqN|;o_|B_48tw9_3y>n`A2FgZttslRNBQJD=u^% zwC4j8-9jK8nw{oiSN}*`pBi?i^QSxitNX$o+?{_5-vyK*|FyH~HaO(th5aQy?}_T= zsL^wRq8_UmPYR}Zz7<^UqGKB?nPMHUGRkrC3a=*IT#S1~zZ>afDK_DB)XeH$w@3`G zf~IRs)3WCtZfZMeZpC{fyelXR1GdDm-z;QiP6&IS%zb~TV{v}2NQ@dQ4}!FYJPZDd z0)I-U1inCJ;AjPfYYJfpAXeO^}Cum>sd|qa~^ZCoateM{nHo$xMEVg??2#0G$ zj~PTkJSqq5QNmqoeYUfYl$do9GnO(UJFjD5cfVope}La)jbe%3y2h!P+urjqC(keD z&B{pBS2C15*0W04I8&>ip@m4Ly0skPlVDSS2z@abEfBQCJxu-t#`)R%h@+AUFXCD^ zZMB^on%LZBA6yyHiwv`JbHBb2+kyBJEo5Z#A40wRECaO4(2V zNCwQg7iT52SZD2kJ9e@YyYk;ne&L&S-jqdOoBJxVY5ZqkUto{PsZC;x?no{1TY}8lMCa z&2=`zX7Gabg8=$e%khU=1qW>-R&l?bOeTg?!R&2Yc#JEUH25cAzkuPT&S48Vc*#|l zK(TXWYt+Fxc&~Ih_56a#5}o3vd{%cy4Z>Dk+w$9*n4DK)p!+DXAOP7_5?k3z8rz%| z$a3@nv{yf%o3eD9SgaIN>DIcoL&sjvzd_zQwplMa0#FyLg_l3$p^=tP7>hH!IKIOl za!GMWn0D#eo?8?2B0ga>lfq3PFl0Q1LyM(W)U3bFh9PP)`%1W4i)LAFO7dCv%LiWY z=wTnpk0N{>E0Aux1;kqfi&{s)ke~Dt76LnWBVD)CmQxj`Rq0mZU{LjTS<&{k1YVy0%kF& zcPER=VC3YINq%XHzcy3lTKS;*JAJCLBh>wURAG9g|6IF!#bh*BILZ6kKB?fui^YS- zy9$BZ%aEOL)b(}Y{t{`zzwQD+G87>AMz@e0P6RK>evO#iS2<2J6H4#E!nwe$+`*w>RPUj`O!!$-IQ*U*+{{$`3H%oWW2FYY>|zw z`A_oqYe}A$3e*-Z)op&M+!YJ-t_DLsobbk>52pjhRUxEP6Y3jm83JJU})QkB*qp)R8A6sf^=NJg-4~;PI zF^FgzSm=m|q&yby;U%-~u%=B^6t>o@Sptf<&@rl0L^8yQgThq(*|9~pka1}*H(y=g zFuO(@0{cG0-(Q2)5pu=)*Xf+Q*2*@}K>ch1wo7v>I=kC-Sk`r>|D}c&rX_$t;^DQZ zH5_@ueeXYC*5nP~FBdI5>7~G3CGk&sNAbZS)w~UqAFms-Z07FRfB6=!-@WF z5D$UG{h!h6KfK5vE>bW8*zaGvw;tr-x=fOv0~j=>;?(+~#G;=3##qAc6k(=oJ*iB4 zeG(U~aj*P4i)P*e3$)+J=!4)a@KT_pj@Cmq_jjz8{pOK_mbQ#P>lc9{b$A~9`(g9l9 zvYM;Xm0}`;SHt_FAf`C)^Y~{1k2`Uav`!PAl0va zuGpP=tcN{bd=I`vw`-C0{K4P3hD#6zLqH`^6{@nF4fyRWNqS!U=+990;>&}?Hb@)L z&zX@|A>;|wCCEehF2MDiVP%`0C8_e5kGe-f?l}ndrzbmi^4r?{dTX4OG>e?Fa*B1{ z7w6%@XkhwOgh$56V*WR|$T`*l#p1aNg<=TnZH4~1s5|!kZdWenHin%T9JaJ?xXBh6 z)J6&M7DszxO&H_JQ+Mp$-vNaBR7|8WX zLPPaMx)75&=Zwse5G0J?U%C6Yn{ok5sgq1NEs*(ZF@BZI-+<$zVpJm+?(}1X?Zb2j zPLwka-{Ir3>mTT14+i*J>4~ur!M)Ipr1B<1-Ei|XIGnh350-F)3iq%7a2rEFu08y? zU;kd<|LI$i5%Ba;pD+u?|K-*5O2Yr?(c z+ieO{ya=K7?u9aI=zmtZe{tj&Zy3r+S0$d`DHrH7KLmjAw$BfKaqZVNIGp_3?*MJ) z517a6+3@t=p2PpBVsZcAH_AX^O2uH>)Ywb(-#wE;{`#qB61vr?_B*=zUug7Gby5@( z070mBHZZ#EKdtHSM0yHjF5ukVymGJpPdn!?=1A6F0%CnbgzAOAgD!u22+kY%y+w zpMn3=Zv96FUJ8@U3^B{JPiL72<|ao2sl^!6mPayzdzV?&TWiE>6w;bs-O48|H9o-x z@N72Oi|56#8mQA17)S$??K#YQ5b>EET5Yb=ToHAL7xwbebss&36xH*fnyl)TZ!-YE z=`<|WI;m6za)k2+{7d`gT;g2rn{!cY+6Ap5UPSFfz?|f%@=tZU^2aPI3a<`B+7Ygk zoIu#BJ#071WTcwHY~G!`Q-dhHavH9A)bA%Um3uZMiW+Er0HgABGdecsyEtrg1q61k za)BAQuCimQ-iSYH*hPkHd(w%z$p?lXj4q0Mao1Qb?QSe-*qblQWWamx;0V@od$PAd?wZmrcCRBLYAljk8a6%dKCY*VFRPXj~Us9 zAs|wev66UVKzBz&y+2#&H0c#TWIf!LKjwI*o~X_>XR*vRyubmL6}nKix4fr-)bvj* z1k$IXIv=8#RHJ0>V~b^(y~M=&*PN29H18_Dx+FWF>Vv&Eas1J(Dqm;cG-E;?@9*;P zOE22i0fJb8z0r%0E5N~Nl3R-@agAq?kut9?!8s;eS2%&JVerRmWWBng5}OQn&}3Xj z_3Xf`w_P325d+uOsC`};daqbQ3HDg#u8Hk-cnSII<^_r^|S0**anHL`o;595t? zX^s}HX$&wAIuwv6!)auM)x+H2g;pPU{Ik(=e)jgxT=q=Lb&SA-I@xkNG(eQ5BgPyha+a)RtIR!q2Xk)7T zo41TKRS-Z$qEZR-o8(0&?W4t1pAVqUcX($6Q(@)r&M%E9sWUxVM-IYM#LVkUZ4VQt z8Jce$mWNc!Y2AJDVUagMy=N%nm1(9^?j>X9qYwTMc-FS##a7 zP3+=87VGjItww{}Im@;Pkyey}u&}elb-@Qj7xq(m(PHoLK1DN!#)_ajSL@n4Ps&lQ z04k;=($>rSTGxzJHg(E@ z{2!}kK~@Wo5pUuT`^C7Sw6V)&$)e7>A(Pq)oO*D+01hNxa<#!*P-|JaaZrB>BS@uqF}3DNPmWc=*qgpb9u#>-1Q=5b3W_Eu&%tD?7N0<4?E$7 zG6bYu{gr03o5W~BFAiA6I{=5ye-^P->$=uyz0mQ66dGJFv3f}n1j#)_NAFL20ae-n zq@zG*H`<9bdm+~~yg$F!N7ups96a5#zFV3SZ<6``;QSrTXaW_kQ2mm*KTKDp8Q@bO zc|1~ZvRHToX?MBj^X%1U54fAwZ2)pwA%akY+|sCO)M4WAd55tQGyc3R)l?3f@u0Kg z$MvQN%8blLd#>^|c3>DakDnv$L|N2`@Jn;?LFI@yN##G>LI@qRf{83G`#^=j!5l{( zRHjnA7F30n>&xpa_fY&W!*!Svd|C3u^3x=yD^CTKS(8!-YAq-%i(fY|xr8EM# z%A8I9|4Ce zH?oNAt<)Az-s}&aulUdc0J(j)&IS`Lj?Dw(M$HBmK49`K7}ifqIkq~q^Y6jwocDH_ zhClWoj4ata3Y_IFITE`{fa4FUUI+`F6E&*C1}W&+dF#rx%#K?`(uP%@vJ1LYVmoC^ z264ySN+DNSEv{NqtXUht+6SqosqDxEu~tXd+mZz0!9L$V%T{Igp1J6M$2pU(<2=ea zRTRvlF@oiKj~7AR{2mW+dM3){-PohoG5IEh*G{a_{j+KTfGyLk7)bL=>(X<6p1iZe z4;_?bxuX@-U$FmNI^2sJC#L(Gzf&Z4>is)%T9DwnV0#yPjWfS&WxGSToy?8TUj{9k z$J4!bTxjK_@z#YDH&}kt$9^_Lu!jjxZfrE7lMbkJvkM6uP2zlh?#S4mCx65TK7m)gkvT+?rw7;KxDJL1 zP*uFwiGZAAg_R#k!RvO45mnPVX2Z4ZsM@JxP4nf~Yr-9TY!O^{ztDclEu<0I=rtm0 zJ*~MZW^!?xCxdVAY!g4)-LJg3X;C*0t#aK!h`{D*_lF~9dxFj)$3+~@3La3mPa&j= zb-P#~9m8vwtVr?dGu%6FO5%^DFWeBl{Iq6mIAQ_Q+h6a`O~dc0FMgwMx~)8Cap1y> zP%F?JP_Wl=#!NBszQuF&nJd<^Za&pCf*S$I{$h92lGbTQvo44DXNC=fLaB|l^iw^J ze7G$6H&<%%G)-@p!r$`(m!*uv78|o!squo~8~jTJa%l3oT%zzcuP;r-%nt=X4u9q^ z2dYmod@UP8d)@bA^G>729Q1FJ80@x*Ndukk>Zk6x@8AQO4)(37is`QSs~?(pIFSgk zB+CY^fw!%&*DnY;JnYc6O?qO7?Fr#6Fm3wD@hBAw* zjf`ie`3L;)8P;Y6-IhLH2F@}MlFv5)mRL`k>yaz|2DA76o7(>QwL5F=03RED(LUTy zJZi_rR-3dz85gt*{Bm^pl-{MV7|GgPSer7@T7JB;e=d;xi?`c!q3T=X^2sk=&`*P8 zQ+UBbXjWDrYw$d!{esibuG+%0r|=ty*hu9{UY%}4g?x(jMVIwD0qc#qTbq4B0bMg@ z9okCA*?NMSwL$kr9LMs_&Vu>u5_4y{?(~iMS$~EZjnmm^zn$qe9xIpDhV!iHr4F%p z3M;ON9Yuh%#~w=TuPUYP=={!5oCa%??0#}9!y(-GQcqG~%f*_T$F=ln#ce8iN%w82 z-RqZm)o1F{99%K^4qvGwjZ64%`eUIJ`xEQFYfHW5v2&g7uAhWYbdDL&J2W?iqokCt z(we;;nJ_>Y05j?zo@Q6z=D)4-w*?@;b9YR3zlv)ih}9%ZZml0VzafbmQ1eL%2db`sigj6K*2wBUw@k%np%!qh%z_~aY9|V$$>Af)&l_y@ZL|1|*$c0Px-4{p zdC|v4(O=0R%@Os`A61Tvx3#f{T}}%Vyl@PvvrQwrE8-LM<%o}PX%TdEpuY@ex9@bs zR7m}_1SqzP$RssSTy+{pp3_9N=}j5g7ZX_>I?F>`$0}gyycvZJpM-XMhdtCX8hJUU zY9cJ7C1R~KoBT0>Z?0Q&-l*;Spy39}NDX~KCsHLodjX?g{4A5tGb{FnMD0NSvE>v| z?xBuOp!jY%t9nL+H0*woZ2kCR0gZ+3ne!EP;M>3mi%wS_NIY})#!SOpFX^)NFBo#Q1}NOt4R3zOdH5Zi1 zPnS5*N3IX`Xgi9=txc6RQgKd(RAd&n#3#ignmu2 zoHnFbbqFSV^yPGTIl(X3_EXmt2GHh$$JR64pqj$pmx$G+JdmBviV%5>ZJ{eU>k5K6 z@kmymAvf=VbM-V(#8s)KW@vR;@c^}%Tb_sHH=-_?y-%|AIiVFPZK8U37`FN{*=oIe z@2vGmyo%PEc6=F5RB4fu#&h4_~H;;!^;sJWR;wq$k~9bSZ11cGQnR%^UrP#w9pQ=OZI_YP=3$xX$2 zi_|yYuq;X$arA0THE4-W)Txwe_;7G}053=sV;e5Ar+!BBHPT47TNi#iO?~oEr)X2| zwBl%nj%Z371OdEv$kN;0&VkkO;~*-j3ZWe#d$PwlYJ(D4x; zi4VyvyK^0;T4hD}yIHz;o-RTj&ud6hrfSXd26F};Z_ahI0t%RtjNnba^1fB_V2}O Date: Thu, 4 May 2023 16:03:07 +0200 Subject: [PATCH 24/27] docs(contrib): fix headings, add embedded code (#5752) --- CONTRIBUTING.md | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index b17d42c0a..6d3528941 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -330,13 +330,15 @@ docker compose down Project documentation is made with docusaurus and is located under [./docs](./docs). -### Local Testing +### Local Testing + Please refer to the [README](./docs/README.md) for more information and local testing. -### Style Guide +### Style Guide - **Code with variables**: Make sure that code snippets can be used by setting environment variables, instead of manually replacing a placeholder. - **Embedded files**: When embedding mdx files, make sure the template ist prefixed by "_" (lowdash). The content will be rendered inside the parent page, but is not accessible individually (eg, by search). +- **Embedded code**: You can embed code snippets from a repository. See the [plugin](https://github.com/saucelabs/docusaurus-theme-github-codeblock#usage) for usage. ### Docs Pull Request When making a pull request use `docs(): ` as title for the semantic release. From 3ca7147808b43e526576af7492cc840ce7042808 Mon Sep 17 00:00:00 2001 From: Miguel Cabrerizo <30386061+doncicuto@users.noreply.github.com> Date: Fri, 5 May 2023 10:25:02 +0200 Subject: [PATCH 25/27] fix: introduce measures to avoid bots crawling and indexing activities (#5728) * fix: 404 for robots.txt and meta robots tags * fix: add unit tests for robots txt and tag * fix: add meta tag robots none for login pages * fix: weird format issue in header.go * fix: add x-robots-tag=none to grpcwebserver * fix linting --------- Co-authored-by: Silvan Co-authored-by: Livio Spring --- cmd/start/start.go | 8 ++++++ console/src/index.html | 1 + internal/api/api.go | 2 ++ internal/api/grpc/server/gateway.go | 1 + internal/api/http/header.go | 1 + .../http/middleware/robots_tag_interceptor.go | 14 ++++++++++ .../middleware/robots_tag_interceptor_test.go | 24 ++++++++++++++++ internal/api/robots_txt/robots_txt.go | 19 +++++++++++++ internal/api/robots_txt/robots_txt_test.go | 28 +++++++++++++++++++ .../api/ui/login/static/templates/main.html | 1 + 10 files changed, 99 insertions(+) create mode 100644 internal/api/http/middleware/robots_tag_interceptor.go create mode 100644 internal/api/http/middleware/robots_tag_interceptor_test.go create mode 100644 internal/api/robots_txt/robots_txt.go create mode 100644 internal/api/robots_txt/robots_txt_test.go diff --git a/cmd/start/start.go b/cmd/start/start.go index 4f134b044..58571abc1 100644 --- a/cmd/start/start.go +++ b/cmd/start/start.go @@ -39,6 +39,7 @@ import ( http_util "github.com/zitadel/zitadel/internal/api/http" "github.com/zitadel/zitadel/internal/api/http/middleware" "github.com/zitadel/zitadel/internal/api/oidc" + "github.com/zitadel/zitadel/internal/api/robots_txt" "github.com/zitadel/zitadel/internal/api/saml" "github.com/zitadel/zitadel/internal/api/ui/console" "github.com/zitadel/zitadel/internal/api/ui/login" @@ -305,6 +306,13 @@ func startAPIs( return err } + // robots.txt handler + robotsTxtHandler, err := robots_txt.Start() + if err != nil { + return fmt.Errorf("unable to start robots txt handler: %w", err) + } + apis.RegisterHandlerOnPrefix(robots_txt.HandlerPrefix, robotsTxtHandler) + // TODO: Record openapi access logs? openAPIHandler, err := openapi.Start() if err != nil { diff --git a/console/src/index.html b/console/src/index.html index 14dc2035e..fe500d8d2 100644 --- a/console/src/index.html +++ b/console/src/index.html @@ -21,6 +21,7 @@ + diff --git a/internal/api/api.go b/internal/api/api.go index d634e5010..4efdb322a 100644 --- a/internal/api/api.go +++ b/internal/api/api.go @@ -16,6 +16,7 @@ import ( internal_authz "github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/grpc/server" http_util "github.com/zitadel/zitadel/internal/api/http" + http_mw "github.com/zitadel/zitadel/internal/api/http/middleware" "github.com/zitadel/zitadel/internal/api/ui/login" "github.com/zitadel/zitadel/internal/errors" "github.com/zitadel/zitadel/internal/logstore" @@ -167,6 +168,7 @@ func (a *API) routeGRPCWeb() { return true }), ) + a.router.Use(http_mw.RobotsTagHandler) a.router.NewRoute(). Methods(http.MethodPost, http.MethodOptions). MatcherFunc( diff --git a/internal/api/grpc/server/gateway.go b/internal/api/grpc/server/gateway.go index a4cbbbe61..faba43594 100644 --- a/internal/api/grpc/server/gateway.go +++ b/internal/api/grpc/server/gateway.go @@ -149,6 +149,7 @@ func addInterceptors(handler http.Handler, http1HostName string) http.Handler { handler = http_mw.CallDurationHandler(handler) handler = http1Host(handler, http1HostName) handler = http_mw.CORSInterceptor(handler) + handler = http_mw.RobotsTagHandler(handler) handler = http_mw.DefaultTelemetryHandler(handler) return http_mw.DefaultMetricsHandler(handler) } diff --git a/internal/api/http/header.go b/internal/api/http/header.go index 8402c271d..f2d3e19c1 100644 --- a/internal/api/http/header.go +++ b/internal/api/http/header.go @@ -23,6 +23,7 @@ const ( XUserAgent = "x-user-agent" XGrpcWeb = "x-grpc-web" XRequestedWith = "x-requested-with" + XRobotsTag = "x-robots-tag" IfNoneMatch = "If-None-Match" LastModified = "Last-Modified" Etag = "Etag" diff --git a/internal/api/http/middleware/robots_tag_interceptor.go b/internal/api/http/middleware/robots_tag_interceptor.go new file mode 100644 index 000000000..076a91cfa --- /dev/null +++ b/internal/api/http/middleware/robots_tag_interceptor.go @@ -0,0 +1,14 @@ +package middleware + +import ( + "net/http" + + http_utils "github.com/zitadel/zitadel/internal/api/http" +) + +func RobotsTagHandler(next http.Handler) http.Handler { + return http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.Header().Set(http_utils.XRobotsTag, "none") + next.ServeHTTP(w, r) + }) +} diff --git a/internal/api/http/middleware/robots_tag_interceptor_test.go b/internal/api/http/middleware/robots_tag_interceptor_test.go new file mode 100644 index 000000000..7e30d4a9b --- /dev/null +++ b/internal/api/http/middleware/robots_tag_interceptor_test.go @@ -0,0 +1,24 @@ +package middleware + +import ( + "net/http" + "net/http/httptest" + "testing" + + "github.com/stretchr/testify/assert" +) + +func Test_RobotsTagInterceptor(t *testing.T) { + testHandler := func(w http.ResponseWriter, r *http.Request) {} + req := httptest.NewRequest(http.MethodGet, "/", nil) + recorder := httptest.NewRecorder() + + handler := RobotsTagHandler(http.HandlerFunc(testHandler)) + handler.ServeHTTP(recorder, req) + + res := recorder.Result() + exp := res.Header.Get("X-Robots-Tag") + assert.Equal(t, "none", exp) + + defer res.Body.Close() +} diff --git a/internal/api/robots_txt/robots_txt.go b/internal/api/robots_txt/robots_txt.go new file mode 100644 index 000000000..be487740d --- /dev/null +++ b/internal/api/robots_txt/robots_txt.go @@ -0,0 +1,19 @@ +package robots_txt + +import ( + "fmt" + "net/http" +) + +const ( + HandlerPrefix = "/robots.txt" +) + +func Start() (http.Handler, error) { + handler := http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) { + w.WriteHeader(http.StatusOK) + w.Header().Set("Content-Type", "application/text") + fmt.Fprintf(w, "User-agent: *\nDisallow: /\n") + }) + return handler, nil +} diff --git a/internal/api/robots_txt/robots_txt_test.go b/internal/api/robots_txt/robots_txt_test.go new file mode 100644 index 000000000..ca70b6bc3 --- /dev/null +++ b/internal/api/robots_txt/robots_txt_test.go @@ -0,0 +1,28 @@ +package robots_txt + +import ( + "io" + "net/http" + "net/http/httptest" + "testing" + + "github.com/stretchr/testify/assert" +) + +func Test_RobotsTxt(t *testing.T) { + req := httptest.NewRequest(http.MethodGet, "/robots.txt", nil) + recorder := httptest.NewRecorder() + + handler, err := Start() + handler.ServeHTTP(recorder, req) + assert.Equal(t, nil, err) + + res := recorder.Result() + body, err := io.ReadAll(res.Body) + assert.Equal(t, nil, err) + + assert.Equal(t, 200, res.StatusCode) + assert.Equal(t, "User-agent: *\nDisallow: /\n", string(body)) + + defer res.Body.Close() +} diff --git a/internal/api/ui/login/static/templates/main.html b/internal/api/ui/login/static/templates/main.html index 08aac7c1b..04ec281eb 100644 --- a/internal/api/ui/login/static/templates/main.html +++ b/internal/api/ui/login/static/templates/main.html @@ -23,6 +23,7 @@ {{ .Title }} + From 74377c2c378761c75e3ab0744ab4852fc88f85ca Mon Sep 17 00:00:00 2001 From: Fabi Date: Fri, 5 May 2023 14:22:39 +0200 Subject: [PATCH 26/27] docs: remove tasklist (#5806) --- .github/pull_request_template.md | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md index 1272432be..b59ca669c 100644 --- a/.github/pull_request_template.md +++ b/.github/pull_request_template.md @@ -1,5 +1,3 @@ -```[tasklist] - ### Definition of Ready - [ ] I am happy with the code @@ -14,4 +12,3 @@ - [ ] Documentation/examples are up-to-date - [ ] All non-functional requirements are met - [ ] Functionality of the acceptance criteria is checked manually on the dev system. -``` From c2cb84cd24067394340e45fb6e8a11ca5dcef86f Mon Sep 17 00:00:00 2001 From: Livio Spring Date: Fri, 5 May 2023 17:34:53 +0200 Subject: [PATCH 27/27] feat(api): new session service (#5801) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * backup new protoc plugin * backup * session * backup * initial implementation * change to specific events * implement tests * cleanup * refactor: use new protoc plugin for api v2 * change package * simplify code * cleanup * cleanup * fix merge * start queries * fix tests * improve returned values * add token to projection * tests * test db map * update query * permission checks * fix tests and linting * rework token creation * i18n * refactor token check and fix tests * session to PB test * request to query tests * cleanup proto * test user check * add comment * simplify database map type * Update docs/docs/guides/integrate/access-zitadel-system-api.md Co-authored-by: Tim Möhlmann * fix test * cleanup * docs --------- Co-authored-by: Tim Möhlmann --- cmd/setup/03.go | 1 + cmd/setup/config_change.go | 1 + cmd/start/start.go | 43 +- .../integrate/access-zitadel-system-api.md | 2 +- docs/docusaurus.config.js | 7 + docs/sidebars.js | 14 + go.mod | 2 +- internal/api/authz/authorization.go | 9 +- internal/api/authz/context.go | 11 +- internal/api/authz/permissions.go | 8 +- internal/api/authz/permissions_test.go | 4 +- internal/api/authz/token.go | 28 +- internal/api/grpc/object/v2/converter.go | 19 + .../server/middleware/auth_interceptor.go | 4 +- .../middleware/auth_interceptor_test.go | 4 +- internal/api/grpc/session/v2/server.go | 14 +- internal/api/grpc/session/v2/session.go | 256 +++++++- internal/api/grpc/session/v2/session_test.go | 379 ++++++++++++ internal/api/grpc/user/v2/user.go | 7 +- .../api/http/middleware/auth_interceptor.go | 2 +- internal/command/command.go | 31 +- internal/command/main_test.go | 16 +- internal/command/permission.go | 11 - internal/command/session.go | 225 +++++++ internal/command/session_model.go | 139 +++++ internal/command/session_test.go | 547 ++++++++++++++++++ internal/command/user_v2_email.go | 9 +- internal/command/user_v2_email_test.go | 10 +- internal/database/type.go | 31 +- internal/database/type_test.go | 119 ++++ internal/domain/permission.go | 11 + internal/domain/session.go | 9 + internal/id/mock/generator.mock.impl.go | 6 + internal/query/org.go | 14 +- internal/query/projection/projection.go | 3 + internal/query/projection/session.go | 221 +++++++ internal/query/projection/session_test.go | 260 +++++++++ internal/query/query.go | 17 +- internal/query/session.go | 320 ++++++++++ internal/query/sessions_test.go | 396 +++++++++++++ internal/repository/session/aggregate.go | 25 + internal/repository/session/eventstore.go | 12 + internal/repository/session/session.go | 255 ++++++++ internal/static/i18n/de.yaml | 5 + internal/static/i18n/en.yaml | 5 + internal/static/i18n/es.yaml | 5 + internal/static/i18n/fr.yaml | 5 + internal/static/i18n/it.yaml | 5 + internal/static/i18n/ja.yaml | 5 + internal/static/i18n/pl.yaml | 5 + internal/static/i18n/zh.yaml | 5 + pkg/grpc/user/v2alpha/user.go | 5 - proto/zitadel/object/v2alpha/object.proto | 44 ++ proto/zitadel/session/v2alpha/session.proto | 85 ++- .../session/v2alpha/session_service.proto | 341 ++++++++++- 55 files changed, 3911 insertions(+), 106 deletions(-) create mode 100644 internal/api/grpc/session/v2/session_test.go delete mode 100644 internal/command/permission.go create mode 100644 internal/command/session.go create mode 100644 internal/command/session_model.go create mode 100644 internal/command/session_test.go create mode 100644 internal/database/type_test.go create mode 100644 internal/domain/session.go create mode 100644 internal/query/projection/session.go create mode 100644 internal/query/projection/session_test.go create mode 100644 internal/query/session.go create mode 100644 internal/query/sessions_test.go create mode 100644 internal/repository/session/aggregate.go create mode 100644 internal/repository/session/eventstore.go create mode 100644 internal/repository/session/session.go delete mode 100644 pkg/grpc/user/v2alpha/user.go diff --git a/cmd/setup/03.go b/cmd/setup/03.go index 9774ab7b7..416010946 100644 --- a/cmd/setup/03.go +++ b/cmd/setup/03.go @@ -77,6 +77,7 @@ func (mig *FirstInstance) Execute(ctx context.Context) error { nil, nil, nil, + nil, ) if err != nil { diff --git a/cmd/setup/config_change.go b/cmd/setup/config_change.go index f112dd8c7..14a6849ce 100644 --- a/cmd/setup/config_change.go +++ b/cmd/setup/config_change.go @@ -52,6 +52,7 @@ func (mig *externalConfigChange) Execute(ctx context.Context) error { nil, nil, nil, + nil, ) if err != nil { diff --git a/cmd/start/start.go b/cmd/start/start.go index 58571abc1..6f248c108 100644 --- a/cmd/start/start.go +++ b/cmd/start/start.go @@ -50,6 +50,7 @@ import ( "github.com/zitadel/zitadel/internal/crypto" cryptoDB "github.com/zitadel/zitadel/internal/crypto/database" "github.com/zitadel/zitadel/internal/database" + "github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/eventstore" "github.com/zitadel/zitadel/internal/id" "github.com/zitadel/zitadel/internal/logstore" @@ -129,7 +130,21 @@ func startZitadel(config *Config, masterKey string, server chan<- *Server) error return fmt.Errorf("cannot start eventstore for queries: %w", err) } - queries, err := query.StartQueries(ctx, eventstoreClient, dbClient, config.Projections, config.SystemDefaults, keys.IDPConfig, keys.OTP, keys.OIDC, keys.SAML, config.InternalAuthZ.RolePermissionMappings) + sessionTokenVerifier := internal_authz.SessionTokenVerifier(keys.OIDC) + + queries, err := query.StartQueries( + ctx, + eventstoreClient, + dbClient, + config.Projections, + config.SystemDefaults, + keys.IDPConfig, + keys.OTP, + keys.OIDC, + keys.SAML, + config.InternalAuthZ.RolePermissionMappings, + sessionTokenVerifier, + ) if err != nil { return fmt.Errorf("cannot start queries: %w", err) } @@ -138,6 +153,9 @@ func startZitadel(config *Config, masterKey string, server chan<- *Server) error if err != nil { return fmt.Errorf("error starting authz repo: %w", err) } + permissionCheck := func(ctx context.Context, permission, orgID, resourceID string) (err error) { + return internal_authz.CheckPermission(ctx, authZRepo, config.InternalAuthZ.RolePermissionMappings, permission, orgID, resourceID) + } storage, err := config.AssetStorage.NewStorage(dbClient.DB) if err != nil { @@ -165,7 +183,8 @@ func startZitadel(config *Config, masterKey string, server chan<- *Server) error keys.OIDC, keys.SAML, &http.Client{}, - authZRepo, + permissionCheck, + sessionTokenVerifier, ) if err != nil { return fmt.Errorf("cannot start commands: %w", err) @@ -195,7 +214,22 @@ func startZitadel(config *Config, masterKey string, server chan<- *Server) error if err != nil { return err } - err = startAPIs(ctx, clock, router, commands, queries, eventstoreClient, dbClient, config, storage, authZRepo, keys, queries, usageReporter) + err = startAPIs( + ctx, + clock, + router, + commands, + queries, + eventstoreClient, + dbClient, + config, + storage, + authZRepo, + keys, + queries, + usageReporter, + permissionCheck, + ) if err != nil { return err } @@ -239,6 +273,7 @@ func startAPIs( keys *encryptionKeys, quotaQuerier logstore.QuotaQuerier, usageReporter logstore.UsageReporter, + permissionCheck domain.PermissionCheck, ) error { repo := struct { authz_repo.Repository @@ -294,7 +329,7 @@ func startAPIs( if err := apis.RegisterService(ctx, user.CreateServer(commands, queries, keys.User)); err != nil { return err } - if err := apis.RegisterService(ctx, session.CreateServer(commands, queries)); err != nil { + if err := apis.RegisterService(ctx, session.CreateServer(commands, queries, permissionCheck)); err != nil { return err } instanceInterceptor := middleware.InstanceInterceptor(queries, config.HTTP1HostHeader, login.IgnoreInstanceEndpoints...) diff --git a/docs/docs/guides/integrate/access-zitadel-system-api.md b/docs/docs/guides/integrate/access-zitadel-system-api.md index 1f6d87c8a..e8297b64a 100644 --- a/docs/docs/guides/integrate/access-zitadel-system-api.md +++ b/docs/docs/guides/integrate/access-zitadel-system-api.md @@ -86,7 +86,7 @@ If your system is exposed without TLS or on a dedicated port, be sure to provide If you want to manually create a JWT for a test, you can also use our [ZITADEL Tools](https://github.com/zitadel/zitadel-tools). Download the latest release and run: ```bash -./key2jwt -audience=https://custom-domain.com -key=system-user-1.pem -issuer=system-user-1 +zitadel-tools key2jwt --audience=https://custom-domain.com --key=system-user-1.pem --issuer=system-user-1 ``` ## Call the System API diff --git a/docs/docusaurus.config.js b/docs/docusaurus.config.js index a660dae88..5ed0a099d 100644 --- a/docs/docusaurus.config.js +++ b/docs/docusaurus.config.js @@ -266,6 +266,13 @@ module.exports = { sidebarOptions: { groupPathsBy: "tag", }, + }, + session: { + specPath: ".artifacts/openapi/zitadel/session/v2alpha/session_service.swagger.json", + outputDir: "docs/apis/session_service", + sidebarOptions: { + groupPathsBy: "tag", + }, } } }, diff --git a/docs/sidebars.js b/docs/sidebars.js index 1858d4357..25e84b4b9 100644 --- a/docs/sidebars.js +++ b/docs/sidebars.js @@ -412,6 +412,20 @@ module.exports = { }, items: require("./docs/apis/user_service/sidebar.js"), }, + { + type: "category", + label: "Session Lifecycle (Alpha)", + link: { + type: "generated-index", + title: "Session Service API (Alpha)", + slug: "/apis/session_service", + description: + "This API is intended to manage sessions in a ZITADEL instance.\n"+ + "\n"+ + "This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login.", + }, + items: require("./docs/apis/session_service/sidebar.js"), + }, { type: "category", label: "Assets", diff --git a/go.mod b/go.mod index 668aa0230..24774459b 100644 --- a/go.mod +++ b/go.mod @@ -192,7 +192,7 @@ require ( go.opentelemetry.io/otel/exporters/otlp/otlptrace v1.14.0 // indirect go.opentelemetry.io/proto/otlp v0.19.0 // indirect golang.org/x/mod v0.10.0 // indirect - golang.org/x/sys v0.7.0 // indirect + golang.org/x/sys v0.7.0 golang.org/x/xerrors v0.0.0-20220907171357-04be3eba64a2 // indirect google.golang.org/appengine v1.6.7 // indirect gopkg.in/ini.v1 v1.67.0 // indirect diff --git a/internal/api/authz/authorization.go b/internal/api/authz/authorization.go index 0df781f4b..2db8f14ad 100644 --- a/internal/api/authz/authorization.go +++ b/internal/api/authz/authorization.go @@ -14,11 +14,16 @@ const ( authenticated = "authenticated" ) -func CheckUserAuthorization(ctx context.Context, req interface{}, token, orgIDHeader string, verifier *TokenVerifier, authConfig Config, requiredAuthOption Option, method string) (ctxSetter func(context.Context) context.Context, err error) { +// CheckUserAuthorization verifies that: +// - the token is active, +// - the organisation (**either** provided by ID or verified domain) exists +// - the user is permitted to call the requested endpoint (permission option in proto) +// it will pass the [CtxData] and permission of the user into the ctx [context.Context] +func CheckUserAuthorization(ctx context.Context, req interface{}, token, orgID, orgDomain string, verifier *TokenVerifier, authConfig Config, requiredAuthOption Option, method string) (ctxSetter func(context.Context) context.Context, err error) { ctx, span := tracing.NewServerInterceptorSpan(ctx) defer func() { span.EndWithError(err) }() - ctxData, err := VerifyTokenAndCreateCtxData(ctx, token, orgIDHeader, verifier, method) + ctxData, err := VerifyTokenAndCreateCtxData(ctx, token, orgID, orgDomain, verifier, method) if err != nil { return nil, err } diff --git a/internal/api/authz/context.go b/internal/api/authz/context.go index 938241232..ec2e13d0e 100644 --- a/internal/api/authz/context.go +++ b/internal/api/authz/context.go @@ -60,7 +60,7 @@ const ( MemberTypeIam ) -func VerifyTokenAndCreateCtxData(ctx context.Context, token, orgID string, t *TokenVerifier, method string) (_ CtxData, err error) { +func VerifyTokenAndCreateCtxData(ctx context.Context, token, orgID, orgDomain string, t *TokenVerifier, method string) (_ CtxData, err error) { ctx, span := tracing.NewSpan(ctx) defer func() { span.EndWithError(err) }() @@ -82,14 +82,15 @@ func VerifyTokenAndCreateCtxData(ctx context.Context, token, orgID string, t *To if err := checkOrigin(ctx, origins); err != nil { return CtxData{}, err } - if orgID == "" { + if orgID == "" && orgDomain == "" { orgID = resourceOwner } - err = t.ExistsOrg(ctx, orgID) + verifiedOrgID, err := t.ExistsOrg(ctx, orgID, orgDomain) if err != nil { err = retry(func() error { - return t.ExistsOrg(ctx, orgID) + verifiedOrgID, err = t.ExistsOrg(ctx, orgID, orgDomain) + return err }) if err != nil { return CtxData{}, errors.ThrowPermissionDenied(nil, "AUTH-Bs7Ds", "Organisation doesn't exist") @@ -98,7 +99,7 @@ func VerifyTokenAndCreateCtxData(ctx context.Context, token, orgID string, t *To return CtxData{ UserID: userID, - OrgID: orgID, + OrgID: verifiedOrgID, ProjectID: projectID, AgentID: agentID, PreferredLanguage: prefLang, diff --git a/internal/api/authz/permissions.go b/internal/api/authz/permissions.go index b392ca795..4312651bd 100644 --- a/internal/api/authz/permissions.go +++ b/internal/api/authz/permissions.go @@ -7,12 +7,8 @@ import ( "github.com/zitadel/zitadel/internal/telemetry/tracing" ) -func CheckPermission(ctx context.Context, resolver MembershipsResolver, roleMappings []RoleMapping, permission, orgID, resourceID string, allowSelf bool) (err error) { - ctxData := GetCtxData(ctx) - if allowSelf && ctxData.UserID == resourceID { - return nil - } - requestedPermissions, _, err := getUserPermissions(ctx, resolver, permission, roleMappings, ctxData, orgID) +func CheckPermission(ctx context.Context, resolver MembershipsResolver, roleMappings []RoleMapping, permission, orgID, resourceID string) (err error) { + requestedPermissions, _, err := getUserPermissions(ctx, resolver, permission, roleMappings, GetCtxData(ctx), orgID) if err != nil { return err } diff --git a/internal/api/authz/permissions_test.go b/internal/api/authz/permissions_test.go index ea217e1b8..01cfa3543 100644 --- a/internal/api/authz/permissions_test.go +++ b/internal/api/authz/permissions_test.go @@ -26,8 +26,8 @@ func (v *testVerifier) ProjectIDAndOriginsByClientID(ctx context.Context, client return "", nil, nil } -func (v *testVerifier) ExistsOrg(ctx context.Context, orgID string) error { - return nil +func (v *testVerifier) ExistsOrg(ctx context.Context, orgID, domain string) (string, error) { + return orgID, nil } func (v *testVerifier) VerifierClientID(ctx context.Context, appName string) (string, string, error) { diff --git a/internal/api/authz/token.go b/internal/api/authz/token.go index a8a9b3afb..b56d042da 100644 --- a/internal/api/authz/token.go +++ b/internal/api/authz/token.go @@ -3,6 +3,8 @@ package authz import ( "context" "crypto/rsa" + "encoding/base64" + "fmt" "os" "strings" "sync" @@ -17,7 +19,8 @@ import ( ) const ( - BearerPrefix = "Bearer " + BearerPrefix = "Bearer " + SessionTokenFormat = "sess_%s:%s" ) type TokenVerifier struct { @@ -36,7 +39,7 @@ type authZRepo interface { VerifierClientID(ctx context.Context, name string) (clientID, projectID string, err error) SearchMyMemberships(ctx context.Context, orgID string) ([]*Membership, error) ProjectIDAndOriginsByClientID(ctx context.Context, clientID string) (projectID string, origins []string, err error) - ExistsOrg(ctx context.Context, orgID string) error + ExistsOrg(ctx context.Context, id, domain string) (string, error) } func Start(authZRepo authZRepo, issuer string, keys map[string]*SystemAPIUser) (v *TokenVerifier) { @@ -144,10 +147,10 @@ func (v *TokenVerifier) ProjectIDAndOriginsByClientID(ctx context.Context, clien return v.authZRepo.ProjectIDAndOriginsByClientID(ctx, clientID) } -func (v *TokenVerifier) ExistsOrg(ctx context.Context, orgID string) (err error) { +func (v *TokenVerifier) ExistsOrg(ctx context.Context, id, domain string) (orgID string, err error) { ctx, span := tracing.NewSpan(ctx) defer func() { span.EndWithError(err) }() - return v.authZRepo.ExistsOrg(ctx, orgID) + return v.authZRepo.ExistsOrg(ctx, id, domain) } func (v *TokenVerifier) CheckAuthMethod(method string) (Option, bool) { @@ -165,3 +168,20 @@ func verifyAccessToken(ctx context.Context, token string, t *TokenVerifier, meth } return t.VerifyAccessToken(ctx, parts[1], method) } + +func SessionTokenVerifier(algorithm crypto.EncryptionAlgorithm) func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + decodedToken, err := base64.RawURLEncoding.DecodeString(sessionToken) + if err != nil { + return err + } + _, spanPasswordComparison := tracing.NewNamedSpan(ctx, "crypto.CompareHash") + var token string + token, err = algorithm.DecryptString(decodedToken, algorithm.EncryptionKeyID()) + spanPasswordComparison.EndWithError(err) + if err != nil || token != fmt.Sprintf(SessionTokenFormat, sessionID, tokenID) { + return caos_errs.ThrowPermissionDenied(err, "COMMAND-sGr42", "Errors.Session.Token.Invalid") + } + return nil + } +} diff --git a/internal/api/grpc/object/v2/converter.go b/internal/api/grpc/object/v2/converter.go index eca168f70..feb8dbd62 100644 --- a/internal/api/grpc/object/v2/converter.go +++ b/internal/api/grpc/object/v2/converter.go @@ -4,6 +4,7 @@ import ( "google.golang.org/protobuf/types/known/timestamppb" "github.com/zitadel/zitadel/internal/domain" + "github.com/zitadel/zitadel/internal/query" object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" ) @@ -17,3 +18,21 @@ func DomainToDetailsPb(objectDetail *domain.ObjectDetails) *object.Details { } return details } + +func ToListDetails(response query.SearchResponse) *object.ListDetails { + details := &object.ListDetails{ + TotalResult: response.Count, + ProcessedSequence: response.Sequence, + } + if !response.Timestamp.IsZero() { + details.Timestamp = timestamppb.New(response.Timestamp) + } + + return details +} +func ListQueryToQuery(query *object.ListQuery) (offset, limit uint64, asc bool) { + if query == nil { + return 0, 0, false + } + return query.Offset, uint64(query.Limit), query.Asc +} diff --git a/internal/api/grpc/server/middleware/auth_interceptor.go b/internal/api/grpc/server/middleware/auth_interceptor.go index d87e57233..e9d90c7cf 100644 --- a/internal/api/grpc/server/middleware/auth_interceptor.go +++ b/internal/api/grpc/server/middleware/auth_interceptor.go @@ -34,12 +34,14 @@ func authorize(ctx context.Context, req interface{}, info *grpc.UnaryServerInfo, return nil, status.Error(codes.Unauthenticated, "auth header missing") } + var orgDomain string orgID := grpc_util.GetHeader(authCtx, http.ZitadelOrgID) if o, ok := req.(OrganisationFromRequest); ok { orgID = o.OrganisationFromRequest().GetOrgId() + orgDomain = o.OrganisationFromRequest().GetOrgDomain() } - ctxSetter, err := authz.CheckUserAuthorization(authCtx, req, authToken, orgID, verifier, authConfig, authOpt, info.FullMethod) + ctxSetter, err := authz.CheckUserAuthorization(authCtx, req, authToken, orgID, orgDomain, verifier, authConfig, authOpt, info.FullMethod) if err != nil { return nil, err } diff --git a/internal/api/grpc/server/middleware/auth_interceptor_test.go b/internal/api/grpc/server/middleware/auth_interceptor_test.go index c041d9ca4..ac091e1d1 100644 --- a/internal/api/grpc/server/middleware/auth_interceptor_test.go +++ b/internal/api/grpc/server/middleware/auth_interceptor_test.go @@ -31,8 +31,8 @@ func (v *verifierMock) SearchMyMemberships(ctx context.Context, orgID string) ([ func (v *verifierMock) ProjectIDAndOriginsByClientID(ctx context.Context, clientID string) (string, []string, error) { return "", nil, nil } -func (v *verifierMock) ExistsOrg(ctx context.Context, orgID string) error { - return nil +func (v *verifierMock) ExistsOrg(ctx context.Context, orgID, domain string) (string, error) { + return orgID, nil } func (v *verifierMock) VerifierClientID(ctx context.Context, appName string) (string, string, error) { return "", "", nil diff --git a/internal/api/grpc/session/v2/server.go b/internal/api/grpc/session/v2/server.go index 22919fdb7..3dc5a0c83 100644 --- a/internal/api/grpc/session/v2/server.go +++ b/internal/api/grpc/session/v2/server.go @@ -6,16 +6,18 @@ import ( "github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/api/grpc/server" "github.com/zitadel/zitadel/internal/command" + "github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/query" - "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" + session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" ) var _ session.SessionServiceServer = (*Server)(nil) type Server struct { session.UnimplementedSessionServiceServer - command *command.Commands - query *query.Queries + command *command.Commands + query *query.Queries + checkPermission domain.PermissionCheck } type Config struct{} @@ -23,10 +25,12 @@ type Config struct{} func CreateServer( command *command.Commands, query *query.Queries, + checkPermission domain.PermissionCheck, ) *Server { return &Server{ - command: command, - query: query, + command: command, + query: query, + checkPermission: checkPermission, } } diff --git a/internal/api/grpc/session/v2/session.go b/internal/api/grpc/session/v2/session.go index 3e90e76a9..413989ba1 100644 --- a/internal/api/grpc/session/v2/session.go +++ b/internal/api/grpc/session/v2/session.go @@ -3,16 +3,260 @@ package session import ( "context" + "google.golang.org/protobuf/types/known/timestamppb" + "github.com/zitadel/zitadel/internal/api/authz" - "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" - "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" + "github.com/zitadel/zitadel/internal/api/grpc/object/v2" + "github.com/zitadel/zitadel/internal/command" + caos_errs "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/query" + session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" ) func (s *Server) GetSession(ctx context.Context, req *session.GetSessionRequest) (*session.GetSessionResponse, error) { + res, err := s.query.SessionByID(ctx, req.GetSessionId(), req.GetSessionToken()) + if err != nil { + return nil, err + } return &session.GetSessionResponse{ - Session: &session.Session{ - Id: req.Id, - User: &user.User{Id: authz.GetCtxData(ctx).UserID}, - }, + Session: sessionToPb(res), }, nil } + +func (s *Server) ListSessions(ctx context.Context, req *session.ListSessionsRequest) (*session.ListSessionsResponse, error) { + queries, err := listSessionsRequestToQuery(ctx, req) + if err != nil { + return nil, err + } + sessions, err := s.query.SearchSessions(ctx, queries) + if err != nil { + return nil, err + } + return &session.ListSessionsResponse{ + Details: object.ToListDetails(sessions.SearchResponse), + Sessions: sessionsToPb(sessions.Sessions), + }, nil +} + +func (s *Server) CreateSession(ctx context.Context, req *session.CreateSessionRequest) (*session.CreateSessionResponse, error) { + checks, metadata, err := s.createSessionRequestToCommand(ctx, req) + if err != nil { + return nil, err + } + set, err := s.command.CreateSession(ctx, checks, metadata) + if err != nil { + return nil, err + } + return &session.CreateSessionResponse{ + Details: object.DomainToDetailsPb(set.ObjectDetails), + SessionId: set.ID, + SessionToken: set.NewToken, + }, nil +} + +func (s *Server) SetSession(ctx context.Context, req *session.SetSessionRequest) (*session.SetSessionResponse, error) { + checks, err := s.setSessionRequestToCommand(ctx, req) + if err != nil { + return nil, err + } + set, err := s.command.UpdateSession(ctx, req.GetSessionId(), req.GetSessionToken(), checks, req.GetMetadata()) + if err != nil { + return nil, err + } + // if there's no new token, just return the current + if set.NewToken == "" { + set.NewToken = req.GetSessionToken() + } + return &session.SetSessionResponse{ + Details: object.DomainToDetailsPb(set.ObjectDetails), + SessionToken: set.NewToken, + }, nil +} + +func (s *Server) DeleteSession(ctx context.Context, req *session.DeleteSessionRequest) (*session.DeleteSessionResponse, error) { + details, err := s.command.TerminateSession(ctx, req.GetSessionId(), req.GetSessionToken()) + if err != nil { + return nil, err + } + return &session.DeleteSessionResponse{ + Details: object.DomainToDetailsPb(details), + }, nil +} + +func sessionsToPb(sessions []*query.Session) []*session.Session { + s := make([]*session.Session, len(sessions)) + for i, session := range sessions { + s[i] = sessionToPb(session) + } + return s +} + +func sessionToPb(s *query.Session) *session.Session { + return &session.Session{ + Id: s.ID, + CreationDate: timestamppb.New(s.CreationDate), + ChangeDate: timestamppb.New(s.ChangeDate), + Sequence: s.Sequence, + Factors: factorsToPb(s), + Metadata: s.Metadata, + } +} + +func factorsToPb(s *query.Session) *session.Factors { + user := userFactorToPb(s.UserFactor) + pw := passwordFactorToPb(s.PasswordFactor) + if user == nil && pw == nil { + return nil + } + return &session.Factors{ + User: user, + Password: pw, + } +} + +func passwordFactorToPb(factor query.SessionPasswordFactor) *session.PasswordFactor { + if factor.PasswordCheckedAt.IsZero() { + return nil + } + return &session.PasswordFactor{ + VerifiedAt: timestamppb.New(factor.PasswordCheckedAt), + } +} + +func userFactorToPb(factor query.SessionUserFactor) *session.UserFactor { + if factor.UserID == "" || factor.UserCheckedAt.IsZero() { + return nil + } + return &session.UserFactor{ + VerifiedAt: timestamppb.New(factor.UserCheckedAt), + Id: factor.UserID, + LoginName: factor.LoginName, + DisplayName: factor.DisplayName, + } +} + +func listSessionsRequestToQuery(ctx context.Context, req *session.ListSessionsRequest) (*query.SessionsSearchQueries, error) { + offset, limit, asc := object.ListQueryToQuery(req.Query) + queries, err := sessionQueriesToQuery(ctx, req.GetQueries()) + if err != nil { + return nil, err + } + return &query.SessionsSearchQueries{ + SearchRequest: query.SearchRequest{ + Offset: offset, + Limit: limit, + Asc: asc, + }, + Queries: queries, + }, nil +} + +func sessionQueriesToQuery(ctx context.Context, queries []*session.SearchQuery) (_ []query.SearchQuery, err error) { + q := make([]query.SearchQuery, len(queries)+1) + for i, query := range queries { + q[i], err = sessionQueryToQuery(query) + if err != nil { + return nil, err + } + } + creatorQuery, err := query.NewSessionCreatorSearchQuery(authz.GetCtxData(ctx).UserID) + if err != nil { + return nil, err + } + q[len(queries)] = creatorQuery + return q, nil +} + +func sessionQueryToQuery(query *session.SearchQuery) (query.SearchQuery, error) { + switch q := query.Query.(type) { + case *session.SearchQuery_IdsQuery: + return idsQueryToQuery(q.IdsQuery) + default: + return nil, caos_errs.ThrowInvalidArgument(nil, "GRPC-Sfefs", "List.Query.Invalid") + } +} + +func idsQueryToQuery(q *session.IDsQuery) (query.SearchQuery, error) { + return query.NewSessionIDsSearchQuery(q.Ids) +} + +func (s *Server) createSessionRequestToCommand(ctx context.Context, req *session.CreateSessionRequest) ([]command.SessionCheck, map[string][]byte, error) { + checks, err := s.checksToCommand(ctx, req.Checks) + if err != nil { + return nil, nil, err + } + return checks, req.GetMetadata(), nil +} + +func (s *Server) setSessionRequestToCommand(ctx context.Context, req *session.SetSessionRequest) ([]command.SessionCheck, error) { + checks, err := s.checksToCommand(ctx, req.Checks) + if err != nil { + return nil, err + } + return checks, nil +} + +func (s *Server) checksToCommand(ctx context.Context, checks *session.Checks) ([]command.SessionCheck, error) { + checkUser, err := userCheck(checks.GetUser()) + if err != nil { + return nil, err + } + sessionChecks := make([]command.SessionCheck, 0, 2) + if checkUser != nil { + user, err := checkUser.search(ctx, s.query) + if err != nil { + return nil, err + } + sessionChecks = append(sessionChecks, command.CheckUser(user.ID)) + } + if password := checks.GetPassword(); password != nil { + sessionChecks = append(sessionChecks, command.CheckPassword(password.GetPassword())) + } + return sessionChecks, nil +} + +func userCheck(user *session.CheckUser) (userSearch, error) { + if user == nil { + return nil, nil + } + switch s := user.GetSearch().(type) { + case *session.CheckUser_UserId: + return userByID(s.UserId), nil + case *session.CheckUser_LoginName: + return userByLoginName(s.LoginName) + default: + return nil, caos_errs.ThrowUnimplementedf(nil, "SESSION-d3b4g0", "user search %T not implemented", s) + } +} + +type userSearch interface { + search(ctx context.Context, q *query.Queries) (*query.User, error) +} + +func userByID(userID string) userSearch { + return userSearchByID{userID} +} + +func userByLoginName(loginName string) (userSearch, error) { + loginNameQuery, err := query.NewUserLoginNamesSearchQuery(loginName) + if err != nil { + return nil, err + } + return userSearchByLoginName{loginNameQuery}, nil +} + +type userSearchByID struct { + id string +} + +func (u userSearchByID) search(ctx context.Context, q *query.Queries) (*query.User, error) { + return q.GetUserByID(ctx, true, u.id, false) +} + +type userSearchByLoginName struct { + loginNameQuery query.SearchQuery +} + +func (u userSearchByLoginName) search(ctx context.Context, q *query.Queries) (*query.User, error) { + return q.GetUser(ctx, true, false, u.loginNameQuery) +} diff --git a/internal/api/grpc/session/v2/session_test.go b/internal/api/grpc/session/v2/session_test.go new file mode 100644 index 000000000..6d2f38606 --- /dev/null +++ b/internal/api/grpc/session/v2/session_test.go @@ -0,0 +1,379 @@ +package session + +import ( + "context" + "testing" + "time" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "google.golang.org/protobuf/proto" + "google.golang.org/protobuf/types/known/timestamppb" + + "github.com/zitadel/zitadel/internal/api/authz" + "github.com/zitadel/zitadel/internal/domain" + caos_errs "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/query" + object "github.com/zitadel/zitadel/pkg/grpc/object/v2alpha" + session "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha" +) + +func Test_sessionsToPb(t *testing.T) { + now := time.Now() + past := now.Add(-time.Hour) + + sessions := []*query.Session{ + { // no factor + ID: "999", + CreationDate: now, + ChangeDate: now, + Sequence: 123, + State: domain.SessionStateActive, + ResourceOwner: "me", + Creator: "he", + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + { // user factor + ID: "999", + CreationDate: now, + ChangeDate: now, + Sequence: 123, + State: domain.SessionStateActive, + ResourceOwner: "me", + Creator: "he", + UserFactor: query.SessionUserFactor{ + UserID: "345", + UserCheckedAt: past, + LoginName: "donald", + DisplayName: "donald duck", + }, + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + { // no factor + ID: "999", + CreationDate: now, + ChangeDate: now, + Sequence: 123, + State: domain.SessionStateActive, + ResourceOwner: "me", + Creator: "he", + PasswordFactor: query.SessionPasswordFactor{ + PasswordCheckedAt: past, + }, + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + } + + want := []*session.Session{ + { // no factor + Id: "999", + CreationDate: timestamppb.New(now), + ChangeDate: timestamppb.New(now), + Sequence: 123, + Factors: nil, + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + { // user factor + Id: "999", + CreationDate: timestamppb.New(now), + ChangeDate: timestamppb.New(now), + Sequence: 123, + Factors: &session.Factors{ + User: &session.UserFactor{ + VerifiedAt: timestamppb.New(past), + Id: "345", + LoginName: "donald", + DisplayName: "donald duck", + }, + }, + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + { // password factor + Id: "999", + CreationDate: timestamppb.New(now), + ChangeDate: timestamppb.New(now), + Sequence: 123, + Factors: &session.Factors{ + Password: &session.PasswordFactor{ + VerifiedAt: timestamppb.New(past), + }, + }, + Metadata: map[string][]byte{"hello": []byte("world")}, + }, + } + + out := sessionsToPb(sessions) + require.Len(t, out, len(want)) + + for i, got := range out { + if !proto.Equal(got, want[i]) { + t.Errorf("session %d got:\n%v\nwant:\n%v", i, got, want) + } + } +} + +func mustNewTextQuery(t testing.TB, column query.Column, value string, compare query.TextComparison) query.SearchQuery { + q, err := query.NewTextQuery(column, value, compare) + require.NoError(t, err) + return q +} + +func mustNewListQuery(t testing.TB, column query.Column, list []any, compare query.ListComparison) query.SearchQuery { + q, err := query.NewListQuery(query.SessionColumnID, list, compare) + require.NoError(t, err) + return q +} + +func Test_listSessionsRequestToQuery(t *testing.T) { + type args struct { + ctx context.Context + req *session.ListSessionsRequest + } + tests := []struct { + name string + args args + want *query.SessionsSearchQueries + wantErr error + }{ + { + name: "default request", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + req: &session.ListSessionsRequest{}, + }, + want: &query.SessionsSearchQueries{ + SearchRequest: query.SearchRequest{ + Offset: 0, + Limit: 0, + Asc: false, + }, + Queries: []query.SearchQuery{ + mustNewTextQuery(t, query.SessionColumnCreator, "789", query.TextEquals), + }, + }, + }, + { + name: "with list query and sessions", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + req: &session.ListSessionsRequest{ + Query: &object.ListQuery{ + Offset: 10, + Limit: 20, + Asc: true, + }, + Queries: []*session.SearchQuery{ + {Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"1", "2", "3"}, + }, + }}, + {Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"4", "5", "6"}, + }, + }}, + }, + }, + }, + want: &query.SessionsSearchQueries{ + SearchRequest: query.SearchRequest{ + Offset: 10, + Limit: 20, + Asc: true, + }, + Queries: []query.SearchQuery{ + mustNewListQuery(t, query.SessionColumnID, []interface{}{"1", "2", "3"}, query.ListIn), + mustNewListQuery(t, query.SessionColumnID, []interface{}{"4", "5", "6"}, query.ListIn), + mustNewTextQuery(t, query.SessionColumnCreator, "789", query.TextEquals), + }, + }, + }, + { + name: "invalid argument error", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + req: &session.ListSessionsRequest{ + Query: &object.ListQuery{ + Offset: 10, + Limit: 20, + Asc: true, + }, + Queries: []*session.SearchQuery{ + {Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"1", "2", "3"}, + }, + }}, + {Query: nil}, + }, + }, + }, + wantErr: caos_errs.ThrowInvalidArgument(nil, "GRPC-Sfefs", "List.Query.Invalid"), + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := listSessionsRequestToQuery(tt.args.ctx, tt.args.req) + require.ErrorIs(t, err, tt.wantErr) + assert.Equal(t, tt.want, got) + }) + } +} + +func Test_sessionQueriesToQuery(t *testing.T) { + type args struct { + ctx context.Context + queries []*session.SearchQuery + } + tests := []struct { + name string + args args + want []query.SearchQuery + wantErr error + }{ + { + name: "creator only", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + }, + want: []query.SearchQuery{ + mustNewTextQuery(t, query.SessionColumnCreator, "789", query.TextEquals), + }, + }, + { + name: "invalid argument", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + queries: []*session.SearchQuery{ + {Query: nil}, + }, + }, + wantErr: caos_errs.ThrowInvalidArgument(nil, "GRPC-Sfefs", "List.Query.Invalid"), + }, + { + name: "creator and sessions", + args: args{ + ctx: authz.NewMockContext("123", "456", "789"), + queries: []*session.SearchQuery{ + {Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"1", "2", "3"}, + }, + }}, + {Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"4", "5", "6"}, + }, + }}, + }, + }, + want: []query.SearchQuery{ + mustNewListQuery(t, query.SessionColumnID, []interface{}{"1", "2", "3"}, query.ListIn), + mustNewListQuery(t, query.SessionColumnID, []interface{}{"4", "5", "6"}, query.ListIn), + mustNewTextQuery(t, query.SessionColumnCreator, "789", query.TextEquals), + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := sessionQueriesToQuery(tt.args.ctx, tt.args.queries) + require.ErrorIs(t, err, tt.wantErr) + assert.Equal(t, tt.want, got) + }) + } +} + +func Test_sessionQueryToQuery(t *testing.T) { + type args struct { + query *session.SearchQuery + } + tests := []struct { + name string + args args + want query.SearchQuery + wantErr error + }{ + { + name: "invalid argument", + args: args{&session.SearchQuery{ + Query: nil, + }}, + wantErr: caos_errs.ThrowInvalidArgument(nil, "GRPC-Sfefs", "List.Query.Invalid"), + }, + { + name: "query", + args: args{&session.SearchQuery{ + Query: &session.SearchQuery_IdsQuery{ + IdsQuery: &session.IDsQuery{ + Ids: []string{"1", "2", "3"}, + }, + }, + }}, + want: mustNewListQuery(t, query.SessionColumnID, []interface{}{"1", "2", "3"}, query.ListIn), + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := sessionQueryToQuery(tt.args.query) + require.ErrorIs(t, err, tt.wantErr) + assert.Equal(t, tt.want, got) + }) + } +} + +func mustUserLoginNamesSearchQuery(t testing.TB, value string) query.SearchQuery { + loginNameQuery, err := query.NewUserLoginNamesSearchQuery("bar") + require.NoError(t, err) + return loginNameQuery +} + +func Test_userCheck(t *testing.T) { + type args struct { + user *session.CheckUser + } + tests := []struct { + name string + args args + want userSearch + wantErr error + }{ + { + name: "nil user", + args: args{nil}, + want: nil, + }, + { + name: "by user id", + args: args{&session.CheckUser{ + Search: &session.CheckUser_UserId{ + UserId: "foo", + }, + }}, + want: userSearchByID{"foo"}, + }, + { + name: "by user id", + args: args{&session.CheckUser{ + Search: &session.CheckUser_LoginName{ + LoginName: "bar", + }, + }}, + want: userSearchByLoginName{mustUserLoginNamesSearchQuery(t, "bar")}, + }, + { + name: "unimplemented error", + args: args{&session.CheckUser{ + Search: nil, + }}, + wantErr: caos_errs.ThrowUnimplementedf(nil, "SESSION-d3b4g0", "user search %T not implemented", nil), + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := userCheck(tt.args.user) + require.ErrorIs(t, err, tt.wantErr) + assert.Equal(t, tt.want, got) + }) + } +} diff --git a/internal/api/grpc/user/v2/user.go b/internal/api/grpc/user/v2/user.go index 02b7e0628..4388f69f9 100644 --- a/internal/api/grpc/user/v2/user.go +++ b/internal/api/grpc/user/v2/user.go @@ -11,7 +11,7 @@ import ( "github.com/zitadel/zitadel/internal/command" "github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/errors" - "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" + user "github.com/zitadel/zitadel/pkg/grpc/user/v2alpha" ) func (s *Server) AddHumanUser(ctx context.Context, req *user.AddHumanUserRequest) (_ *user.AddHumanUserResponse, err error) { @@ -19,10 +19,7 @@ func (s *Server) AddHumanUser(ctx context.Context, req *user.AddHumanUserRequest if err != nil { return nil, err } - orgID := req.GetOrganisation().GetOrgId() - if orgID == "" { - orgID = authz.GetCtxData(ctx).OrgID - } + orgID := authz.GetCtxData(ctx).OrgID err = s.command.AddHuman(ctx, orgID, human, false) if err != nil { return nil, err diff --git a/internal/api/http/middleware/auth_interceptor.go b/internal/api/http/middleware/auth_interceptor.go index 9af48a274..047ee7754 100644 --- a/internal/api/http/middleware/auth_interceptor.go +++ b/internal/api/http/middleware/auth_interceptor.go @@ -62,7 +62,7 @@ func authorize(r *http.Request, verifier *authz.TokenVerifier, authConfig authz. return nil, errors.New("auth header missing") } - ctxSetter, err := authz.CheckUserAuthorization(authCtx, &httpReq{}, authToken, http_util.GetOrgID(r), verifier, authConfig, authOpt, r.RequestURI) + ctxSetter, err := authz.CheckUserAuthorization(authCtx, &httpReq{}, authToken, http_util.GetOrgID(r), "", verifier, authConfig, authOpt, r.RequestURI) if err != nil { return nil, err } diff --git a/internal/command/command.go b/internal/command/command.go index 82f2a4c45..e9fa9f739 100644 --- a/internal/command/command.go +++ b/internal/command/command.go @@ -20,6 +20,7 @@ import ( "github.com/zitadel/zitadel/internal/repository/org" proj_repo "github.com/zitadel/zitadel/internal/repository/project" "github.com/zitadel/zitadel/internal/repository/quota" + "github.com/zitadel/zitadel/internal/repository/session" usr_repo "github.com/zitadel/zitadel/internal/repository/user" usr_grant_repo "github.com/zitadel/zitadel/internal/repository/usergrant" "github.com/zitadel/zitadel/internal/static" @@ -29,7 +30,7 @@ import ( type Commands struct { httpClient *http.Client - checkPermission permissionCheck + checkPermission domain.PermissionCheck newEmailCode func(ctx context.Context, filter preparation.FilterToQueryReducer, codeAlg crypto.EncryptionAlgorithm) (*CryptoCodeWithExpiry, error) eventstore *eventstore.Eventstore @@ -50,6 +51,8 @@ type Commands struct { domainVerificationAlg crypto.EncryptionAlgorithm domainVerificationGenerator crypto.Generator domainVerificationValidator func(domain, token, verifier string, checkType api_http.CheckType) error + sessionTokenCreator func(sessionID string) (id string, token string, err error) + sessionTokenVerifier func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) multifactors domain.MultifactorConfigs webauthnConfig *webauthn_helper.Config @@ -71,24 +74,21 @@ func StartCommands( externalDomain string, externalSecure bool, externalPort uint16, - idpConfigEncryption, - otpEncryption, - smtpEncryption, - smsEncryption, - userEncryption, - domainVerificationEncryption, - oidcEncryption, - samlEncryption crypto.EncryptionAlgorithm, + idpConfigEncryption, otpEncryption, smtpEncryption, smsEncryption, userEncryption, domainVerificationEncryption, oidcEncryption, samlEncryption crypto.EncryptionAlgorithm, httpClient *http.Client, - membershipsResolver authz.MembershipsResolver, + permissionCheck domain.PermissionCheck, + sessionTokenVerifier func(ctx context.Context, sessionToken string, sessionID string, tokenID string) (err error), ) (repo *Commands, err error) { if externalDomain == "" { return nil, errors.ThrowInvalidArgument(nil, "COMMAND-Df21s", "no external domain specified") } + idGenerator := id.SonyFlakeGenerator() + // reuse the oidcEncryption to be able to handle both tokens in the interceptor later on + sessionAlg := oidcEncryption repo = &Commands{ eventstore: es, static: staticStore, - idGenerator: id.SonyFlakeGenerator(), + idGenerator: idGenerator, zitadelRoles: zitadelRoles, externalDomain: externalDomain, externalSecure: externalSecure, @@ -107,10 +107,10 @@ func StartCommands( certificateAlgorithm: samlEncryption, webauthnConfig: webAuthN, httpClient: httpClient, - checkPermission: func(ctx context.Context, permission, orgID, resourceID string, allowSelf bool) (err error) { - return authz.CheckPermission(ctx, membershipsResolver, zitadelRoles, permission, orgID, resourceID, allowSelf) - }, - newEmailCode: newEmailCode, + checkPermission: permissionCheck, + newEmailCode: newEmailCode, + sessionTokenCreator: sessionTokenCreator(idGenerator, sessionAlg), + sessionTokenVerifier: sessionTokenVerifier, } instance_repo.RegisterEventMappers(repo.eventstore) @@ -121,6 +121,7 @@ func StartCommands( keypair.RegisterEventMappers(repo.eventstore) action.RegisterEventMappers(repo.eventstore) quota.RegisterEventMappers(repo.eventstore) + session.RegisterEventMappers(repo.eventstore) repo.userPasswordAlg = crypto.NewBCrypt(defaults.SecretGenerators.PasswordSaltCost) repo.machineKeySize = int(defaults.SecretGenerators.MachineKeySize) diff --git a/internal/command/main_test.go b/internal/command/main_test.go index 2f516133f..10fc1c2f6 100644 --- a/internal/command/main_test.go +++ b/internal/command/main_test.go @@ -10,6 +10,7 @@ import ( "golang.org/x/text/language" "github.com/zitadel/zitadel/internal/crypto" + "github.com/zitadel/zitadel/internal/domain" "github.com/zitadel/zitadel/internal/errors" "github.com/zitadel/zitadel/internal/eventstore" "github.com/zitadel/zitadel/internal/eventstore/repository" @@ -19,6 +20,7 @@ import ( key_repo "github.com/zitadel/zitadel/internal/repository/keypair" "github.com/zitadel/zitadel/internal/repository/org" proj_repo "github.com/zitadel/zitadel/internal/repository/project" + "github.com/zitadel/zitadel/internal/repository/session" usr_repo "github.com/zitadel/zitadel/internal/repository/user" "github.com/zitadel/zitadel/internal/repository/usergrant" ) @@ -38,6 +40,7 @@ func eventstoreExpect(t *testing.T, expects ...expect) *eventstore.Eventstore { usergrant.RegisterEventMappers(es) key_repo.RegisterEventMappers(es) action_repo.RegisterEventMappers(es) + session.RegisterEventMappers(es) return es } @@ -125,6 +128,11 @@ func expectFilter(events ...*repository.Event) expect { m.ExpectFilterEvents(events...) } } +func expectFilterError(err error) expect { + return func(m *mock.MockRepository) { + m.ExpectFilterEventsError(err) + } +} func expectFilterOrgDomainNotFound() expect { return func(m *mock.MockRepository) { @@ -250,14 +258,14 @@ func (m *mockInstance) SecurityPolicyAllowedOrigins() []string { return nil } -func newMockPermissionCheckAllowed() permissionCheck { - return func(ctx context.Context, permission, orgID, resourceID string, allowSelf bool) (err error) { +func newMockPermissionCheckAllowed() domain.PermissionCheck { + return func(ctx context.Context, permission, orgID, resourceID string) (err error) { return nil } } -func newMockPermissionCheckNotAllowed() permissionCheck { - return func(ctx context.Context, permission, orgID, resourceID string, allowSelf bool) (err error) { +func newMockPermissionCheckNotAllowed() domain.PermissionCheck { + return func(ctx context.Context, permission, orgID, resourceID string) (err error) { return errors.ThrowPermissionDenied(nil, "AUTHZ-HKJD33", "Errors.PermissionDenied") } } diff --git a/internal/command/permission.go b/internal/command/permission.go deleted file mode 100644 index 138df0a44..000000000 --- a/internal/command/permission.go +++ /dev/null @@ -1,11 +0,0 @@ -package command - -import ( - "context" -) - -type permissionCheck func(ctx context.Context, permission, orgID, resourceID string, allowSelf bool) (err error) - -const ( - permissionUserWrite = "user.write" -) diff --git a/internal/command/session.go b/internal/command/session.go new file mode 100644 index 000000000..cb652ea19 --- /dev/null +++ b/internal/command/session.go @@ -0,0 +1,225 @@ +package command + +import ( + "context" + "encoding/base64" + "fmt" + "time" + + "github.com/zitadel/zitadel/internal/api/authz" + "github.com/zitadel/zitadel/internal/crypto" + "github.com/zitadel/zitadel/internal/domain" + caos_errs "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/id" + "github.com/zitadel/zitadel/internal/repository/session" + "github.com/zitadel/zitadel/internal/telemetry/tracing" +) + +type SessionCheck func(ctx context.Context, cmd *SessionChecks) error + +type SessionChecks struct { + checks []SessionCheck + + sessionWriteModel *SessionWriteModel + passwordWriteModel *HumanPasswordWriteModel + eventstore *eventstore.Eventstore + userPasswordAlg crypto.HashAlgorithm + createToken func(sessionID string) (id string, token string, err error) + now func() time.Time +} + +func (c *Commands) NewSessionChecks(checks []SessionCheck, session *SessionWriteModel) *SessionChecks { + return &SessionChecks{ + checks: checks, + sessionWriteModel: session, + eventstore: c.eventstore, + userPasswordAlg: c.userPasswordAlg, + createToken: c.sessionTokenCreator, + now: time.Now, + } +} + +// CheckUser defines a user check to be executed for a session update +func CheckUser(id string) SessionCheck { + return func(ctx context.Context, cmd *SessionChecks) error { + if cmd.sessionWriteModel.UserID != "" && id != "" && cmd.sessionWriteModel.UserID != id { + return caos_errs.ThrowInvalidArgument(nil, "", "user change not possible") + } + return cmd.sessionWriteModel.UserChecked(ctx, id, cmd.now()) + } +} + +// CheckPassword defines a password check to be executed for a session update +func CheckPassword(password string) SessionCheck { + return func(ctx context.Context, cmd *SessionChecks) error { + if cmd.sessionWriteModel.UserID == "" { + return caos_errs.ThrowPreconditionFailed(nil, "COMMAND-Sfw3f", "Errors.User.UserIDMissing") + } + cmd.passwordWriteModel = NewHumanPasswordWriteModel(cmd.sessionWriteModel.UserID, "") + err := cmd.eventstore.FilterToQueryReducer(ctx, cmd.passwordWriteModel) + if err != nil { + return err + } + if cmd.passwordWriteModel.UserState == domain.UserStateUnspecified || cmd.passwordWriteModel.UserState == domain.UserStateDeleted { + return caos_errs.ThrowPreconditionFailed(nil, "COMMAND-Df4b3", "Errors.User.NotFound") + } + + if cmd.passwordWriteModel.Secret == nil { + return caos_errs.ThrowPreconditionFailed(nil, "COMMAND-WEf3t", "Errors.User.Password.NotSet") + } + ctx, spanPasswordComparison := tracing.NewNamedSpan(ctx, "crypto.CompareHash") + err = crypto.CompareHash(cmd.passwordWriteModel.Secret, []byte(password), cmd.userPasswordAlg) + spanPasswordComparison.EndWithError(err) + if err != nil { + //TODO: maybe we want to reset the session in the future https://github.com/zitadel/zitadel/issues/5807 + return caos_errs.ThrowInvalidArgument(err, "COMMAND-SAF3g", "Errors.User.Password.Invalid") + } + cmd.sessionWriteModel.PasswordChecked(ctx, cmd.now()) + return nil + } +} + +// Check will execute the checks specified and return an error on the first occurrence +func (s *SessionChecks) Check(ctx context.Context) error { + for _, check := range s.checks { + if err := check(ctx, s); err != nil { + return err + } + } + return nil +} + +func (s *SessionChecks) commands(ctx context.Context) (string, []eventstore.Command, error) { + if len(s.sessionWriteModel.commands) == 0 { + return "", nil, nil + } + + tokenID, token, err := s.createToken(s.sessionWriteModel.AggregateID) + if err != nil { + return "", nil, err + } + s.sessionWriteModel.SetToken(ctx, tokenID) + return token, s.sessionWriteModel.commands, nil +} + +func (c *Commands) CreateSession(ctx context.Context, checks []SessionCheck, metadata map[string][]byte) (set *SessionChanged, err error) { + sessionID, err := c.idGenerator.Next() + if err != nil { + return nil, err + } + sessionWriteModel := NewSessionWriteModel(sessionID, authz.GetCtxData(ctx).OrgID) + err = c.eventstore.FilterToQueryReducer(ctx, sessionWriteModel) + if err != nil { + return nil, err + } + cmd := c.NewSessionChecks(checks, sessionWriteModel) + cmd.sessionWriteModel.Start(ctx) + return c.updateSession(ctx, cmd, metadata) +} + +func (c *Commands) UpdateSession(ctx context.Context, sessionID, sessionToken string, checks []SessionCheck, metadata map[string][]byte) (set *SessionChanged, err error) { + sessionWriteModel := NewSessionWriteModel(sessionID, authz.GetCtxData(ctx).OrgID) + err = c.eventstore.FilterToQueryReducer(ctx, sessionWriteModel) + if err != nil { + return nil, err + } + if err := c.sessionPermission(ctx, sessionWriteModel, sessionToken, domain.PermissionSessionWrite); err != nil { + return nil, err + } + cmd := c.NewSessionChecks(checks, sessionWriteModel) + return c.updateSession(ctx, cmd, metadata) +} + +func (c *Commands) TerminateSession(ctx context.Context, sessionID, sessionToken string) (*domain.ObjectDetails, error) { + sessionWriteModel := NewSessionWriteModel(sessionID, "") + if err := c.eventstore.FilterToQueryReducer(ctx, sessionWriteModel); err != nil { + return nil, err + } + if err := c.sessionPermission(ctx, sessionWriteModel, sessionToken, domain.PermissionSessionDelete); err != nil { + return nil, err + } + if sessionWriteModel.State != domain.SessionStateActive { + return writeModelToObjectDetails(&sessionWriteModel.WriteModel), nil + } + terminate := session.NewTerminateEvent(ctx, &session.NewAggregate(sessionWriteModel.AggregateID, sessionWriteModel.ResourceOwner).Aggregate) + pushedEvents, err := c.eventstore.Push(ctx, terminate) + if err != nil { + return nil, err + } + err = AppendAndReduce(sessionWriteModel, pushedEvents...) + if err != nil { + return nil, err + } + return writeModelToObjectDetails(&sessionWriteModel.WriteModel), nil +} + +// updateSession execute the [SessionChecks] where new events will be created and as well as for metadata (changes) +func (c *Commands) updateSession(ctx context.Context, checks *SessionChecks, metadata map[string][]byte) (set *SessionChanged, err error) { + if checks.sessionWriteModel.State == domain.SessionStateTerminated { + return nil, caos_errs.ThrowPreconditionFailed(nil, "COMAND-SAjeh", "Errors.Session.Terminated") + } + if err := checks.Check(ctx); err != nil { + // TODO: how to handle failed checks (e.g. pw wrong) https://github.com/zitadel/zitadel/issues/5807 + return nil, err + } + checks.sessionWriteModel.ChangeMetadata(ctx, metadata) + sessionToken, cmds, err := checks.commands(ctx) + if err != nil { + return nil, err + } + if len(cmds) == 0 { + return sessionWriteModelToSessionChanged(checks.sessionWriteModel), nil + } + pushedEvents, err := c.eventstore.Push(ctx, cmds...) + if err != nil { + return nil, err + } + err = AppendAndReduce(checks.sessionWriteModel, pushedEvents...) + if err != nil { + return nil, err + } + changed := sessionWriteModelToSessionChanged(checks.sessionWriteModel) + changed.NewToken = sessionToken + return changed, nil +} + +// sessionPermission will check that the provided sessionToken is correct or +// if empty, check that the caller is granted the necessary permission +func (c *Commands) sessionPermission(ctx context.Context, sessionWriteModel *SessionWriteModel, sessionToken, permission string) (err error) { + if sessionToken == "" { + return c.checkPermission(ctx, permission, authz.GetCtxData(ctx).OrgID, sessionWriteModel.AggregateID) + } + return c.sessionTokenVerifier(ctx, sessionToken, sessionWriteModel.AggregateID, sessionWriteModel.TokenID) +} + +func sessionTokenCreator(idGenerator id.Generator, sessionAlg crypto.EncryptionAlgorithm) func(sessionID string) (id string, token string, err error) { + return func(sessionID string) (id string, token string, err error) { + id, err = idGenerator.Next() + if err != nil { + return "", "", err + } + encrypted, err := sessionAlg.Encrypt([]byte(fmt.Sprintf(authz.SessionTokenFormat, sessionID, id))) + if err != nil { + return "", "", err + } + return id, base64.RawURLEncoding.EncodeToString(encrypted), nil + } +} + +type SessionChanged struct { + *domain.ObjectDetails + ID string + NewToken string +} + +func sessionWriteModelToSessionChanged(wm *SessionWriteModel) *SessionChanged { + return &SessionChanged{ + ObjectDetails: &domain.ObjectDetails{ + Sequence: wm.ProcessedSequence, + EventDate: wm.ChangeDate, + ResourceOwner: wm.ResourceOwner, + }, + ID: wm.AggregateID, + } +} diff --git a/internal/command/session_model.go b/internal/command/session_model.go new file mode 100644 index 000000000..e33169381 --- /dev/null +++ b/internal/command/session_model.go @@ -0,0 +1,139 @@ +package command + +import ( + "bytes" + "context" + "time" + + "github.com/zitadel/zitadel/internal/domain" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/repository/session" +) + +type SessionWriteModel struct { + eventstore.WriteModel + + TokenID string + UserID string + UserCheckedAt time.Time + PasswordCheckedAt time.Time + Metadata map[string][]byte + State domain.SessionState + + commands []eventstore.Command + aggregate *eventstore.Aggregate +} + +func NewSessionWriteModel(sessionID string, resourceOwner string) *SessionWriteModel { + return &SessionWriteModel{ + WriteModel: eventstore.WriteModel{ + AggregateID: sessionID, + ResourceOwner: resourceOwner, + }, + Metadata: make(map[string][]byte), + aggregate: &session.NewAggregate(sessionID, resourceOwner).Aggregate, + } +} + +func (wm *SessionWriteModel) Reduce() error { + for _, event := range wm.Events { + switch e := event.(type) { + case *session.AddedEvent: + wm.reduceAdded(e) + case *session.UserCheckedEvent: + wm.reduceUserChecked(e) + case *session.PasswordCheckedEvent: + wm.reducePasswordChecked(e) + case *session.TokenSetEvent: + wm.reduceTokenSet(e) + case *session.TerminateEvent: + wm.reduceTerminate() + } + } + return wm.WriteModel.Reduce() +} + +func (wm *SessionWriteModel) Query() *eventstore.SearchQueryBuilder { + query := eventstore.NewSearchQueryBuilder(eventstore.ColumnsEvent). + AddQuery(). + AggregateTypes(session.AggregateType). + AggregateIDs(wm.AggregateID). + EventTypes( + session.AddedType, + session.UserCheckedType, + session.PasswordCheckedType, + session.TokenSetType, + session.MetadataSetType, + session.TerminateType, + ). + Builder() + + if wm.ResourceOwner != "" { + query.ResourceOwner(wm.ResourceOwner) + } + return query +} + +func (wm *SessionWriteModel) reduceAdded(e *session.AddedEvent) { + wm.State = domain.SessionStateActive +} + +func (wm *SessionWriteModel) reduceUserChecked(e *session.UserCheckedEvent) { + wm.UserID = e.UserID + wm.UserCheckedAt = e.CheckedAt +} + +func (wm *SessionWriteModel) reducePasswordChecked(e *session.PasswordCheckedEvent) { + wm.PasswordCheckedAt = e.CheckedAt +} + +func (wm *SessionWriteModel) reduceTokenSet(e *session.TokenSetEvent) { + wm.TokenID = e.TokenID +} + +func (wm *SessionWriteModel) reduceTerminate() { + wm.State = domain.SessionStateTerminated +} + +func (wm *SessionWriteModel) Start(ctx context.Context) { + wm.commands = append(wm.commands, session.NewAddedEvent(ctx, wm.aggregate)) +} + +func (wm *SessionWriteModel) UserChecked(ctx context.Context, userID string, checkedAt time.Time) error { + wm.commands = append(wm.commands, session.NewUserCheckedEvent(ctx, wm.aggregate, userID, checkedAt)) + // set the userID so other checks can use it + wm.UserID = userID + return nil +} + +func (wm *SessionWriteModel) PasswordChecked(ctx context.Context, checkedAt time.Time) { + wm.commands = append(wm.commands, session.NewPasswordCheckedEvent(ctx, wm.aggregate, checkedAt)) +} + +func (wm *SessionWriteModel) SetToken(ctx context.Context, tokenID string) { + wm.commands = append(wm.commands, session.NewTokenSetEvent(ctx, wm.aggregate, tokenID)) +} + +func (wm *SessionWriteModel) ChangeMetadata(ctx context.Context, metadata map[string][]byte) { + var changed bool + for key, value := range metadata { + currentValue, exists := wm.Metadata[key] + + if len(value) != 0 { + // if a value is provided, and it's not equal, change it + if !bytes.Equal(currentValue, value) { + wm.Metadata[key] = value + changed = true + } + } else { + // if there's no / an empty value, we only need to remove it on existing entries + if exists { + delete(wm.Metadata, key) + changed = true + } + } + } + if changed { + wm.commands = append(wm.commands, session.NewMetadataSetEvent(ctx, wm.aggregate, wm.Metadata)) + } +} diff --git a/internal/command/session_test.go b/internal/command/session_test.go new file mode 100644 index 000000000..eb080480f --- /dev/null +++ b/internal/command/session_test.go @@ -0,0 +1,547 @@ +package command + +import ( + "context" + "testing" + "time" + + "github.com/golang/mock/gomock" + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" + "golang.org/x/text/language" + + "github.com/zitadel/zitadel/internal/api/authz" + "github.com/zitadel/zitadel/internal/crypto" + "github.com/zitadel/zitadel/internal/domain" + caos_errs "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/id" + "github.com/zitadel/zitadel/internal/id/mock" + "github.com/zitadel/zitadel/internal/repository/session" + "github.com/zitadel/zitadel/internal/repository/user" +) + +func TestCommands_CreateSession(t *testing.T) { + type fields struct { + eventstore *eventstore.Eventstore + idGenerator id.Generator + tokenCreator func(sessionID string) (string, string, error) + } + type args struct { + ctx context.Context + checks []SessionCheck + metadata map[string][]byte + } + type res struct { + want *SessionChanged + err error + } + tests := []struct { + name string + fields fields + args args + res res + }{ + { + "id generator fails", + fields{ + idGenerator: mock.NewIDGeneratorExpectError(t, caos_errs.ThrowInternal(nil, "id", "generator failed")), + }, + args{ + ctx: context.Background(), + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "generator failed"), + }, + }, + { + "eventstore failed", + fields{ + idGenerator: mock.NewIDGeneratorExpectIDs(t, "sessionID"), + eventstore: eventstoreExpect(t, + expectFilterError(caos_errs.ThrowInternal(nil, "id", "filter failed")), + ), + }, + args{ + ctx: context.Background(), + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "filter failed"), + }, + }, + { + "empty session", + fields{ + idGenerator: mock.NewIDGeneratorExpectIDs(t, "sessionID"), + eventstore: eventstoreExpect(t, + expectFilter(), + expectPush( + eventPusherToEvents( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate), + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID", + ), + ), + ), + ), + tokenCreator: func(sessionID string) (string, string, error) { + return "tokenID", + "token", + nil + }, + }, + args{ + ctx: authz.NewMockContext("", "org1", ""), + }, + res{ + want: &SessionChanged{ + ObjectDetails: &domain.ObjectDetails{ResourceOwner: "org1"}, + ID: "sessionID", + NewToken: "token", + }, + }, + }, + // the rest is tested in the Test_updateSession + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + c := &Commands{ + eventstore: tt.fields.eventstore, + idGenerator: tt.fields.idGenerator, + sessionTokenCreator: tt.fields.tokenCreator, + } + got, err := c.CreateSession(tt.args.ctx, tt.args.checks, tt.args.metadata) + require.ErrorIs(t, err, tt.res.err) + assert.Equal(t, tt.res.want, got) + }) + } +} + +func TestCommands_UpdateSession(t *testing.T) { + type fields struct { + eventstore *eventstore.Eventstore + tokenVerifier func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) + } + type args struct { + ctx context.Context + sessionID string + sessionToken string + checks []SessionCheck + metadata map[string][]byte + } + type res struct { + want *SessionChanged + err error + } + tests := []struct { + name string + fields fields + args args + res res + }{ + { + "eventstore failed", + fields{ + eventstore: eventstoreExpect(t, + expectFilterError(caos_errs.ThrowInternal(nil, "id", "filter failed")), + ), + }, + args{ + ctx: context.Background(), + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "filter failed"), + }, + }, + { + "invalid session token", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID")), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return caos_errs.ThrowPermissionDenied(nil, "COMMAND-sGr42", "Errors.Session.Token.Invalid") + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "invalid", + }, + res{ + err: caos_errs.ThrowPermissionDenied(nil, "COMMAND-sGr42", "Errors.Session.Token.Invalid"), + }, + }, + { + "no change", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID")), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return nil + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "token", + }, + res{ + want: &SessionChanged{ + ObjectDetails: &domain.ObjectDetails{ + ResourceOwner: "org1", + }, + ID: "sessionID", + NewToken: "", + }, + }, + }, + // the rest is tested in the Test_updateSession + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + c := &Commands{ + eventstore: tt.fields.eventstore, + sessionTokenVerifier: tt.fields.tokenVerifier, + } + got, err := c.UpdateSession(tt.args.ctx, tt.args.sessionID, tt.args.sessionToken, tt.args.checks, tt.args.metadata) + require.ErrorIs(t, err, tt.res.err) + assert.Equal(t, tt.res.want, got) + }) + } +} + +func TestCommands_updateSession(t *testing.T) { + testNow := time.Now() + type fields struct { + eventstore *eventstore.Eventstore + } + type args struct { + ctx context.Context + checks *SessionChecks + metadata map[string][]byte + } + type res struct { + want *SessionChanged + err error + } + tests := []struct { + name string + fields fields + args args + res res + }{ + { + "terminated", + fields{ + eventstore: eventstoreExpect(t), + }, + args{ + ctx: context.Background(), + checks: &SessionChecks{ + sessionWriteModel: &SessionWriteModel{State: domain.SessionStateTerminated}, + }, + }, + res{ + err: caos_errs.ThrowPreconditionFailed(nil, "COMAND-SAjeh", "Errors.Session.Terminated"), + }, + }, + { + "check failed", + fields{ + eventstore: eventstoreExpect(t), + }, + args{ + ctx: context.Background(), + checks: &SessionChecks{ + sessionWriteModel: NewSessionWriteModel("sessionID", "org1"), + checks: []SessionCheck{ + func(ctx context.Context, cmd *SessionChecks) error { + return caos_errs.ThrowInternal(nil, "id", "check failed") + }, + }, + }, + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "check failed"), + }, + }, + { + "no change", + fields{ + eventstore: eventstoreExpect(t), + }, + args{ + ctx: context.Background(), + checks: &SessionChecks{ + sessionWriteModel: NewSessionWriteModel("sessionID", "org1"), + checks: []SessionCheck{}, + }, + }, + res{ + want: &SessionChanged{ + ObjectDetails: &domain.ObjectDetails{ + ResourceOwner: "org1", + }, + ID: "sessionID", + NewToken: "", + }, + }, + }, + { + "set user, password, metadata and token", + fields{ + eventstore: eventstoreExpect(t, + expectPush( + eventPusherToEvents( + session.NewUserCheckedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "userID", testNow), + session.NewPasswordCheckedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + testNow), + session.NewMetadataSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + map[string][]byte{"key": []byte("value")}), + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID"), + ), + ), + ), + }, + args{ + ctx: context.Background(), + checks: &SessionChecks{ + sessionWriteModel: NewSessionWriteModel("sessionID", "org1"), + checks: []SessionCheck{ + CheckUser("userID"), + CheckPassword("password"), + }, + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + user.NewHumanAddedEvent(context.Background(), &user.NewAggregate("userID", "org1").Aggregate, + "username", "", "", "", "", language.English, domain.GenderUnspecified, "", false), + ), + eventFromEventPusher( + user.NewHumanPasswordChangedEvent(context.Background(), &user.NewAggregate("userID", "org1").Aggregate, + &crypto.CryptoValue{ + CryptoType: crypto.TypeHash, + Algorithm: "hash", + KeyID: "", + Crypted: []byte("password"), + }, false, ""), + ), + ), + ), + createToken: func(sessionID string) (string, string, error) { + return "tokenID", + "token", + nil + }, + userPasswordAlg: crypto.CreateMockHashAlg(gomock.NewController(t)), + now: func() time.Time { + return testNow + }, + }, + metadata: map[string][]byte{ + "key": []byte("value"), + }, + }, + res{ + want: &SessionChanged{ + ObjectDetails: &domain.ObjectDetails{ + ResourceOwner: "org1", + }, + ID: "sessionID", + NewToken: "token", + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + c := &Commands{ + eventstore: tt.fields.eventstore, + } + got, err := c.updateSession(tt.args.ctx, tt.args.checks, tt.args.metadata) + require.ErrorIs(t, err, tt.res.err) + assert.Equal(t, tt.res.want, got) + }) + } +} + +func TestCommands_TerminateSession(t *testing.T) { + type fields struct { + eventstore *eventstore.Eventstore + tokenVerifier func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) + } + type args struct { + ctx context.Context + sessionID string + sessionToken string + } + type res struct { + want *domain.ObjectDetails + err error + } + tests := []struct { + name string + fields fields + args args + res res + }{ + { + "eventstore failed", + fields{ + eventstore: eventstoreExpect(t, + expectFilterError(caos_errs.ThrowInternal(nil, "id", "filter failed")), + ), + }, + args{ + ctx: context.Background(), + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "filter failed"), + }, + }, + { + "invalid session token", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID")), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return caos_errs.ThrowPermissionDenied(nil, "COMMAND-sGr42", "Errors.Session.Token.Invalid") + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "invalid", + }, + res{ + err: caos_errs.ThrowPermissionDenied(nil, "COMMAND-sGr42", "Errors.Session.Token.Invalid"), + }, + }, + { + "not active", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID")), + eventFromEventPusher( + session.NewTerminateEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return nil + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "token", + }, + res{ + want: &domain.ObjectDetails{ + ResourceOwner: "org1", + }, + }, + }, + { + "push failed", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID"), + ), + ), + expectPushFailed( + caos_errs.ThrowInternal(nil, "id", "pushed failed"), + eventPusherToEvents( + session.NewTerminateEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return nil + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "token", + }, + res{ + err: caos_errs.ThrowInternal(nil, "id", "pushed failed"), + }, + }, + { + "terminate", + fields{ + eventstore: eventstoreExpect(t, + expectFilter( + eventFromEventPusher( + session.NewAddedEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + eventFromEventPusher( + session.NewTokenSetEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate, + "tokenID"), + ), + ), + expectPush( + eventPusherToEvents( + session.NewTerminateEvent(context.Background(), &session.NewAggregate("sessionID", "org1").Aggregate)), + ), + ), + tokenVerifier: func(ctx context.Context, sessionToken, sessionID, tokenID string) (err error) { + return nil + }, + }, + args{ + ctx: context.Background(), + sessionID: "sessionID", + sessionToken: "token", + }, + res{ + want: &domain.ObjectDetails{ + ResourceOwner: "org1", + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + c := &Commands{ + eventstore: tt.fields.eventstore, + sessionTokenVerifier: tt.fields.tokenVerifier, + } + got, err := c.TerminateSession(tt.args.ctx, tt.args.sessionID, tt.args.sessionToken) + require.ErrorIs(t, err, tt.res.err) + assert.Equal(t, tt.res.want, got) + }) + } +} diff --git a/internal/command/user_v2_email.go b/internal/command/user_v2_email.go index d636b21a7..d00eb0f04 100644 --- a/internal/command/user_v2_email.go +++ b/internal/command/user_v2_email.go @@ -6,6 +6,7 @@ import ( "github.com/zitadel/logging" + "github.com/zitadel/zitadel/internal/api/authz" "github.com/zitadel/zitadel/internal/crypto" "github.com/zitadel/zitadel/internal/domain" caos_errs "github.com/zitadel/zitadel/internal/errors" @@ -42,7 +43,7 @@ func (c *Commands) ChangeUserEmailVerified(ctx context.Context, userID, resource if err != nil { return nil, err } - if err = c.checkPermission(ctx, permissionUserWrite, cmd.aggregate.ResourceOwner, userID, false); err != nil { + if err = c.checkPermission(ctx, domain.PermissionUserWrite, cmd.aggregate.ResourceOwner, userID); err != nil { return nil, err } if err = cmd.Change(ctx, domain.EmailAddress(email)); err != nil { @@ -70,8 +71,10 @@ func (c *Commands) changeUserEmailWithGenerator(ctx context.Context, userID, res if err != nil { return nil, err } - if err = c.checkPermission(ctx, permissionUserWrite, cmd.aggregate.ResourceOwner, userID, true); err != nil { - return nil, err + if authz.GetCtxData(ctx).UserID != userID { + if err = c.checkPermission(ctx, domain.PermissionUserWrite, cmd.aggregate.ResourceOwner, userID); err != nil { + return nil, err + } } if err = cmd.Change(ctx, domain.EmailAddress(email)); err != nil { return nil, err diff --git a/internal/command/user_v2_email_test.go b/internal/command/user_v2_email_test.go index 9989229ef..af6478473 100644 --- a/internal/command/user_v2_email_test.go +++ b/internal/command/user_v2_email_test.go @@ -24,7 +24,7 @@ import ( func TestCommands_ChangeUserEmail(t *testing.T) { type fields struct { eventstore *eventstore.Eventstore - checkPermission permissionCheck + checkPermission domain.PermissionCheck } type args struct { userID string @@ -174,7 +174,7 @@ func TestCommands_ChangeUserEmail(t *testing.T) { func TestCommands_ChangeUserEmailURLTemplate(t *testing.T) { type fields struct { eventstore *eventstore.Eventstore - checkPermission permissionCheck + checkPermission domain.PermissionCheck } type args struct { userID string @@ -300,7 +300,7 @@ func TestCommands_ChangeUserEmailURLTemplate(t *testing.T) { func TestCommands_ChangeUserEmailReturnCode(t *testing.T) { type fields struct { eventstore *eventstore.Eventstore - checkPermission permissionCheck + checkPermission domain.PermissionCheck } type args struct { userID string @@ -410,7 +410,7 @@ func TestCommands_ChangeUserEmailReturnCode(t *testing.T) { func TestCommands_ChangeUserEmailVerified(t *testing.T) { type fields struct { eventstore *eventstore.Eventstore - checkPermission permissionCheck + checkPermission domain.PermissionCheck } type args struct { userID string @@ -569,7 +569,7 @@ func TestCommands_ChangeUserEmailVerified(t *testing.T) { func TestCommands_changeUserEmailWithGenerator(t *testing.T) { type fields struct { eventstore *eventstore.Eventstore - checkPermission permissionCheck + checkPermission domain.PermissionCheck } type args struct { userID string diff --git a/internal/database/type.go b/internal/database/type.go index 5757529c8..8360bc1f1 100644 --- a/internal/database/type.go +++ b/internal/database/type.go @@ -2,13 +2,14 @@ package database import ( "database/sql/driver" + "encoding/json" "github.com/jackc/pgtype" ) type StringArray []string -// Scan implements the `database/sql.Scanner` interface. +// Scan implements the [database/sql.Scanner] interface. func (s *StringArray) Scan(src any) error { array := new(pgtype.TextArray) if err := array.Scan(src); err != nil { @@ -20,7 +21,7 @@ func (s *StringArray) Scan(src any) error { return nil } -// Value implements the `database/sql/driver.Valuer` interface. +// Value implements the [database/sql/driver.Valuer] interface. func (s StringArray) Value() (driver.Value, error) { if len(s) == 0 { return nil, nil @@ -40,7 +41,7 @@ type enumField interface { type EnumArray[F enumField] []F -// Scan implements the `database/sql.Scanner` interface. +// Scan implements the [database/sql.Scanner] interface. func (s *EnumArray[F]) Scan(src any) error { array := new(pgtype.Int2Array) if err := array.Scan(src); err != nil { @@ -57,7 +58,7 @@ func (s *EnumArray[F]) Scan(src any) error { return nil } -// Value implements the `database/sql/driver.Valuer` interface. +// Value implements the [database/sql/driver.Valuer] interface. func (s EnumArray[F]) Value() (driver.Value, error) { if len(s) == 0 { return nil, nil @@ -70,3 +71,25 @@ func (s EnumArray[F]) Value() (driver.Value, error) { return array.Value() } + +type Map[V any] map[string]V + +// Scan implements the [database/sql.Scanner] interface. +func (m *Map[V]) Scan(src any) error { + bytea := new(pgtype.Bytea) + if err := bytea.Scan(src); err != nil { + return err + } + if len(bytea.Bytes) == 0 { + return nil + } + return json.Unmarshal(bytea.Bytes, &m) +} + +// Value implements the [database/sql/driver.Valuer] interface. +func (m Map[V]) Value() (driver.Value, error) { + if len(m) == 0 { + return nil, nil + } + return json.Marshal(m) +} diff --git a/internal/database/type_test.go b/internal/database/type_test.go new file mode 100644 index 000000000..4586f1413 --- /dev/null +++ b/internal/database/type_test.go @@ -0,0 +1,119 @@ +package database + +import ( + "database/sql/driver" + "testing" + + "github.com/stretchr/testify/assert" + "github.com/stretchr/testify/require" +) + +func TestMap_Scan(t *testing.T) { + type args struct { + src any + } + type res[V any] struct { + want Map[V] + err bool + } + type testCase[V any] struct { + name string + m Map[V] + args args + res[V] + } + tests := []testCase[string]{ + { + "null", + Map[string]{}, + args{src: "invalid"}, + res[string]{ + want: Map[string]{}, + err: true, + }, + }, + { + "null", + Map[string]{}, + args{src: nil}, + res[string]{ + want: Map[string]{}, + }, + }, + { + "empty", + Map[string]{}, + args{src: []byte(`{}`)}, + res[string]{ + want: Map[string]{}, + }, + }, + { + "set", + Map[string]{}, + args{src: []byte(`{"key": "value"}`)}, + res[string]{ + want: Map[string]{ + "key": "value", + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + if err := tt.m.Scan(tt.args.src); (err != nil) != tt.res.err { + t.Errorf("Scan() error = %v, wantErr %v", err, tt.res.err) + } + assert.Equal(t, tt.res.want, tt.m) + }) + } +} + +func TestMap_Value(t *testing.T) { + type res struct { + want driver.Value + err bool + } + type testCase[V any] struct { + name string + m Map[V] + res res + } + tests := []testCase[string]{ + { + "nil", + nil, + res{ + want: nil, + }, + }, + { + "empty", + Map[string]{}, + res{ + want: nil, + }, + }, + { + "set", + Map[string]{ + "key": "value", + }, + res{ + want: driver.Value([]byte(`{"key":"value"}`)), + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + got, err := tt.m.Value() + if tt.res.err { + assert.Error(t, err) + } + if !tt.res.err { + require.NoError(t, err) + assert.Equalf(t, tt.res.want, got, "Value()") + } + }) + } +} diff --git a/internal/domain/permission.go b/internal/domain/permission.go index a9a1df5f4..5a51d7bdb 100644 --- a/internal/domain/permission.go +++ b/internal/domain/permission.go @@ -1,5 +1,7 @@ package domain +import "context" + type Permissions struct { Permissions []string } @@ -21,3 +23,12 @@ func (p *Permissions) appendPermission(ctxID, permission string) { } p.Permissions = append(p.Permissions, permission) } + +type PermissionCheck func(ctx context.Context, permission, orgID, resourceID string) (err error) + +const ( + PermissionUserWrite = "user.write" + PermissionSessionRead = "session.read" + PermissionSessionWrite = "session.write" + PermissionSessionDelete = "session.delete" +) diff --git a/internal/domain/session.go b/internal/domain/session.go new file mode 100644 index 000000000..84a74a8f6 --- /dev/null +++ b/internal/domain/session.go @@ -0,0 +1,9 @@ +package domain + +type SessionState int32 + +const ( + SessionStateUnspecified SessionState = iota + SessionStateActive + SessionStateTerminated +) diff --git a/internal/id/mock/generator.mock.impl.go b/internal/id/mock/generator.mock.impl.go index e61f80398..f61a48b9d 100644 --- a/internal/id/mock/generator.mock.impl.go +++ b/internal/id/mock/generator.mock.impl.go @@ -25,3 +25,9 @@ func ExpectID(t *testing.T, id string) *MockGenerator { m.EXPECT().Next().Return(id, nil) return m } + +func NewIDGeneratorExpectError(t *testing.T, err error) *MockGenerator { + m := NewMockGenerator(gomock.NewController(t)) + m.EXPECT().Next().Return("", err) + return m +} diff --git a/internal/query/org.go b/internal/query/org.go index 26bd3cd67..d5c90f08f 100644 --- a/internal/query/org.go +++ b/internal/query/org.go @@ -180,12 +180,20 @@ func (q *Queries) IsOrgUnique(ctx context.Context, name, domain string) (isUniqu return scan(row) } -func (q *Queries) ExistsOrg(ctx context.Context, id string) (err error) { +func (q *Queries) ExistsOrg(ctx context.Context, id, domain string) (verifiedID string, err error) { ctx, span := tracing.NewSpan(ctx) defer func() { span.EndWithError(err) }() - _, err = q.OrgByID(ctx, true, id) - return err + var org *Org + if id != "" { + org, err = q.OrgByID(ctx, true, id) + } else { + org, err = q.OrgByVerifiedDomain(ctx, domain) + } + if err != nil { + return "", err + } + return org.ID, nil } func (q *Queries) SearchOrgs(ctx context.Context, queries *OrgSearchQueries) (orgs *Orgs, err error) { diff --git a/internal/query/projection/projection.go b/internal/query/projection/projection.go index fb461927c..45670b8ba 100644 --- a/internal/query/projection/projection.go +++ b/internal/query/projection/projection.go @@ -65,6 +65,7 @@ var ( NotificationsProjection interface{} NotificationsQuotaProjection interface{} DeviceAuthProjection *deviceAuthProjection + SessionProjection *sessionProjection ) type projection interface { @@ -141,6 +142,7 @@ func Create(ctx context.Context, sqlClient *database.DB, es *eventstore.Eventsto SecurityPolicyProjection = newSecurityPolicyProjection(ctx, applyCustomConfig(projectionConfig, config.Customizations["security_policies"])) NotificationPolicyProjection = newNotificationPolicyProjection(ctx, applyCustomConfig(projectionConfig, config.Customizations["notification_policies"])) DeviceAuthProjection = newDeviceAuthProjection(ctx, applyCustomConfig(projectionConfig, config.Customizations["device_auth"])) + SessionProjection = newSessionProjection(ctx, applyCustomConfig(projectionConfig, config.Customizations["sessions"])) newProjectionsList() return nil } @@ -237,5 +239,6 @@ func newProjectionsList() { SecurityPolicyProjection, NotificationPolicyProjection, DeviceAuthProjection, + SessionProjection, } } diff --git a/internal/query/projection/session.go b/internal/query/projection/session.go new file mode 100644 index 000000000..9858de473 --- /dev/null +++ b/internal/query/projection/session.go @@ -0,0 +1,221 @@ +package projection + +import ( + "context" + + "github.com/zitadel/zitadel/internal/domain" + "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/eventstore/handler" + "github.com/zitadel/zitadel/internal/eventstore/handler/crdb" + "github.com/zitadel/zitadel/internal/repository/instance" + "github.com/zitadel/zitadel/internal/repository/session" +) + +const ( + SessionsProjectionTable = "projections.sessions" + + SessionColumnID = "id" + SessionColumnCreationDate = "creation_date" + SessionColumnChangeDate = "change_date" + SessionColumnSequence = "sequence" + SessionColumnState = "state" + SessionColumnResourceOwner = "resource_owner" + SessionColumnInstanceID = "instance_id" + SessionColumnCreator = "creator" + SessionColumnUserID = "user_id" + SessionColumnUserCheckedAt = "user_checked_at" + SessionColumnPasswordCheckedAt = "password_checked_at" + SessionColumnMetadata = "metadata" + SessionColumnTokenID = "token_id" +) + +type sessionProjection struct { + crdb.StatementHandler +} + +func newSessionProjection(ctx context.Context, config crdb.StatementHandlerConfig) *sessionProjection { + p := new(sessionProjection) + config.ProjectionName = SessionsProjectionTable + config.Reducers = p.reducers() + config.InitCheck = crdb.NewMultiTableCheck( + crdb.NewTable([]*crdb.Column{ + crdb.NewColumn(SessionColumnID, crdb.ColumnTypeText), + crdb.NewColumn(SessionColumnCreationDate, crdb.ColumnTypeTimestamp), + crdb.NewColumn(SessionColumnChangeDate, crdb.ColumnTypeTimestamp), + crdb.NewColumn(SessionColumnSequence, crdb.ColumnTypeInt64), + crdb.NewColumn(SessionColumnState, crdb.ColumnTypeEnum), + crdb.NewColumn(SessionColumnResourceOwner, crdb.ColumnTypeText), + crdb.NewColumn(SessionColumnInstanceID, crdb.ColumnTypeText), + crdb.NewColumn(SessionColumnCreator, crdb.ColumnTypeText), + crdb.NewColumn(SessionColumnUserID, crdb.ColumnTypeText, crdb.Nullable()), + crdb.NewColumn(SessionColumnUserCheckedAt, crdb.ColumnTypeTimestamp, crdb.Nullable()), + crdb.NewColumn(SessionColumnPasswordCheckedAt, crdb.ColumnTypeTimestamp, crdb.Nullable()), + crdb.NewColumn(SessionColumnMetadata, crdb.ColumnTypeJSONB, crdb.Nullable()), + crdb.NewColumn(SessionColumnTokenID, crdb.ColumnTypeText, crdb.Nullable()), + }, + crdb.NewPrimaryKey(SessionColumnInstanceID, SessionColumnID), + ), + ) + p.StatementHandler = crdb.NewStatementHandler(ctx, config) + return p +} + +func (p *sessionProjection) reducers() []handler.AggregateReducer { + return []handler.AggregateReducer{ + { + Aggregate: session.AggregateType, + EventRedusers: []handler.EventReducer{ + { + Event: session.AddedType, + Reduce: p.reduceSessionAdded, + }, + { + Event: session.UserCheckedType, + Reduce: p.reduceUserChecked, + }, + { + Event: session.PasswordCheckedType, + Reduce: p.reducePasswordChecked, + }, + { + Event: session.TokenSetType, + Reduce: p.reduceTokenSet, + }, + { + Event: session.MetadataSetType, + Reduce: p.reduceMetadataSet, + }, + { + Event: session.TerminateType, + Reduce: p.reduceSessionTerminated, + }, + }, + }, + { + Aggregate: instance.AggregateType, + EventRedusers: []handler.EventReducer{ + { + Event: instance.InstanceRemovedEventType, + Reduce: reduceInstanceRemovedHelper(SMSColumnInstanceID), + }, + }, + }, + } +} + +func (p *sessionProjection) reduceSessionAdded(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.AddedEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-Sfrgf", "reduce.wrong.event.type %s", session.AddedType) + } + + return crdb.NewCreateStatement( + e, + []handler.Column{ + handler.NewCol(SessionColumnID, e.Aggregate().ID), + handler.NewCol(SessionColumnInstanceID, e.Aggregate().InstanceID), + handler.NewCol(SessionColumnCreationDate, e.CreationDate()), + handler.NewCol(SessionColumnChangeDate, e.CreationDate()), + handler.NewCol(SessionColumnResourceOwner, e.Aggregate().ResourceOwner), + handler.NewCol(SessionColumnState, domain.SessionStateActive), + handler.NewCol(SessionColumnSequence, e.Sequence()), + handler.NewCol(SessionColumnCreator, e.User), + }, + ), nil +} + +func (p *sessionProjection) reduceUserChecked(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.UserCheckedEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-saDg5", "reduce.wrong.event.type %s", session.UserCheckedType) + } + return crdb.NewUpdateStatement( + e, + []handler.Column{ + handler.NewCol(SessionColumnChangeDate, e.CreationDate()), + handler.NewCol(SessionColumnSequence, e.Sequence()), + handler.NewCol(SessionColumnUserID, e.UserID), + handler.NewCol(SessionColumnUserCheckedAt, e.CheckedAt), + }, + []handler.Condition{ + handler.NewCond(SessionColumnID, e.Aggregate().ID), + handler.NewCond(SessionColumnInstanceID, e.Aggregate().InstanceID), + }, + ), nil +} + +func (p *sessionProjection) reducePasswordChecked(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.PasswordCheckedEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-SDgrb", "reduce.wrong.event.type %s", session.PasswordCheckedType) + } + + return crdb.NewUpdateStatement( + e, + []handler.Column{ + handler.NewCol(SessionColumnChangeDate, e.CreationDate()), + handler.NewCol(SessionColumnSequence, e.Sequence()), + handler.NewCol(SessionColumnPasswordCheckedAt, e.CheckedAt), + }, + []handler.Condition{ + handler.NewCond(SessionColumnID, e.Aggregate().ID), + handler.NewCond(SessionColumnInstanceID, e.Aggregate().InstanceID), + }, + ), nil +} + +func (p *sessionProjection) reduceTokenSet(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.TokenSetEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-SAfd3", "reduce.wrong.event.type %s", session.TokenSetType) + } + + return crdb.NewUpdateStatement( + e, + []handler.Column{ + handler.NewCol(SessionColumnChangeDate, e.CreationDate()), + handler.NewCol(SessionColumnSequence, e.Sequence()), + handler.NewCol(SessionColumnTokenID, e.TokenID), + }, + []handler.Condition{ + handler.NewCond(SessionColumnID, e.Aggregate().ID), + handler.NewCond(SessionColumnInstanceID, e.Aggregate().InstanceID), + }, + ), nil +} + +func (p *sessionProjection) reduceMetadataSet(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.MetadataSetEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-SAfd3", "reduce.wrong.event.type %s", session.MetadataSetType) + } + + return crdb.NewUpdateStatement( + e, + []handler.Column{ + handler.NewCol(SessionColumnChangeDate, e.CreationDate()), + handler.NewCol(SessionColumnSequence, e.Sequence()), + handler.NewCol(SessionColumnMetadata, e.Metadata), + }, + []handler.Condition{ + handler.NewCond(SessionColumnID, e.Aggregate().ID), + handler.NewCond(SessionColumnInstanceID, e.Aggregate().InstanceID), + }, + ), nil +} + +func (p *sessionProjection) reduceSessionTerminated(event eventstore.Event) (*handler.Statement, error) { + e, ok := event.(*session.TerminateEvent) + if !ok { + return nil, errors.ThrowInvalidArgumentf(nil, "HANDL-SAftn", "reduce.wrong.event.type %s", session.TerminateType) + } + + return crdb.NewDeleteStatement( + e, + []handler.Condition{ + handler.NewCond(SessionColumnID, e.Aggregate().ID), + handler.NewCond(SessionColumnInstanceID, e.Aggregate().InstanceID), + }, + ), nil +} diff --git a/internal/query/projection/session_test.go b/internal/query/projection/session_test.go new file mode 100644 index 000000000..6cd3ae2e5 --- /dev/null +++ b/internal/query/projection/session_test.go @@ -0,0 +1,260 @@ +package projection + +import ( + "testing" + "time" + + "github.com/zitadel/zitadel/internal/domain" + "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/eventstore/handler" + "github.com/zitadel/zitadel/internal/eventstore/repository" + "github.com/zitadel/zitadel/internal/repository/instance" + "github.com/zitadel/zitadel/internal/repository/session" +) + +func TestSessionProjection_reduces(t *testing.T) { + type args struct { + event func(t *testing.T) eventstore.Event + } + tests := []struct { + name string + args args + reduce func(event eventstore.Event) (*handler.Statement, error) + want wantReduce + }{ + { + name: "instance reduceSessionAdded", + args: args{ + event: getEvent(testEvent( + session.AddedType, + session.AggregateType, + []byte(`{}`), + ), session.AddedEventMapper), + }, + reduce: (&sessionProjection{}).reduceSessionAdded, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "INSERT INTO projections.sessions (id, instance_id, creation_date, change_date, resource_owner, state, sequence, creator) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)", + expectedArgs: []interface{}{ + "agg-id", + "instance-id", + anyArg{}, + anyArg{}, + "ro-id", + domain.SessionStateActive, + uint64(15), + "editor-user", + }, + }, + }, + }, + }, + }, + { + name: "instance reduceUserChecked", + args: args{ + event: getEvent(testEvent( + session.AddedType, + session.AggregateType, + []byte(`{ + "userId": "user-id", + "checkedAt": "2023-05-04T00:00:00Z" + }`), + ), session.UserCheckedEventMapper), + }, + reduce: (&sessionProjection{}).reduceUserChecked, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "UPDATE projections.sessions SET (change_date, sequence, user_id, user_checked_at) = ($1, $2, $3, $4) WHERE (id = $5) AND (instance_id = $6)", + expectedArgs: []interface{}{ + anyArg{}, + anyArg{}, + "user-id", + time.Date(2023, time.May, 4, 0, 0, 0, 0, time.UTC), + "agg-id", + "instance-id", + }, + }, + }, + }, + }, + }, + { + name: "instance reducePasswordChecked", + args: args{ + event: getEvent(testEvent( + session.AddedType, + session.AggregateType, + []byte(`{ + "checkedAt": "2023-05-04T00:00:00Z" + }`), + ), session.PasswordCheckedEventMapper), + }, + reduce: (&sessionProjection{}).reducePasswordChecked, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "UPDATE projections.sessions SET (change_date, sequence, password_checked_at) = ($1, $2, $3) WHERE (id = $4) AND (instance_id = $5)", + expectedArgs: []interface{}{ + anyArg{}, + anyArg{}, + time.Date(2023, time.May, 4, 0, 0, 0, 0, time.UTC), + "agg-id", + "instance-id", + }, + }, + }, + }, + }, + }, + { + name: "instance reduceTokenSet", + args: args{ + event: getEvent(testEvent( + session.TokenSetType, + session.AggregateType, + []byte(`{ + "tokenID": "tokenID" + }`), + ), session.TokenSetEventMapper), + }, + reduce: (&sessionProjection{}).reduceTokenSet, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "UPDATE projections.sessions SET (change_date, sequence, token_id) = ($1, $2, $3) WHERE (id = $4) AND (instance_id = $5)", + expectedArgs: []interface{}{ + anyArg{}, + anyArg{}, + "tokenID", + "agg-id", + "instance-id", + }, + }, + }, + }, + }, + }, + { + name: "instance reduceMetadataSet", + args: args{ + event: getEvent(testEvent( + session.MetadataSetType, + session.AggregateType, + []byte(`{ + "metadata": { + "key": "dmFsdWU=" + } + }`), + ), session.MetadataSetEventMapper), + }, + reduce: (&sessionProjection{}).reduceMetadataSet, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "UPDATE projections.sessions SET (change_date, sequence, metadata) = ($1, $2, $3) WHERE (id = $4) AND (instance_id = $5)", + expectedArgs: []interface{}{ + anyArg{}, + anyArg{}, + map[string][]byte{ + "key": []byte("value"), + }, + "agg-id", + "instance-id", + }, + }, + }, + }, + }, + }, + { + name: "instance reduceSessionTerminated", + args: args{ + event: getEvent(testEvent( + session.TerminateType, + session.AggregateType, + []byte(`{}`), + ), session.TerminateEventMapper), + }, + reduce: (&sessionProjection{}).reduceSessionTerminated, + want: wantReduce{ + aggregateType: eventstore.AggregateType("session"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "DELETE FROM projections.sessions WHERE (id = $1) AND (instance_id = $2)", + expectedArgs: []interface{}{ + "agg-id", + "instance-id", + }, + }, + }, + }, + }, + }, + { + name: "instance reduceInstanceRemoved", + args: args{ + event: getEvent(testEvent( + repository.EventType(instance.InstanceRemovedEventType), + instance.AggregateType, + nil, + ), instance.InstanceRemovedEventMapper), + }, + reduce: reduceInstanceRemovedHelper(SessionColumnInstanceID), + want: wantReduce{ + aggregateType: eventstore.AggregateType("instance"), + sequence: 15, + previousSequence: 10, + executer: &testExecuter{ + executions: []execution{ + { + expectedStmt: "DELETE FROM projections.sessions WHERE (instance_id = $1)", + expectedArgs: []interface{}{ + "agg-id", + }, + }, + }, + }, + }, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + event := baseEvent(t) + got, err := tt.reduce(event) + if !errors.IsErrorInvalidArgument(err) { + t.Errorf("no wrong event mapping: %v, got: %v", err, got) + } + + event = tt.args.event(t) + got, err = tt.reduce(event) + assertReduce(t, got, err, SessionsProjectionTable, tt.want) + }) + } +} diff --git a/internal/query/query.go b/internal/query/query.go index 0fc324f84..7e3f10dcd 100644 --- a/internal/query/query.go +++ b/internal/query/query.go @@ -22,6 +22,7 @@ import ( "github.com/zitadel/zitadel/internal/repository/keypair" "github.com/zitadel/zitadel/internal/repository/org" "github.com/zitadel/zitadel/internal/repository/project" + "github.com/zitadel/zitadel/internal/repository/session" usr_repo "github.com/zitadel/zitadel/internal/repository/user" "github.com/zitadel/zitadel/internal/repository/usergrant" ) @@ -30,7 +31,8 @@ type Queries struct { eventstore *eventstore.Eventstore client *database.DB - idpConfigEncryption crypto.EncryptionAlgorithm + idpConfigEncryption crypto.EncryptionAlgorithm + sessionTokenVerifier func(ctx context.Context, sessionToken string, sessionID string, tokenID string) (err error) DefaultLanguage language.Tag LoginDir http.FileSystem @@ -43,7 +45,16 @@ type Queries struct { multifactors domain.MultifactorConfigs } -func StartQueries(ctx context.Context, es *eventstore.Eventstore, sqlClient *database.DB, projections projection.Config, defaults sd.SystemDefaults, idpConfigEncryption, otpEncryption, keyEncryptionAlgorithm crypto.EncryptionAlgorithm, certEncryptionAlgorithm crypto.EncryptionAlgorithm, zitadelRoles []authz.RoleMapping) (repo *Queries, err error) { +func StartQueries( + ctx context.Context, + es *eventstore.Eventstore, + sqlClient *database.DB, + projections projection.Config, + defaults sd.SystemDefaults, + idpConfigEncryption, otpEncryption, keyEncryptionAlgorithm, certEncryptionAlgorithm crypto.EncryptionAlgorithm, + zitadelRoles []authz.RoleMapping, + sessionTokenVerifier func(ctx context.Context, sessionToken string, sessionID string, tokenID string) (err error), +) (repo *Queries, err error) { statikLoginFS, err := fs.NewWithNamespace("login") if err != nil { return nil, fmt.Errorf("unable to start login statik dir") @@ -63,6 +74,7 @@ func StartQueries(ctx context.Context, es *eventstore.Eventstore, sqlClient *dat LoginTranslationFileContents: make(map[string][]byte), NotificationTranslationFileContents: make(map[string][]byte), zitadelRoles: zitadelRoles, + sessionTokenVerifier: sessionTokenVerifier, } iam_repo.RegisterEventMappers(repo.eventstore) usr_repo.RegisterEventMappers(repo.eventstore) @@ -71,6 +83,7 @@ func StartQueries(ctx context.Context, es *eventstore.Eventstore, sqlClient *dat action.RegisterEventMappers(repo.eventstore) keypair.RegisterEventMappers(repo.eventstore) usergrant.RegisterEventMappers(repo.eventstore) + session.RegisterEventMappers(repo.eventstore) repo.idpConfigEncryption = idpConfigEncryption repo.multifactors = domain.MultifactorConfigs{ diff --git a/internal/query/session.go b/internal/query/session.go new file mode 100644 index 000000000..ba30c64da --- /dev/null +++ b/internal/query/session.go @@ -0,0 +1,320 @@ +package query + +import ( + "context" + "database/sql" + errs "errors" + "time" + + sq "github.com/Masterminds/squirrel" + + "github.com/zitadel/zitadel/internal/api/authz" + "github.com/zitadel/zitadel/internal/api/call" + "github.com/zitadel/zitadel/internal/database" + "github.com/zitadel/zitadel/internal/domain" + "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/query/projection" + "github.com/zitadel/zitadel/internal/telemetry/tracing" +) + +type Sessions struct { + SearchResponse + Sessions []*Session +} + +type Session struct { + ID string + CreationDate time.Time + ChangeDate time.Time + Sequence uint64 + State domain.SessionState + ResourceOwner string + Creator string + UserFactor SessionUserFactor + PasswordFactor SessionPasswordFactor + Metadata map[string][]byte +} + +type SessionUserFactor struct { + UserID string + UserCheckedAt time.Time + LoginName string + DisplayName string +} + +type SessionPasswordFactor struct { + PasswordCheckedAt time.Time +} + +type SessionsSearchQueries struct { + SearchRequest + Queries []SearchQuery +} + +func (q *SessionsSearchQueries) toQuery(query sq.SelectBuilder) sq.SelectBuilder { + query = q.SearchRequest.toQuery(query) + for _, q := range q.Queries { + query = q.toQuery(query) + } + return query +} + +var ( + sessionsTable = table{ + name: projection.SessionsProjectionTable, + instanceIDCol: projection.SessionColumnInstanceID, + } + SessionColumnID = Column{ + name: projection.SessionColumnID, + table: sessionsTable, + } + SessionColumnCreationDate = Column{ + name: projection.SessionColumnCreationDate, + table: sessionsTable, + } + SessionColumnChangeDate = Column{ + name: projection.SessionColumnChangeDate, + table: sessionsTable, + } + SessionColumnSequence = Column{ + name: projection.SessionColumnSequence, + table: sessionsTable, + } + SessionColumnState = Column{ + name: projection.SessionColumnState, + table: sessionsTable, + } + SessionColumnResourceOwner = Column{ + name: projection.SessionColumnResourceOwner, + table: sessionsTable, + } + SessionColumnInstanceID = Column{ + name: projection.SessionColumnInstanceID, + table: sessionsTable, + } + SessionColumnCreator = Column{ + name: projection.SessionColumnCreator, + table: sessionsTable, + } + SessionColumnUserID = Column{ + name: projection.SessionColumnUserID, + table: sessionsTable, + } + SessionColumnUserCheckedAt = Column{ + name: projection.SessionColumnUserCheckedAt, + table: sessionsTable, + } + SessionColumnPasswordCheckedAt = Column{ + name: projection.SessionColumnPasswordCheckedAt, + table: sessionsTable, + } + SessionColumnMetadata = Column{ + name: projection.SessionColumnMetadata, + table: sessionsTable, + } + SessionColumnToken = Column{ + name: projection.SessionColumnTokenID, + table: sessionsTable, + } +) + +func (q *Queries) SessionByID(ctx context.Context, id, sessionToken string) (_ *Session, err error) { + ctx, span := tracing.NewSpan(ctx) + defer func() { span.EndWithError(err) }() + + query, scan := prepareSessionQuery(ctx, q.client) + stmt, args, err := query.Where( + sq.Eq{ + SessionColumnID.identifier(): id, + SessionColumnInstanceID.identifier(): authz.GetInstance(ctx).InstanceID(), + }, + ).ToSql() + if err != nil { + return nil, errors.ThrowInternal(err, "QUERY-dn9JW", "Errors.Query.SQLStatement") + } + + row := q.client.QueryRowContext(ctx, stmt, args...) + session, tokenID, err := scan(row) + if err != nil { + return nil, err + } + if sessionToken == "" { + return session, nil + } + if err := q.sessionTokenVerifier(ctx, sessionToken, session.ID, tokenID); err != nil { + return nil, errors.ThrowPermissionDenied(nil, "QUERY-dsfr3", "Errors.PermissionDenied") + } + return session, nil +} + +func (q *Queries) SearchSessions(ctx context.Context, queries *SessionsSearchQueries) (_ *Sessions, err error) { + ctx, span := tracing.NewSpan(ctx) + defer func() { span.EndWithError(err) }() + + query, scan := prepareSessionsQuery(ctx, q.client) + stmt, args, err := queries.toQuery(query). + Where(sq.Eq{ + SessionColumnInstanceID.identifier(): authz.GetInstance(ctx).InstanceID(), + }).ToSql() + if err != nil { + return nil, errors.ThrowInvalidArgument(err, "QUERY-sn9Jf", "Errors.Query.InvalidRequest") + } + + rows, err := q.client.QueryContext(ctx, stmt, args...) + if err != nil || rows.Err() != nil { + return nil, errors.ThrowInternal(err, "QUERY-Sfg42", "Errors.Internal") + } + sessions, err := scan(rows) + if err != nil { + return nil, err + } + sessions.LatestSequence, err = q.latestSequence(ctx, sessionsTable) + return sessions, err +} + +func NewSessionIDsSearchQuery(ids []string) (SearchQuery, error) { + list := make([]interface{}, len(ids)) + for i, value := range ids { + list[i] = value + } + return NewListQuery(SessionColumnID, list, ListIn) +} + +func NewSessionCreatorSearchQuery(creator string) (SearchQuery, error) { + return NewTextQuery(SessionColumnCreator, creator, TextEquals) +} + +func prepareSessionQuery(ctx context.Context, db prepareDatabase) (sq.SelectBuilder, func(*sql.Row) (*Session, string, error)) { + return sq.Select( + SessionColumnID.identifier(), + SessionColumnCreationDate.identifier(), + SessionColumnChangeDate.identifier(), + SessionColumnSequence.identifier(), + SessionColumnState.identifier(), + SessionColumnResourceOwner.identifier(), + SessionColumnCreator.identifier(), + SessionColumnUserID.identifier(), + SessionColumnUserCheckedAt.identifier(), + LoginNameNameCol.identifier(), + HumanDisplayNameCol.identifier(), + SessionColumnPasswordCheckedAt.identifier(), + SessionColumnMetadata.identifier(), + SessionColumnToken.identifier(), + ).From(sessionsTable.identifier()). + LeftJoin(join(LoginNameUserIDCol, SessionColumnUserID)). + LeftJoin(join(HumanUserIDCol, SessionColumnUserID) + db.Timetravel(call.Took(ctx))). + PlaceholderFormat(sq.Dollar), func(row *sql.Row) (*Session, string, error) { + session := new(Session) + + var ( + userID sql.NullString + userCheckedAt sql.NullTime + loginName sql.NullString + displayName sql.NullString + passwordCheckedAt sql.NullTime + metadata database.Map[[]byte] + token sql.NullString + ) + + err := row.Scan( + &session.ID, + &session.CreationDate, + &session.ChangeDate, + &session.Sequence, + &session.State, + &session.ResourceOwner, + &session.Creator, + &userID, + &userCheckedAt, + &loginName, + &displayName, + &passwordCheckedAt, + &metadata, + &token, + ) + + if err != nil { + if errs.Is(err, sql.ErrNoRows) { + return nil, "", errors.ThrowNotFound(err, "QUERY-SFeaa", "Errors.Session.NotExisting") + } + return nil, "", errors.ThrowInternal(err, "QUERY-SAder", "Errors.Internal") + } + + session.UserFactor.UserID = userID.String + session.UserFactor.UserCheckedAt = userCheckedAt.Time + session.UserFactor.LoginName = loginName.String + session.UserFactor.DisplayName = displayName.String + session.PasswordFactor.PasswordCheckedAt = passwordCheckedAt.Time + session.Metadata = metadata + + return session, token.String, nil + } +} + +func prepareSessionsQuery(ctx context.Context, db prepareDatabase) (sq.SelectBuilder, func(*sql.Rows) (*Sessions, error)) { + return sq.Select( + SessionColumnID.identifier(), + SessionColumnCreationDate.identifier(), + SessionColumnChangeDate.identifier(), + SessionColumnSequence.identifier(), + SessionColumnState.identifier(), + SessionColumnResourceOwner.identifier(), + SessionColumnCreator.identifier(), + SessionColumnUserID.identifier(), + SessionColumnUserCheckedAt.identifier(), + LoginNameNameCol.identifier(), + HumanDisplayNameCol.identifier(), + SessionColumnPasswordCheckedAt.identifier(), + SessionColumnMetadata.identifier(), + countColumn.identifier(), + ).From(sessionsTable.identifier()). + LeftJoin(join(LoginNameUserIDCol, SessionColumnUserID)). + LeftJoin(join(HumanUserIDCol, SessionColumnUserID) + db.Timetravel(call.Took(ctx))). + PlaceholderFormat(sq.Dollar), func(rows *sql.Rows) (*Sessions, error) { + sessions := &Sessions{Sessions: []*Session{}} + + for rows.Next() { + session := new(Session) + + var ( + userID sql.NullString + userCheckedAt sql.NullTime + loginName sql.NullString + displayName sql.NullString + passwordCheckedAt sql.NullTime + metadata database.Map[[]byte] + ) + + err := rows.Scan( + &session.ID, + &session.CreationDate, + &session.ChangeDate, + &session.Sequence, + &session.State, + &session.ResourceOwner, + &session.Creator, + &userID, + &userCheckedAt, + &loginName, + &displayName, + &passwordCheckedAt, + &metadata, + &sessions.Count, + ) + + if err != nil { + return nil, errors.ThrowInternal(err, "QUERY-SAfeg", "Errors.Internal") + } + session.UserFactor.UserID = userID.String + session.UserFactor.UserCheckedAt = userCheckedAt.Time + session.UserFactor.LoginName = loginName.String + session.UserFactor.DisplayName = displayName.String + session.PasswordFactor.PasswordCheckedAt = passwordCheckedAt.Time + session.Metadata = metadata + + sessions.Sessions = append(sessions.Sessions, session) + } + + return sessions, nil + } +} diff --git a/internal/query/sessions_test.go b/internal/query/sessions_test.go new file mode 100644 index 000000000..eeff881d8 --- /dev/null +++ b/internal/query/sessions_test.go @@ -0,0 +1,396 @@ +package query + +import ( + "context" + "database/sql" + "database/sql/driver" + "errors" + "fmt" + "regexp" + "testing" + + sq "github.com/Masterminds/squirrel" + "github.com/stretchr/testify/require" + + "github.com/zitadel/zitadel/internal/domain" + errs "github.com/zitadel/zitadel/internal/errors" +) + +var ( + expectedSessionQuery = regexp.QuoteMeta(`SELECT projections.sessions.id,` + + ` projections.sessions.creation_date,` + + ` projections.sessions.change_date,` + + ` projections.sessions.sequence,` + + ` projections.sessions.state,` + + ` projections.sessions.resource_owner,` + + ` projections.sessions.creator,` + + ` projections.sessions.user_id,` + + ` projections.sessions.user_checked_at,` + + ` projections.login_names2.login_name,` + + ` projections.users8_humans.display_name,` + + ` projections.sessions.password_checked_at,` + + ` projections.sessions.metadata,` + + ` projections.sessions.token_id` + + ` FROM projections.sessions` + + ` LEFT JOIN projections.login_names2 ON projections.sessions.user_id = projections.login_names2.user_id AND projections.sessions.instance_id = projections.login_names2.instance_id` + + ` LEFT JOIN projections.users8_humans ON projections.sessions.user_id = projections.users8_humans.user_id AND projections.sessions.instance_id = projections.users8_humans.instance_id` + + ` AS OF SYSTEM TIME '-1 ms'`) + expectedSessionsQuery = regexp.QuoteMeta(`SELECT projections.sessions.id,` + + ` projections.sessions.creation_date,` + + ` projections.sessions.change_date,` + + ` projections.sessions.sequence,` + + ` projections.sessions.state,` + + ` projections.sessions.resource_owner,` + + ` projections.sessions.creator,` + + ` projections.sessions.user_id,` + + ` projections.sessions.user_checked_at,` + + ` projections.login_names2.login_name,` + + ` projections.users8_humans.display_name,` + + ` projections.sessions.password_checked_at,` + + ` projections.sessions.metadata,` + + ` COUNT(*) OVER ()` + + ` FROM projections.sessions` + + ` LEFT JOIN projections.login_names2 ON projections.sessions.user_id = projections.login_names2.user_id AND projections.sessions.instance_id = projections.login_names2.instance_id` + + ` LEFT JOIN projections.users8_humans ON projections.sessions.user_id = projections.users8_humans.user_id AND projections.sessions.instance_id = projections.users8_humans.instance_id` + + ` AS OF SYSTEM TIME '-1 ms'`) + + sessionCols = []string{ + "id", + "creation_date", + "change_date", + "sequence", + "state", + "resource_owner", + "creator", + "user_id", + "user_checked_at", + "login_name", + "display_name", + "password_checked_at", + "metadata", + "token", + } + + sessionsCols = []string{ + "id", + "creation_date", + "change_date", + "sequence", + "state", + "resource_owner", + "creator", + "user_id", + "user_checked_at", + "login_name", + "display_name", + "password_checked_at", + "metadata", + "count", + } +) + +func Test_SessionsPrepare(t *testing.T) { + type want struct { + sqlExpectations sqlExpectation + err checkErr + } + tests := []struct { + name string + prepare interface{} + want want + object interface{} + }{ + { + name: "prepareSessionsQuery no result", + prepare: prepareSessionsQuery, + want: want{ + sqlExpectations: mockQueries( + expectedSessionsQuery, + nil, + nil, + ), + }, + object: &Sessions{Sessions: []*Session{}}, + }, + { + name: "prepareSessionQuery", + prepare: prepareSessionsQuery, + want: want{ + sqlExpectations: mockQueries( + expectedSessionsQuery, + sessionsCols, + [][]driver.Value{ + { + "session-id", + testNow, + testNow, + uint64(20211109), + domain.SessionStateActive, + "ro", + "creator", + "user-id", + testNow, + "login-name", + "display-name", + testNow, + []byte(`{"key": "dmFsdWU="}`), + }, + }, + ), + }, + object: &Sessions{ + SearchResponse: SearchResponse{ + Count: 1, + }, + Sessions: []*Session{ + { + ID: "session-id", + CreationDate: testNow, + ChangeDate: testNow, + Sequence: 20211109, + State: domain.SessionStateActive, + ResourceOwner: "ro", + Creator: "creator", + UserFactor: SessionUserFactor{ + UserID: "user-id", + UserCheckedAt: testNow, + LoginName: "login-name", + DisplayName: "display-name", + }, + PasswordFactor: SessionPasswordFactor{ + PasswordCheckedAt: testNow, + }, + Metadata: map[string][]byte{ + "key": []byte("value"), + }, + }, + }, + }, + }, + { + name: "prepareSessionsQuery multiple result", + prepare: prepareSessionsQuery, + want: want{ + sqlExpectations: mockQueries( + expectedSessionsQuery, + sessionsCols, + [][]driver.Value{ + { + "session-id", + testNow, + testNow, + uint64(20211109), + domain.SessionStateActive, + "ro", + "creator", + "user-id", + testNow, + "login-name", + "display-name", + testNow, + []byte(`{"key": "dmFsdWU="}`), + }, + { + "session-id2", + testNow, + testNow, + uint64(20211109), + domain.SessionStateActive, + "ro", + "creator2", + "user-id2", + testNow, + "login-name2", + "display-name2", + testNow, + []byte(`{"key": "dmFsdWU="}`), + }, + }, + ), + }, + object: &Sessions{ + SearchResponse: SearchResponse{ + Count: 2, + }, + Sessions: []*Session{ + { + ID: "session-id", + CreationDate: testNow, + ChangeDate: testNow, + Sequence: 20211109, + State: domain.SessionStateActive, + ResourceOwner: "ro", + Creator: "creator", + UserFactor: SessionUserFactor{ + UserID: "user-id", + UserCheckedAt: testNow, + LoginName: "login-name", + DisplayName: "display-name", + }, + PasswordFactor: SessionPasswordFactor{ + PasswordCheckedAt: testNow, + }, + Metadata: map[string][]byte{ + "key": []byte("value"), + }, + }, + { + ID: "session-id2", + CreationDate: testNow, + ChangeDate: testNow, + Sequence: 20211109, + State: domain.SessionStateActive, + ResourceOwner: "ro", + Creator: "creator2", + UserFactor: SessionUserFactor{ + UserID: "user-id2", + UserCheckedAt: testNow, + LoginName: "login-name2", + DisplayName: "display-name2", + }, + PasswordFactor: SessionPasswordFactor{ + PasswordCheckedAt: testNow, + }, + Metadata: map[string][]byte{ + "key": []byte("value"), + }, + }, + }, + }, + }, + { + name: "prepareSessionsQuery sql err", + prepare: prepareSessionsQuery, + want: want{ + sqlExpectations: mockQueryErr( + expectedSessionsQuery, + sql.ErrConnDone, + ), + err: func(err error) (error, bool) { + if !errors.Is(err, sql.ErrConnDone) { + return fmt.Errorf("err should be sql.ErrConnDone got: %w", err), false + } + return nil, true + }, + }, + object: nil, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + assertPrepare(t, tt.prepare, tt.object, tt.want.sqlExpectations, tt.want.err, defaultPrepareArgs...) + }) + } +} + +func Test_SessionPrepare(t *testing.T) { + type want struct { + sqlExpectations sqlExpectation + err checkErr + } + tests := []struct { + name string + prepare interface{} + want want + object interface{} + }{ + { + name: "prepareSessionQuery no result", + prepare: prepareSessionQueryTesting(t, ""), + want: want{ + sqlExpectations: mockQueries( + expectedSessionQuery, + nil, + nil, + ), + err: func(err error) (error, bool) { + if !errs.IsNotFound(err) { + return fmt.Errorf("err should be zitadel.NotFoundError got: %w", err), false + } + return nil, true + }, + }, + object: (*Session)(nil), + }, + { + name: "prepareSessionQuery found", + prepare: prepareSessionQueryTesting(t, "tokenID"), + want: want{ + sqlExpectations: mockQuery( + expectedSessionQuery, + sessionCols, + []driver.Value{ + "session-id", + testNow, + testNow, + uint64(20211109), + domain.SessionStateActive, + "ro", + "creator", + "user-id", + testNow, + "login-name", + "display-name", + testNow, + []byte(`{"key": "dmFsdWU="}`), + "tokenID", + }, + ), + }, + object: &Session{ + ID: "session-id", + CreationDate: testNow, + ChangeDate: testNow, + Sequence: 20211109, + State: domain.SessionStateActive, + ResourceOwner: "ro", + Creator: "creator", + UserFactor: SessionUserFactor{ + UserID: "user-id", + UserCheckedAt: testNow, + LoginName: "login-name", + DisplayName: "display-name", + }, + PasswordFactor: SessionPasswordFactor{ + PasswordCheckedAt: testNow, + }, + Metadata: map[string][]byte{ + "key": []byte("value"), + }, + }, + }, + { + name: "prepareSessionQuery sql err", + prepare: prepareSessionQueryTesting(t, ""), + want: want{ + sqlExpectations: mockQueryErr( + expectedSessionQuery, + sql.ErrConnDone, + ), + err: func(err error) (error, bool) { + if !errors.Is(err, sql.ErrConnDone) { + return fmt.Errorf("err should be sql.ErrConnDone got: %w", err), false + } + return nil, true + }, + }, + object: nil, + }, + } + for _, tt := range tests { + t.Run(tt.name, func(t *testing.T) { + assertPrepare(t, tt.prepare, tt.object, tt.want.sqlExpectations, tt.want.err, defaultPrepareArgs...) + }) + } +} + +func prepareSessionQueryTesting(t *testing.T, token string) func(context.Context, prepareDatabase) (sq.SelectBuilder, func(*sql.Row) (*Session, error)) { + return func(ctx context.Context, db prepareDatabase) (sq.SelectBuilder, func(*sql.Row) (*Session, error)) { + builder, scan := prepareSessionQuery(ctx, db) + return builder, func(row *sql.Row) (*Session, error) { + session, tokenID, err := scan(row) + require.Equal(t, tokenID, token) + return session, err + } + } +} diff --git a/internal/repository/session/aggregate.go b/internal/repository/session/aggregate.go new file mode 100644 index 000000000..58c479398 --- /dev/null +++ b/internal/repository/session/aggregate.go @@ -0,0 +1,25 @@ +package session + +import ( + "github.com/zitadel/zitadel/internal/eventstore" +) + +const ( + AggregateType = "session" + AggregateVersion = "v1" +) + +type Aggregate struct { + eventstore.Aggregate +} + +func NewAggregate(id, resourceOwner string) *Aggregate { + return &Aggregate{ + Aggregate: eventstore.Aggregate{ + Type: AggregateType, + Version: AggregateVersion, + ID: id, + ResourceOwner: resourceOwner, + }, + } +} diff --git a/internal/repository/session/eventstore.go b/internal/repository/session/eventstore.go new file mode 100644 index 000000000..3dd1875da --- /dev/null +++ b/internal/repository/session/eventstore.go @@ -0,0 +1,12 @@ +package session + +import "github.com/zitadel/zitadel/internal/eventstore" + +func RegisterEventMappers(es *eventstore.Eventstore) { + es.RegisterFilterEventMapper(AggregateType, AddedType, AddedEventMapper). + RegisterFilterEventMapper(AggregateType, UserCheckedType, UserCheckedEventMapper). + RegisterFilterEventMapper(AggregateType, PasswordCheckedType, PasswordCheckedEventMapper). + RegisterFilterEventMapper(AggregateType, TokenSetType, TokenSetEventMapper). + RegisterFilterEventMapper(AggregateType, MetadataSetType, MetadataSetEventMapper). + RegisterFilterEventMapper(AggregateType, TerminateType, TerminateEventMapper) +} diff --git a/internal/repository/session/session.go b/internal/repository/session/session.go new file mode 100644 index 000000000..688383442 --- /dev/null +++ b/internal/repository/session/session.go @@ -0,0 +1,255 @@ +package session + +import ( + "context" + "encoding/json" + "time" + + "github.com/zitadel/zitadel/internal/errors" + "github.com/zitadel/zitadel/internal/eventstore" + "github.com/zitadel/zitadel/internal/eventstore/repository" +) + +const ( + sessionEventPrefix = "session." + AddedType = sessionEventPrefix + "added" + UserCheckedType = sessionEventPrefix + "user.checked" + PasswordCheckedType = sessionEventPrefix + "password.checked" + TokenSetType = sessionEventPrefix + "token.set" + MetadataSetType = sessionEventPrefix + "metadata.set" + TerminateType = sessionEventPrefix + "terminated" +) + +type AddedEvent struct { + eventstore.BaseEvent `json:"-"` +} + +func (e *AddedEvent) Data() interface{} { + return e +} + +func (e *AddedEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewAddedEvent(ctx context.Context, + aggregate *eventstore.Aggregate, +) *AddedEvent { + return &AddedEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + AddedType, + ), + } +} + +func AddedEventMapper(event *repository.Event) (eventstore.Event, error) { + added := &AddedEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + } + err := json.Unmarshal(event.Data, added) + if err != nil { + return nil, errors.ThrowInternal(err, "SESSION-DG4gn", "unable to unmarshal session added") + } + + return added, nil +} + +type UserCheckedEvent struct { + eventstore.BaseEvent `json:"-"` + + UserID string `json:"userID"` + CheckedAt time.Time `json:"checkedAt"` +} + +func (e *UserCheckedEvent) Data() interface{} { + return e +} + +func (e *UserCheckedEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewUserCheckedEvent( + ctx context.Context, + aggregate *eventstore.Aggregate, + userID string, + checkedAt time.Time, +) *UserCheckedEvent { + return &UserCheckedEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + UserCheckedType, + ), + UserID: userID, + CheckedAt: checkedAt, + } +} + +func UserCheckedEventMapper(event *repository.Event) (eventstore.Event, error) { + added := &UserCheckedEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + } + err := json.Unmarshal(event.Data, added) + if err != nil { + return nil, errors.ThrowInternal(err, "SESSION-DSGn5", "unable to unmarshal user checked") + } + + return added, nil +} + +type PasswordCheckedEvent struct { + eventstore.BaseEvent `json:"-"` + + CheckedAt time.Time `json:"checkedAt"` +} + +func (e *PasswordCheckedEvent) Data() interface{} { + return e +} + +func (e *PasswordCheckedEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewPasswordCheckedEvent( + ctx context.Context, + aggregate *eventstore.Aggregate, + checkedAt time.Time, +) *PasswordCheckedEvent { + return &PasswordCheckedEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + PasswordCheckedType, + ), + CheckedAt: checkedAt, + } +} + +func PasswordCheckedEventMapper(event *repository.Event) (eventstore.Event, error) { + added := &PasswordCheckedEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + } + err := json.Unmarshal(event.Data, added) + if err != nil { + return nil, errors.ThrowInternal(err, "SESSION-DGt21", "unable to unmarshal password checked") + } + + return added, nil +} + +type TokenSetEvent struct { + eventstore.BaseEvent `json:"-"` + + TokenID string `json:"tokenID"` +} + +func (e *TokenSetEvent) Data() interface{} { + return e +} + +func (e *TokenSetEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewTokenSetEvent( + ctx context.Context, + aggregate *eventstore.Aggregate, + tokenID string, +) *TokenSetEvent { + return &TokenSetEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + TokenSetType, + ), + TokenID: tokenID, + } +} + +func TokenSetEventMapper(event *repository.Event) (eventstore.Event, error) { + added := &TokenSetEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + } + err := json.Unmarshal(event.Data, added) + if err != nil { + return nil, errors.ThrowInternal(err, "SESSION-Sf3va", "unable to unmarshal token set") + } + + return added, nil +} + +type MetadataSetEvent struct { + eventstore.BaseEvent `json:"-"` + + Metadata map[string][]byte `json:"metadata"` +} + +func (e *MetadataSetEvent) Data() interface{} { + return e +} + +func (e *MetadataSetEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewMetadataSetEvent( + ctx context.Context, + aggregate *eventstore.Aggregate, + metadata map[string][]byte, +) *MetadataSetEvent { + return &MetadataSetEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + MetadataSetType, + ), + Metadata: metadata, + } +} + +func MetadataSetEventMapper(event *repository.Event) (eventstore.Event, error) { + added := &MetadataSetEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + } + err := json.Unmarshal(event.Data, added) + if err != nil { + return nil, errors.ThrowInternal(err, "SESSION-BD21d", "unable to unmarshal metadata set") + } + + return added, nil +} + +type TerminateEvent struct { + eventstore.BaseEvent `json:"-"` +} + +func (e *TerminateEvent) Data() interface{} { + return e +} + +func (e *TerminateEvent) UniqueConstraints() []*eventstore.EventUniqueConstraint { + return nil +} + +func NewTerminateEvent( + ctx context.Context, + aggregate *eventstore.Aggregate, +) *TerminateEvent { + return &TerminateEvent{ + BaseEvent: *eventstore.NewBaseEventForPush( + ctx, + aggregate, + TerminateType, + ), + } +} + +func TerminateEventMapper(event *repository.Event) (eventstore.Event, error) { + return &TerminateEvent{ + BaseEvent: *eventstore.BaseEventFromRepo(event), + }, nil +} diff --git a/internal/static/i18n/de.yaml b/internal/static/i18n/de.yaml index 9cf6f96f4..9e7e9c5c8 100644 --- a/internal/static/i18n/de.yaml +++ b/internal/static/i18n/de.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: Das Speichern des Action Logs in der Datenbank ist fehlgeschlagen ScanFailed: Das Abfragen der verbrauchten Actions Sekunden ist fehlgeschlagen + Session: + NotExisting: Session existiert nicht + Terminated: Session bereits beendet + Token: + Invalid: Session Token ist ungültig AggregateTypes: action: Action diff --git a/internal/static/i18n/en.yaml b/internal/static/i18n/en.yaml index c5d3c36b2..9362eaf2b 100644 --- a/internal/static/i18n/en.yaml +++ b/internal/static/i18n/en.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: Storing action execution log to database failed ScanFailed: Querying usage for action execution seconds failed + Session: + NotExisting: Session does not exist + Terminated: Session already terminated + Token: + Invalid: Session Token is invalid AggregateTypes: action: Action diff --git a/internal/static/i18n/es.yaml b/internal/static/i18n/es.yaml index 63ffb3981..c87d9f20c 100644 --- a/internal/static/i18n/es.yaml +++ b/internal/static/i18n/es.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: Ha fallado el almacenaje del registro de ejecución de acciones en la base de datos ScanFailed: La consulta de uso de los segundos de ejecuciónde acciones ha fallado + Session: + NotExisting: La sesión no existe + Terminated: Sesión ya terminada + Token: + Invalid: El identificador de sesión no es válido AggregateTypes: action: Acción diff --git a/internal/static/i18n/fr.yaml b/internal/static/i18n/fr.yaml index 184cd83f0..bc2f111da 100644 --- a/internal/static/i18n/fr.yaml +++ b/internal/static/i18n/fr.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: L'enregistrement du journal d'action dans la base de données a échoué ScanFailed: L'interrogation des secondes d'action consommées a échoué + Session: + NotExisting: La session n'existe pas + Terminated: La session est déjà terminée + Token: + Invalid: Le jeton de session n'est pas valide AggregateTypes: action: Action diff --git a/internal/static/i18n/it.yaml b/internal/static/i18n/it.yaml index 1f9056cf5..f270a5f69 100644 --- a/internal/static/i18n/it.yaml +++ b/internal/static/i18n/it.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: Il salvataggio del registro delle azioni nel database non è riuscito ScanFailed: La query dei secondi delle azioni utilizzate non è riuscita + Session: + NotExisting: La sessione non esiste + Terminated: Sessione già terminata + Token: + Invalid: Il token della sessione non è valido AggregateTypes: action: Azione diff --git a/internal/static/i18n/ja.yaml b/internal/static/i18n/ja.yaml index 8f347b02d..284c0412a 100644 --- a/internal/static/i18n/ja.yaml +++ b/internal/static/i18n/ja.yaml @@ -459,6 +459,11 @@ Errors: Execution: StorageFailed: アクション実行ログのデータベースへの保存に失敗しました ScanFailed: アクション実行時間を取得する使用状況クエリに失敗しました + Session: + NotExisting: セッションが存在しない + Terminated: セッションはすでに終了しています + Token: + Invalid: セッショントークンが無効です AggregateTypes: action: アクション diff --git a/internal/static/i18n/pl.yaml b/internal/static/i18n/pl.yaml index 0ef614bff..9fac79a25 100644 --- a/internal/static/i18n/pl.yaml +++ b/internal/static/i18n/pl.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: Zapisywanie dziennika wykonania akcji do bazy danych nie powiodło się ScanFailed: Zapytanie o użycie dla sekund wykonania akcji nie powiodło się + Session: + NotExisting: Sesja nie istnieje + Terminated: Sesja już zakończona + Token: + Invalid: Token sesji jest nieprawidłowy AggregateTypes: action: Działanie diff --git a/internal/static/i18n/zh.yaml b/internal/static/i18n/zh.yaml index 31c679ea2..c36cbcd11 100644 --- a/internal/static/i18n/zh.yaml +++ b/internal/static/i18n/zh.yaml @@ -470,6 +470,11 @@ Errors: Execution: StorageFailed: 将行动执行日志存储到数据库失败 ScanFailed: Q查询动作执行秒数的使用情况失败 + Session: + NotExisting: 会话不存在 + Terminated: 会话已经终止 + Token: + Invalid: 会话令牌是无效的 AggregateTypes: action: 动作 diff --git a/pkg/grpc/user/v2alpha/user.go b/pkg/grpc/user/v2alpha/user.go deleted file mode 100644 index f419594df..000000000 --- a/pkg/grpc/user/v2alpha/user.go +++ /dev/null @@ -1,5 +0,0 @@ -package user - -func (r *AddHumanUserRequest) AuthContext() string { - return r.GetOrganisation().GetOrgId() -} diff --git a/proto/zitadel/object/v2alpha/object.proto b/proto/zitadel/object/v2alpha/object.proto index 3a209b637..27c6dbb39 100644 --- a/proto/zitadel/object/v2alpha/object.proto +++ b/proto/zitadel/object/v2alpha/object.proto @@ -11,9 +11,35 @@ import "validate/validate.proto"; message Organisation { oneof org { string org_id = 1; + string org_domain = 2; } } +message ListQuery { + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema) = { + json_schema: { + title: "General List Query" + description: "Object unspecific list filters like offset, limit and asc/desc." + } + }; + uint64 offset = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + example: "\"0\""; + } + ]; + uint32 limit = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + example: "100"; + description: "Maximum amount of events returned. The default is set to 1000 in https://github.com/zitadel/zitadel/blob/new-eventstore/cmd/zitadel/startup.yaml. If the limit exceeds the maximum configured ZITADEL will throw an error. If no limit is present the default is taken."; + } + ]; + bool asc = 3 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "default is descending" + } + ]; +} + message Details { //sequence represents the order of events. It's always counting // @@ -38,3 +64,21 @@ message Details { } ]; } + +message ListDetails { + uint64 total_result = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + example: "\"2\""; + } + ]; + uint64 processed_sequence = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + example: "\"267831\""; + } + ]; + google.protobuf.Timestamp timestamp = 3 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "the last time the projection got updated" + } + ]; +} diff --git a/proto/zitadel/session/v2alpha/session.proto b/proto/zitadel/session/v2alpha/session.proto index 8d4c168b1..279863d14 100644 --- a/proto/zitadel/session/v2alpha/session.proto +++ b/proto/zitadel/session/v2alpha/session.proto @@ -2,11 +2,90 @@ syntax = "proto3"; package zitadel.session.v2alpha; -import "zitadel/user/v2alpha/user.proto"; +import "google/api/field_behavior.proto"; +import "google/protobuf/timestamp.proto"; +import "protoc-gen-openapiv2/options/annotations.proto"; +import "validate/validate.proto"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha;session"; message Session { - string id = 1; - zitadel.user.v2alpha.User user = 2; + string id = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"id of the session\""; + } + ]; + google.protobuf.Timestamp creation_date = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"time when the session was created\""; + } + ]; + google.protobuf.Timestamp change_date = 3 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"time when the session was last updated\""; + } + ]; + uint64 sequence = 4 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"sequence of the session\""; + } + ]; + Factors factors = 5 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"checked factors of the session, e.g. the user, password and more\""; + } + ]; + map metadata = 6 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"custom key value list\""; + } + ]; +} + +message Factors { + UserFactor user = 1; + PasswordFactor password = 2; +} + +message UserFactor { + google.protobuf.Timestamp verified_at = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"time when the user was last checked\""; + } + ]; + string id = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"id of the checked user\""; + } + ]; + string login_name = 3 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"login name of the checked user\""; + } + ]; + string display_name = 4 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"display name of the checked user\""; + } + ]; +} + +message PasswordFactor { + google.protobuf.Timestamp verified_at = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"time when the password was last checked\""; + } + ]; +} + +message SearchQuery { + oneof query { + option (validate.required) = true; + + IDsQuery ids_query = 1; + } +} + +message IDsQuery { + repeated string ids = 1; } diff --git a/proto/zitadel/session/v2alpha/session_service.proto b/proto/zitadel/session/v2alpha/session_service.proto index dccf0bc0b..e56462107 100644 --- a/proto/zitadel/session/v2alpha/session_service.proto +++ b/proto/zitadel/session/v2alpha/session_service.proto @@ -3,21 +3,82 @@ syntax = "proto3"; package zitadel.session.v2alpha; +import "zitadel/object/v2alpha/object.proto"; import "zitadel/protoc_gen_zitadel/v2/options.proto"; import "zitadel/session/v2alpha/session.proto"; import "google/api/annotations.proto"; +import "google/api/field_behavior.proto"; +import "protoc-gen-openapiv2/options/annotations.proto"; import "validate/validate.proto"; option go_package = "github.com/zitadel/zitadel/pkg/grpc/session/v2alpha;session"; +option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_swagger) = { + info: { + title: "Session Service"; + version: "2.0-alpha"; + description: "This API is intended to manage sessions in a ZITADEL instance. This project is in alpha state. It can AND will continue breaking until the services provide the same functionality as the current login."; + contact:{ + name: "ZITADEL" + url: "https://zitadel.com" + email: "hi@zitadel.com" + } + license: { + name: "Apache 2.0", + url: "https://github.com/zitadel/zitadel/blob/main/LICENSE"; + }; + }; + schemes: HTTPS; + schemes: HTTP; + + consumes: "application/json"; + consumes: "application/grpc"; + + produces: "application/json"; + produces: "application/grpc"; + + consumes: "application/grpc-web+proto"; + produces: "application/grpc-web+proto"; + + host: "$ZITADEL_DOMAIN"; + base_path: "/"; + + external_docs: { + description: "Detailed information about ZITADEL", + url: "https://zitadel.com/docs" + } + + responses: { + key: "403"; + value: { + description: "Returned when the user does not have permission to access the resource."; + schema: { + json_schema: { + ref: "#/definitions/rpcStatus"; + } + } + } + } + responses: { + key: "404"; + value: { + description: "Returned when the resource does not exist."; + schema: { + json_schema: { + ref: "#/definitions/rpcStatus"; + } + } + } + } +}; + service SessionService { - // GetSession is to demonstrate an authenticated request, where the authenticated user (usage of another grpc package) is returned - // - // this request is subject to change and currently used for demonstration only - rpc GetSession (GetSessionRequest) returns (GetSessionResponse) { + // Search sessions + rpc ListSessions (ListSessionsRequest) returns (ListSessionsResponse) { option (google.api.http) = { - get: "/v2alpha/sessions/{id}" + post: "/v2alpha/sessions/_search" + body: "*" }; option (zitadel.protoc_gen_zitadel.v2.options) = { @@ -25,12 +86,280 @@ service SessionService { permission: "authenticated" } }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + summary: "Search sessions"; + description: "Search for sessions" + responses: { + key: "200" + value: { + description: "OK"; + } + }; + responses: { + key: "400"; + value: { + description: "invalid list query"; + schema: { + json_schema: { + ref: "#/definitions/rpcStatus"; + }; + }; + }; + }; + }; + } + + // GetSession a session + rpc GetSession (GetSessionRequest) returns (GetSessionResponse) { + option (google.api.http) = { + get: "/v2alpha/sessions/{session_id}" + }; + + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } + }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + summary: "Get a session"; + description: "Get a session and all its information like the time of the user or password verification" + responses: { + key: "200" + value: { + description: "OK"; + } + }; + }; + } + + // Create a new session + rpc CreateSession (CreateSessionRequest) returns (CreateSessionResponse) { + option (google.api.http) = { + post: "/v2alpha/sessions" + body: "*" + }; + + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } + http_response: { + success_code: 201 + } + }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + summary: "Create a new session"; + description: "Create a new session. A token will be returned, which is required for further updates of the session." + responses: { + key: "200" + value: { + description: "OK"; + } + }; + }; + } + + // Update a session + rpc SetSession (SetSessionRequest) returns (SetSessionResponse) { + option (google.api.http) = { + patch: "/v2alpha/sessions/{session_id}" + body: "*" + }; + + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } + }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + summary: "Update an existing session"; + description: "Update an existing session with new information." + responses: { + key: "200" + value: { + description: "OK"; + } + }; + }; + } + + // Terminate a session + rpc DeleteSession (DeleteSessionRequest) returns (DeleteSessionResponse) { + option (google.api.http) = { + delete: "/v2alpha/sessions/{session_id}" + body: "*" + }; + + option (zitadel.protoc_gen_zitadel.v2.options) = { + auth_option: { + permission: "authenticated" + } + }; + + option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = { + summary: "Terminate an existing session"; + description: "Terminate your own session or if granted any other session." + responses: { + key: "200" + value: { + description: "OK"; + } + }; + }; } } +message ListSessionsRequest{ + zitadel.object.v2alpha.ListQuery query = 1; + repeated SearchQuery queries = 2; +} + +message ListSessionsResponse{ + zitadel.object.v2alpha.ListDetails details = 1; + repeated Session sessions = 2; +} + message GetSessionRequest{ - string id = 1; + string session_id = 1; + optional string session_token = 2; } message GetSessionResponse{ Session session = 1; } + +message CreateSessionRequest{ + Checks checks = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"Check for user and password. Successful checks will be stated as factors on the session.\""; + } + ]; + map metadata = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"custom key value list to be stored on the session\""; + } + ]; +} + +message CreateSessionResponse{ + zitadel.object.v2alpha.Details details = 1; + string session_id = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"id of the session\""; + example: "\"d654e6ba-70a3-48ef-a95d-37c8d8a7901a\""; + } + ]; + string session_token = 3 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"token of the session, which is required for further updates of the session or the request other resources\""; + } + ]; +} + +message SetSessionRequest{ + string session_id = 1 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + description: "\"id of the session to update\""; + example: "\"d654e6ba-70a3-48ef-a95d-37c8d8a7901a\""; + } + ]; + string session_token = 2 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + description: "\"token of the session, previously returned on the create / update request\""; + } + ]; + Checks checks = 3[ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"Check for user and password. Successful checks will be stated as factors on the session.\""; + } + ]; + map metadata = 4 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"custom key value list to be stored on the session\""; + } + ]; +} + +message SetSessionResponse{ + zitadel.object.v2alpha.Details details = 1; + string session_token = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"token of the session, which is required for further updates of the session or the request other resources\""; + } + ]; +} + +message DeleteSessionRequest{ + string session_id = 1 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + description: "\"id of the session to terminate\""; + example: "\"d654e6ba-70a3-48ef-a95d-37c8d8a7901a\""; + } + ]; + optional string session_token = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"token of the session, previously returned on the create / update request\""; + } + ]; +} + +message DeleteSessionResponse{ + zitadel.object.v2alpha.Details details = 1; +} + +message Checks { + optional CheckUser user = 1 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"checks the user and updates the session on success\""; + } + ]; + optional CheckPassword password = 2 [ + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + description: "\"Checks the password and updates the session on success. Requires that the user is already checked, either in the previous or the same request.\""; + } + ]; +} + +message CheckUser { + oneof search { + string user_id = 1 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + example: "\"d654e6ba-70a3-48ef-a95d-37c8d8a7901a\""; + } + ]; + string login_name = 2 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + example: "\"mini@mouse.com\""; + } + ]; + } +} + +message CheckPassword { + string password = 1 [ + (validate.rules).string = {min_len: 1, max_len: 200}, + (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field) = { + min_length: 1; + max_length: 200; + example: "\"V3ryS3cure!\""; + } + ]; +}