Files
6127b567e7 feat(oidc): provide actor information in userinfo actions (#12566)
# Which Problems Are Solved

Expose impersonating actor to `preAccessToken` and `preUserinfo`
actions.

# How the Problems Are Solved

Provide the `actor` information already present in the OIDC session
model of JWT token to the relevant actions. Both goja-based actions "v1"
and webhook based execution targets carry the actor information now.
Actor remains null in case of non-impersonated tokens. Actor may contain
nested actors to display a delegation chain of impersonators.

# Additional Changes

- dba6261c8e: refactor `userinfoFlows` to
reduce complexity, add test coverage and solve a couple of potential
bugs.
- `getClientId` in actions was previously undocumented. Added to
documentation.
- A skill that reproduces manual testing using webhook.site or a local
sink.

# Additional Context

- Closes https://github.com/zitadel/zitadel/issues/12097

---------

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Wim Van Laer <wim+github@zitadel.com>
2026-08-12 07:36:56 +00:00

113 lines
1.6 KiB
Plaintext

# Binaries for programs and plugins
*.exe
*.exe~
*.dll
*.so
*.dylib
# Test binary, build with `go test -c`
*.test
!/**/.env.test
# Coverage
coverage.txt
profile*.cov
# Output of the go coverage tool, specifically when used with LiteIDE
*.out
#Debug
__debug_bin*
debug
sandbox.go
/cmd/dev/
# IDE
.idea
.DS_STORE
.run
.vscode
# credential
google-credentials
key.json
.keys/*
load-test/.keys
*.pat
# dumps
.backups
.local/*
.build/
#binaries
cmd/zitadel/zitadel
**/statik/statik.go
/zitadelctl
/zitadel
# buildfolders and generated files
console/dist
console/src/app/proto/generated
console/src/assets/docs
console/.angular
**.pb.go
!pkg/grpc/protoc/v2/options.pb.go
**.proto.mock.go
**.pb.*.go
pkg/**/**.connect.go
**.gen.go
openapi/**/*.json
# multi-version proto artifacts
/proto/latest/
/proto/v*/
/internal/api/assets/authz.go
/internal/api/assets/router.go
internal/api/ui/console/static
!internal/api/ui/console/static/gitkeep
apps/docs/content/apis/assets/assets.mdx
apps/docs/content/reference/api/
/internal/api/ui/login/static/resources/themes/zitadel/css/zitadel.css
/internal/api/ui/login/static/resources/themes/zitadel/css/zitadel.css.map
/zitadel-*-*
!apps/**/zitadel-*-*
# local
build/local/*.env
.notifications
.artifacts/*
!.artifacts/bin
.artifacts/bin/*/*/**/*
!.artifacts/zitadel
/zitadel
node_modules/
.kreya
.env.*local
go.work
go.work.sum
# Local Netlify folder
.netlify
.vercel
# PNPM
.pnpm-store
# Nx
.nx/cache
.nx/workspace-data
.cursor/rules/nx-rules.mdc
# AI Files
CLAUDE.md
.mcp.json
.gemini/*
docs_old
apps/docs/package-lock.json
# Auto-generated by Next.js (rewrites on every dev/build)
next-env.d.ts