2b1356bb91
flows: add invalid_response_action to configure how the FlowExecutor should handle invalid responses
...
closes #1079
Default value of `retry` behaves like previous version.
`restart` and `restart_with_context` restart the flow upon an invalid response. `restart_with_context` keeps the same context of the Flow, allowing users to bind policies that maybe aren't valid on the first execution, but are after a retry, like a reputation policy with a deny stage.
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-06-28 00:22:09 +02:00
ba9edd6c44
flows: handle possible errors with FlowPlans received from cache
...
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-06-27 22:03:48 +02:00
3b2b3262d7
flows: add FlowStageBinding to flow plan instead of just stage
...
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-06-27 18:47:04 +02:00
57a48b6350
flows: make flow plan cache timeout configurable
...
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-06-21 10:17:11 +02:00
6893948fa0
tests/e2e: fix invalid flows
...
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-05-25 11:18:47 +02:00
53e2b2c784
Prometheus metrics ( #914 )
...
* admin: add worker metrics
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* admin: add version metrics
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* events: add gauge for system tasks
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* outposts: add gauge for last hello and connection status
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* root: re-add prometheus metrics to database
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* root: allow access to metrics without credentials when debug is on
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* root: add UpdatingGauge to auto-set value on load
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* flows: add metrics for cache and building
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* policies: add metrics for policy engine
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* events: add histogram for task durations
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* events: revert to gauge because values are updated on export view
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* core: add gauge to count all models
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
* events: add metrics for events
Signed-off-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-05-23 20:29:34 +02:00
ed8b78600e
stages/authenticator_validate: add configuration stage to configure Authenticator
2021-03-01 19:23:59 +01:00
ecff810021
*: replace List from typing with normal list
2021-02-18 13:45:46 +01:00
fdde97cbbf
*: replace Dict from typing with normal dict
2021-02-18 13:41:03 +01:00
3e696d6ac8
flows: use global logger for stored plans
2021-02-02 17:29:03 +01:00
09bdcfaab0
flows: optimise logging
2021-02-02 16:27:03 +01:00
55bcc254c1
flows: fix FlowNonApplicableException not being Sentry Ignored
2021-01-27 09:57:18 +01:00
61d1407804
sources/*: Set PLAN_CONTEXT_SOURCE when logging in with a source
2021-01-12 22:37:33 +01:00
bc9e7e8b93
build(deps): bump structlog from 20.1.0 to 20.2.0 ( #445 )
...
* build(deps): bump structlog from 20.1.0 to 20.2.0
Bumps [structlog](https://github.com/hynek/structlog ) from 20.1.0 to 20.2.0.
- [Release notes](https://github.com/hynek/structlog/releases )
- [Changelog](https://github.com/hynek/structlog/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/hynek/structlog/compare/20.1.0...20.2.0 )
Signed-off-by: dependabot[bot] <support@github.com >
* *: use structlog.stdlib instead of structlog for type-hints
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Jens Langhammer <jens.langhammer@beryju.org >
2021-01-01 15:39:43 +01:00
a4dc6d13b5
events: rename audit to events and use for more metrics ( #397 )
...
* events: rename audit to events
* policies/expression: log expression exceptions as event
* policies/expression: add ExpressionPolicy Model to event when possible
* lib/expressions: ensure syntax errors are logged too
* lib: fix lint error
* policies: add execution_logging field
* core: add property mapping tests
* policies/expression: add full test
* policies/expression: fix attribute name
* policies: add execution_logging
* web: fix imports
* root: update swagger
* policies: use dataclass instead of dict for types
* events: add support for dataclass as event param
* events: add special keys which are never cleaned
* policies: add tests for process, don't clean full cache
* admin: create event when new version is seen
* events: move utils to separate file
* admin: add tests for admin tasks
* events: add .set_user method to ensure users have correct attributes set
* core: add test for property_mapping errors with user and request
2020-12-20 22:04:29 +01:00
6e24856d45
flows: fix redirect when un-authenticated user uses external authentication ( #416 )
...
* flows: add PLAN_CONTEXT_REDIRECT so final redirect can be set from within flow
* sources/*: use PLAN_CONTEXT_REDIRECT
* flows: fallback when flow plan is empty
2020-12-19 16:42:39 +01:00
1cfe1aff13
wip: rename to authentik ( #361 )
...
* root: initial rename
* web: rename custom element prefix
* root: rename external functions with pb_ prefix
* root: fix formatting
* root: replace domain with goauthentik.io
* proxy: update path
* root: rename remaining prefixes
* flows: rename file extension
* root: pbadmin -> akadmin
* docs: fix image filenames
* lifecycle: ignore migration files
* ci: copy default config from current source before loading last tagged
* *: new sentry dsn
* tests: fix missing python3.9-dev package
* root: add additional migrations for service accounts created by outposts
* core: mark system-created service accounts with attribute
* policies/expression: fix pb_ replacement not working
* web: fix last linting errors, add lit-analyse
* policies/expressions: fix lint errors
* web: fix sidebar display on screens where not all items fit
* proxy: attempt to fix proxy pipeline
* proxy: use go env GOPATH to get gopath
* lib: fix user_default naming inconsistency
* docs: add upgrade docs
* docs: update screenshots to use authentik
* admin: fix create button on empty-state of outpost
* web: fix modal submit not refreshing SiteShell and Table
* web: fix height of app-card and height of generic icon
* web: fix rendering of subtext
* admin: fix version check error not being caught
* web: fix worker count not being shown
* docs: update screenshots
* root: new icon
* web: fix lint error
* admin: fix linting error
* root: migrate coverage config to pyproject
2020-12-05 22:08:42 +01:00