feat(actions): add token customization flow and extend functionally with modules (#4337)

* fix: potential memory leak

* feat(actions): possibility to parse json
feat(actions): possibility to perform http calls

* add query call

* feat(api): list flow and trigger types
fix(api): switch flow and trigger types to dynamic objects

* fix(translations): add action translations

* use `domain.FlowType`

* localizers

* localization

* trigger types

* options on `query.Action`

* add functions for actions

* feat: management api: add list flow and trigger  (#4352)

* console changes

* cleanup

* fix: wrong localization

Co-authored-by: Max Peintner <max@caos.ch>

* id token works

* check if claims not nil

* feat(actions): metadata api

* refactor(actions): modules

* fix: allow prerelease

* fix: test

* feat(actions): deny list for http hosts

* feat(actions): deny list for http hosts

* refactor: actions

* fix: different error ids

* fix: rename statusCode to status

* Actions objects as options (#4418)

* fix: rename statusCode to status

* fix(actions): objects as options

* fix(actions): objects as options

* fix(actions): set fields

* add http client to old actions

* fix(actions): add log module

* fix(actions): add user to context where possible

* fix(actions): add user to ctx in external authorization/pre creation

* fix(actions): query correct flow in claims

* test: actions

* fix(id-generator): panic if no machine id

* tests

* maybe this?

* fix linting

* refactor: improve code

* fix: metadata and usergrant usage in actions

* fix: appendUserGrant

* fix: allowedToFail and timeout in action execution

* fix: allowed to fail in token complement flow

* docs: add action log claim

* Update defaults.yaml

* fix log claim

* remove prerelease build

Co-authored-by: Max Peintner <max@caos.ch>
Co-authored-by: Livio Spring <livio.a@gmail.com>
This commit is contained in:
Silvan
2022-10-06 14:23:59 +02:00
committed by GitHub
parent bffb10a4b4
commit 43fb3fd1a6
62 changed files with 2806 additions and 636 deletions

41
pkg/grpc/action/action.go Normal file
View File

@@ -0,0 +1,41 @@
package action
import "github.com/zitadel/zitadel/internal/api/grpc/server/middleware"
func (f *Flow) Localizers() []middleware.Localizer {
if f == nil {
return nil
}
localizers := make([]middleware.Localizer, 0, len(f.TriggerActions)+1)
localizers = append(localizers, f.Type.Localizers()...)
for _, action := range f.TriggerActions {
localizers = append(localizers, action.Localizers()...)
}
return localizers
}
func (t *FlowType) Localizers() []middleware.Localizer {
if t == nil {
return nil
}
return []middleware.Localizer{t.Name}
}
func (t *TriggerType) Localizers() []middleware.Localizer {
if t == nil {
return nil
}
return []middleware.Localizer{t.Name}
}
func (ta *TriggerAction) Localizers() []middleware.Localizer {
if ta == nil {
return nil
}
return ta.TriggerType.Localizers()
}

View File

@@ -0,0 +1,37 @@
package management
import "github.com/zitadel/zitadel/internal/api/grpc/server/middleware"
func (r *ListFlowTypesResponse) Localizers() (localizers []middleware.Localizer) {
if r == nil {
return nil
}
localizers = make([]middleware.Localizer, 0, len(r.Result))
for _, typ := range r.Result {
localizers = append(localizers, typ.Localizers()...)
}
return localizers
}
func (r *ListFlowTriggerTypesResponse) Localizers() (localizers []middleware.Localizer) {
if r == nil {
return nil
}
localizers = make([]middleware.Localizer, 0, len(r.Result))
for _, typ := range r.Result {
localizers = append(localizers, typ.Localizers()...)
}
return localizers
}
func (r *GetFlowResponse) Localizers() []middleware.Localizer {
if r == nil {
return nil
}
return r.Flow.Localizers()
}